I'm just starting with a one screen area, and I'll figure out scrolling and hidden off screen draw buffers later (no idea what to do for any of that though) :? .
Codetapper from the EAB forum very kindly sent me a program he had written which takes a whole image and chops it into tiles, removes the duplicates, and then exports a tileset (PNG and RAW) plus an .asm map (as well as a few other things I don't quite understand). Very handy for building levels in a paint program then just exporting the image as a PNG, and then toss them into the chopper.
The only thing is that it exports the .asm data map in 68k. Now, I don't think it's too much of a problem as I assume it'll just be fine with changing the directives from 68k "dc.w" to Z80 "dw" and just put the data after it.
Of course I could be horribly wrong, so I've done a sample of what the chopper exports, and any advice on how to convert it to an Amstrad friendly format, or a link to a handy 68k to Z80 converter would be lovely!

Code: Select all
; Map Level 1
;------------
_Level_1Map
dc.l "FORM"
dc.l $2e+(16*12*2)
dc.l "PCLV"
dc.l "LDAT"
dc.l $1a
dc.b 2 ;Map memory type = WORD
dc.b 1 ;Layers
dc.b 16 ;Block width (pixels)
dc.b 16 ;Block height (pixels)
dc.l 16 ;Map width (blocks)
dc.l 12 ;Map height (blocks)
dc.b 0 ;Transparent block = 0
dc.b 0 ;Map compression = None
dc.l 0 ;Reserved
dc.l 0 ;Reserved
dc.l 0 ;Reserved
dc.l "BODY"
dc.l (16*12*2)
dc.w $0,$1,$2,$3,$4,$5,$6,$7
dc.w $8,$9,$A,$B,$C,$C,$C,$C
dc.w $0,$1,$D,$E,$F,$10,$11,$7
dc.w $8,$9,$A,$B,$C,$C,$C,$C
dc.w $0,$12,$13,$14,$15,$16,$17,$7
dc.w $8,$9,$A,$B,$C,$18,$19,$C
dc.w $1A,$1B,$1C,$1D,$15,$16,$1E,$7
dc.w $8,$9,$1F,$20,$C,$21,$22,$C
dc.w $23,$24,$25,$1D,$26,$16,$27,$28
dc.w $8,$9,$29,$2A,$C,$2B,$2C,$C
dc.w $2D,$2E,$25,$1D,$26,$2F,$30,$28
dc.w $8,$31,$32,$32,$C,$C,$C,$C
dc.w $33,$34,$35,$32,$36,$36,$36,$36
dc.w $36,$36,$36,$36,$C,$C,$C,$C
dc.w $37,$38,$39,$3A,$3B,$3C,$3D,$36
dc.w $36,$36,$36,$36,$C,$C,$C,$C
dc.w $3E,$3F,$40,$41,$3E,$3F,$40,$41
dc.w $3E,$3F,$40,$41,$3E,$3F,$40,$41
dc.w $42,$43,$44,$45,$42,$43,$44,$45
dc.w $42,$43,$44,$45,$46,$47,$44,$45
dc.w $48,$49,$4A,$4B,$48,$49,$4A,$4B
dc.w $48,$49,$4A,$4B,$4C,$4D,$4A,$4B
dc.w $4E,$4F,$4F,$50,$4E,$4F,$4F,$50
dc.w $4E,$4F,$4F,$50,$4E,$51,$4F,$50
PRE:
POST:
0=FFFFFF
1=FF8000
2=808080
3=FFFF00
4=770000
5=000000
6=00007D
7=7B7BFF
8=007D7D
9=80FFFF
10=8080FF
11=007F7F
12=101010
13=00319C
14=00007F
15=7BFFFF
16=F87D00
17=790000
18=F8F800
19=F8F8F8
20=FF00FF