RE: Cross-development tools

2012-06-14 Thread Adrian Brown
For quick stuff I use edwin's scrviwer
(http://www.samcoupe-pro-dos.co.uk/edwin/software/scrviewer/scrviewer.ht
m) to save a bmp to a dsk then use dodgy basic code to convert the
screen$ to raw data.  Other than that I sometimes write oneoff utils.  I
still use comet to do the code :) Long term in the back of my mind I was
to use the TCP/IP stuff im working on to do a cross plat. Dev system to
real hardware, that's the ultimate :D

Adrian

-Original Message-
From: owner-sam-us...@nvg.ntnu.no [mailto:owner-sam-us...@nvg.ntnu.no]
On Behalf Of Chris Cowley
Sent: 14 June 2012 09:31
To: sam-users@nvg.ntnu.no
Subject: Cross-development tools

Am starting to poke about a little more with Coupe development as time
permits and I wondered what, if anything, currently exists by way of
publicly-available cross-development tools. I have my favourite text
editor and pasmo set up, which I use for occasional speccy stuff, and
have augmented this with pyz80 (coz it writes out DSK files, which has
been handy). Have also got SAMdisk and DiskManager for manipulating disk
images, which seem to be working nicely, but...

What I really could do with is a utility (preferably with a palette
editor) for drawing graphics (tiles, sprites) that runs on Windows and
spits out either DEFBs or binary files that I can INCBIN. Does such a
thing exist? Failing that, something that has a reasonable stab at
converting PNGs or GIFs into a form I can use in asm would be useful.

What do you guys use to do this sort of stuff? And also are there any
other useful cross-development tools that I should be looking at?

Cheers,
Chris.





Re: Cross-development tools

2012-06-14 Thread Leszek Chmielewski

Am 14.06.2012 10:23, schrieb Chris Cowley:

What I really could do with is a utility (preferably with a palette
editor) for drawing graphics (tiles, sprites) that runs on Windows and
spits out either DEFBs or binary files that I can INCBIN. Does such a
thing exist? Failing that, something that has a reasonable stab at
converting PNGs or GIFs into a form I can use in asm would be useful.
Retro-X and BMP2SCR EXP can both convert to SAM and spits out a ss* file 
which then can be loaded directly as screen. DEFB export is at moment 
only available for Spectrum screens. Palette editor is build in in the 
included Painter, where you can paint from scratch.




Re: Cross-development tools

2012-06-14 Thread Andrew Gillen
I use a tool I coded in Delphi or whatever the free open source clone of it is 
called. It converts pngs into defbs and creates the palette but it needs the  
source image to be made up of the Sam palette accurate colours. It does not 
create valid screen$ files though as  I have never needed to use them. The 
images are straight mode 4 ones. It does a bunch of other things like sprite 
masking and reversal. It is very rough but it does what I need it to do, it 
also works well under wine.

If it would be of use I could publish it online for anyone to use, but it is so 
specific to my dev environment I never thought to mention it really.

Cheers
Andrew

On 14 Jun 2012, at 09:58, Adrian Brown adr...@apbcomputerservices.co.uk 
wrote:

 For quick stuff I use edwin's scrviwer
 (http://www.samcoupe-pro-dos.co.uk/edwin/software/scrviewer/scrviewer.ht
 m) to save a bmp to a dsk then use dodgy basic code to convert the
 screen$ to raw data.  Other than that I sometimes write oneoff utils.  I
 still use comet to do the code :) Long term in the back of my mind I was
 to use the TCP/IP stuff im working on to do a cross plat. Dev system to
 real hardware, that's the ultimate :D
 
 Adrian
 
 -Original Message-
 From: owner-sam-us...@nvg.ntnu.no [mailto:owner-sam-us...@nvg.ntnu.no]
 On Behalf Of Chris Cowley
 Sent: 14 June 2012 09:31
 To: sam-users@nvg.ntnu.no
 Subject: Cross-development tools
 
 Am starting to poke about a little more with Coupe development as time
 permits and I wondered what, if anything, currently exists by way of
 publicly-available cross-development tools. I have my favourite text
 editor and pasmo set up, which I use for occasional speccy stuff, and
 have augmented this with pyz80 (coz it writes out DSK files, which has
 been handy). Have also got SAMdisk and DiskManager for manipulating disk
 images, which seem to be working nicely, but...
 
 What I really could do with is a utility (preferably with a palette
 editor) for drawing graphics (tiles, sprites) that runs on Windows and
 spits out either DEFBs or binary files that I can INCBIN. Does such a
 thing exist? Failing that, something that has a reasonable stab at
 converting PNGs or GIFs into a form I can use in asm would be useful.
 
 What do you guys use to do this sort of stuff? And also are there any
 other useful cross-development tools that I should be looking at?
 
 Cheers,
 Chris.
 
 
 


