diff --git a/asm/link.s b/asm/link.s index 89a150a..52080ab 100644 --- a/asm/link.s +++ b/asm/link.s @@ -1,5 +1,5 @@ ; -; fun2gs Merlin32 linker file +; GSLA Player Merlin32 linker file ; dsk play.sys16 typ $b3 ; filetype @@ -15,61 +15,10 @@ sna start ; segment name *---------------------------------------------- asm play.s - ds 0 ; padding + ds 0 ; padding knd #$1100 ; kind ali None ; alignment lna play ; load name sna start ; segment name, doesn't work to try and merge segments here *---------------------------------------------- -; asm lz4.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; load name -; sna lz4code ; JSL only access -*---------------------------------------------- -; asm blit.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; load name -; sna blitcode ; segment name, JSL only access -*---------------------------------------------- -; asm penguin.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; load name -; sna penguin ; segment name -*--------------------------------------------- -; asm sprdata0.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; load name -; sna sprdata0 ; segment name -*---------------------------------------------- -; asm gng.tiles.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; load name -; sna gngtiles -*---------------------------------------------- -; asm cat.s -; ds 0 ; padding -; knd #$1100 ; kind -; ali None ; alignment -; lna fun2gs ; -; sna cat -*---------------------------------------------- -* Combined Stack and Direct Page -; $$JGA this works, but giving up all this space in the executable is stupid -; x65 assembler makes this much easier -; asm stack.s -; ds 0 ; padding, note changing the padding doesn't work -; knd $0012 ; kind DP/Stack -; ali None ; alignment, note this doesn't work -; lna fun2gs ; load name -; sna stack ; segment name diff --git a/asm/shell.s b/asm/shell.s index cf408d4..06ba6db 100644 --- a/asm/shell.s +++ b/asm/shell.s @@ -71,6 +71,8 @@ SetRes sep $30 ; 8-bit mode ldx #$1F02 jsl tool ; CompactMem ;------------------------------------------------------------------------------- +; I'm pretty sure one of the tools is allocating this out from under me +; ; PushLong #0 ; Ask Shadowing Screen ($8000 bytes from $01/2000) ; PushLong #$8000 ; PushWord ProgID @@ -412,7 +414,7 @@ AboutTemplate da 0 adrl 0 :Item3Txt - str '(C)2020 DreamWorld Software' + str '(C) 2020 DreamWorld Software' :Item2 dw 2 dw 13,122,22,251 ;rect @@ -551,11 +553,29 @@ DoSave PlayAnimation + ; ha, this has to parse the headers + ; before it can play the animation + ; copy player to the Direct Page + + lda #127 ; player is really only about 96 bytes + ldx #player + phd + ply + sty :play+1 + + mvn ^player,$00 + + phk + plb + + ; load up a pointer to data lda p:rbuf ldx p:rbuf+2 + ; play the animation + :play jsl $000000 rts