the layout of the map format is explained within.... it's a large X/Y datablock with a header detailing some additional information (size etc)
; Map Level 1
;------------
_Level_1Map
dc.l "FORM"
dc.l $2e+(81*16*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 81 ;Map width (blocks)
dc.l 16 ;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 (81*16*2)
dc.w $0,$0,$0,$0,$0,$0,$0,$0
dc.w $0,$1,$2,$3,$4,$0,$0,$5
dc.w $5,$5,$5,$5,$5,$5,$5,$5
dc.w $5,$5,$5,$5,$5,$5,$5,$5
dc.w $5,$5,$6,$5,$5,$5,$5,$7
dc.w $8,$8,$9,$A,$1,$2,$3,$5
dc.w $5,$5,$5,$5,$5,$5,$5,$5
dc.w $5,$5,$5,$5,$5,$5,$5,$5 ... etc etc
So you need to get to grips with these:
A) loading raw data blocks in AMOS
B) translating the header into useful Variable values
C) Seeking through the data block for the actual map data
D) extracting graphics from the IFF into useful tiles
E) producing a map using the data block and provided graphics
F) Creating a Horizontal scroll routine that can read data from the routines built-up in (F)
no small task!
If i get some free time i might have a look, but i cant make any promises atm...