Re: Cross-development tools

2012-06-14 Thread Andrew Gillen
I think Tommy Gun meets many of your requirements, Chris. 

Www.users.on.net/~tonyt73/TommyGun

Cheers, 
Andrew

On 14 Jun 2012, at 09:23, Chris Cowley chrr...@gmail.com wrote:

 Am starting to poke about a little more with Coupe development as time
 permits and I wondered what, if anything, currently exists by way of
 publicly-available cross-development tools. I have my favourite text
 editor and pasmo set up, which I use for occasional speccy stuff, and
 have augmented this with pyz80 (coz it writes out DSK files, which has
 been handy). Have also got SAMdisk and DiskManager for manipulating
 disk images, which seem to be working nicely, but...
 
 What I really could do with is a utility (preferably with a palette
 editor) for drawing graphics (tiles, sprites) that runs on Windows and
 spits out either DEFBs or binary files that I can INCBIN. Does such a
 thing exist? Failing that, something that has a reasonable stab at
 converting PNGs or GIFs into a form I can use in asm would be useful.
 
 What do you guys use to do this sort of stuff? And also are there any
 other useful cross-development tools that I should be looking at?
 
 Cheers,
 Chris.


Re: Cross-development tools

2012-06-14 Thread Simon Owen
On 14 Jun 2012, at 09:23, Chris Cowley wrote:
 I have my favourite text editor and pasmo set up, which I use for occasional 
 speccy stuff, and
 have augmented this with pyz80

I use the same mix of pyz80 and Pasmo for SAM and Speccy development, along 
with my favourite text editor.  In both cases the editor launches the 
assembler, and if successful it opens the disk image in SimCoupe.  Using 
autoexec (pyz80) and end (Pasmo) directives to auto-run the code makes for a 
very fast development cycle.  JAM Assembler can do all of that for the SAM side 
in its own IDE, though I'm a sucker for my usual text editor, so I have to 
admit I've not used it very much.  The assembler does support some extra 
features over pyz80 though, which may be useful.

I also use Makefiles (or a make.bat on Windows) for managing any additional 
input dependencies, such as image conversion and table generation.  Again, it's 
just so a single command does everything automatically.  The only time I need 
to get my hands dirty is for proper releases, where I'll usually add a BASIC 
loader and keep data as separate files on the disk.


 Have also got SAMdisk and DiskManager for manipulating disk images, which 
 seem to be working nicely, but...

I generally only need SAMdisk when transferring disks to real hardware for 
testing.  I still assemble on the PC, even when I can only run on real hardware 
(Trinity ethernet mostly).  Copying the output DSK to a BDOS record on a 
Compact Flash card and moving that to the Atom Lite on my SAM takes seconds.  
For larger code listings, or if the launched program crashes and takes out the 
development system, it's usually faster.  Even transferring DSK via floppy 
isn't too slow if you use the --minimal flag to only copy the used portions of 
the disk.

It's been a while since I've used DiskManager, especially since pyz80 can add a 
samdos2 file to the start of the disk using the -I command-line option.  
SimCoupe will boot disks without it, but you still need it for cold booting on 
real hardware, so it's recommended to add one.  I used to use DiskManager for 
importing images to SCREEN$ format, until...


 What I really could do with is a utility (preferably with a palette
 editor) for drawing graphics (tiles, sprites) that runs on Windows and
 spits out either DEFBs or binary files that I can INCBIN. Does such a
 thing exist?

I mainly use Paint Shop Pro 7 for most SAM image editing, with a .pal file 
loaded containing the 128 SAM colours.  I just draw sprites on a big image, 
keeping to a grid spacing, and making sure I stay within the 16-colour limit 
(there's a colour counting option).

My development is usually split between Windows and Mac, and this is one area 
I've struggled to make equivalent.  The image editors I'm using (Pixelmator and 
Acorn) don't support working directly with palettised images, and just convert 
them to RGB for editing.  So I'm generally limited to making only small 
changes, and hoping I stay within the colour limit.


 Failing that, something that has a reasonable stab at
 converting PNGs or GIFs into a form I can use in asm would be useful.

I've got a Perl script to extract graphics files from a palettised PNG image 
and save in raw SAM (or Spectrum) format, which can be included in the .asm 
using INCBIN.  I think the Spectrum version of my png2bin.pl is in the pacemuzx 
project on GitHub, but the SAM version is likely missing as I was (and still 
am!) rewriting it.  I wanted something script based with minimal dependencies, 
so I could use them on whatever OS I happened to be on.

Si



Re: Cross-development tools

2012-06-14 Thread Chris Cowley
Thanks very much for all the tips. I didn't realise that TommyGun
supported the SAM display modes... it sounds like that will do the
trick for now, but I'll also have a run through of all the other
suggestions too.

Cheers,
Chris.


Re: Cross-development tools

2012-06-14 Thread Andrew Collier
On 14 Jun 2012, at 11:40, Simon Owen wrote:
 What I really could do with is a utility (preferably with a palette
 editor) for drawing graphics (tiles, sprites) that runs on Windows and
 spits out either DEFBs or binary files that I can INCBIN. Does such a
 thing exist?
 
 I mainly use Paint Shop Pro 7 for most SAM image editing, with a .pal file 
 loaded containing the 128 SAM colours.  I just draw sprites on a big image, 
 keeping to a grid spacing, and making sure I stay within the 16-colour limit 
 (there's a colour counting option).
 
 My development is usually split between Windows and Mac, and this is one area 
 I've struggled to make equivalent.  The image editors I'm using (Pixelmator 
 and Acorn) don't support working directly with palettised images, and just 
 convert them to RGB for editing.  So I'm generally limited to making only 
 small changes, and hoping I stay within the colour limit.

I recently discovered Pixen, which is designed for just that sort of thing. 
Mac OS only, though.

To get those images onto the Sam, I (like everybody else, apparently) wrote a 
script which reads image files and outputs in various formats. Mine's in Python.

Andrew



Re: Cross-development tools

2012-06-14 Thread Simon Owen
On 14 Jun 2012, at 22:50, Andrew Collier wrote:
 I recently discovered Pixen, which is designed for just that sort of thing. 
 Mac OS only, though.

That looks promising — thanks!  It's no problem being Mac only as it fills the 
hole I had with palette-based pixel editing.  Though curiously my sample 
palette.png file that I thought had all 128 SAM colours is only showing 126 in 
the list in Pixen.  I'll have to check it back in PSP to see if it's my mistake.


 To get those images onto the Sam, I (like everybody else, apparently) wrote a 
 script which reads image files and outputs in various formats. Mine's in 
 Python.

I almost wrote my updated version in Python, but there didn't seem to be any 
built-in support for reading PNG images (unless I missed something?).  I used 
PIL for shamview, but that wasn't part of the standard Python installation on 
either Snow Leopard (at the time) or Windows, but it was under Ubuntu.  I found 
an unofficial build for Windows, and managed to copy a MacPorts-built extension 
to the standard Mac version, but it wasn't a dependency I really wanted for my 
build tools.

After all that I fell back on processing the PNG file directly, and I'd already 
got Perl code to do enough for what I needed.  Ah well.

Si