diff --git a/vaporlock/doubledouble/Makefile b/vaporlock/doubledouble/Makefile index 4c9b6155..23573a3a 100644 --- a/vaporlock/doubledouble/Makefile +++ b/vaporlock/doubledouble/Makefile @@ -31,6 +31,7 @@ double.o: double.s \ interrupt_handler.s pt3_lib_mockingboard_patch.s \ wait_a_bit.s wait.s pt3_lib_init.s \ music/fighting.zx02 \ + effect_static.s \ graphics/sworg_hgr.hgr.zx02 \ graphics/sworg_dhgr.aux.zx02 \ graphics/sworg_dhgr.bin.zx02 \ diff --git a/vaporlock/doubledouble/double.s b/vaporlock/doubledouble/double.s index 58632d82..2393ce67 100644 --- a/vaporlock/doubledouble/double.s +++ b/vaporlock/doubledouble/double.s @@ -434,103 +434,7 @@ vblank_smc: jsr $ffff -; 3 LINES 80-COL TEXT AN3=0 PAGE=2 - - ; intentionally a few cycles short as vblank returns+ a few cycles - bit PAGE2 - bit SET_TEXT ; 4 - - ; wait 24 scanlines lines - ; (24*65)-8 = 1560-8 = 1552 - - jsr delay_1552 - -; 3 LINES 40-COL TEXT AN3=0 PAGE=2 - - nop - nop - - nop - nop - sta CLR80COL ; 4 - bit SET_TEXT ; 4 - - jsr delay_1552 - -; 3 LINES 40-col LORES AN3=0 PAGE=1 - - nop - nop - - nop - nop - bit PAGE1 ; 4 - bit SET_GR ; 4 - - jsr delay_1552 - -; 3 LINES 80-col DLORES AN3=0 PAGE=1 - - nop - nop - - sta LORES - sta SET80COL ; 4 - sta CLRAN3 ; 4 - - jsr delay_1552 - - -; 3 LINES 80-col DLORES AN3=0 PAGE=1 - - nop - nop - - nop - nop - - nop - nop - - nop - nop - - jsr delay_1552 - -; 3 lines HIRES 40-COL AN3=1 PAGE=2 - - sta CLR80COL - sta HIRES ; 4 - sta PAGE2 ; 4 - sta SETAN3 - - jsr delay_1552 - -; 3 lines Double-hires AN3=0 PAGE=1 - sta PAGE1 - bit HIRES - sta SET80COL ; 4 ; set 80 column mode - sta CLRAN3 ; 4 ; doublehireson - - jsr delay_1552 - -; 3 line Double-HIRES - - nop - nop - - nop - nop - - nop - nop - - nop - nop - - jsr delay_1552 - - + .include "effect_static.s" jmp double_loop ; 3 diff --git a/vaporlock/doubledouble/effect_static.s b/vaporlock/doubledouble/effect_static.s new file mode 100644 index 00000000..5dac7c2d --- /dev/null +++ b/vaporlock/doubledouble/effect_static.s @@ -0,0 +1,105 @@ + + +; 3 LINES 80-COL TEXT AN3=0 PAGE=2 + + ; intentionally a few cycles short as vblank returns+ a few cycles + bit PAGE2 + bit SET_TEXT ; 4 + + ; wait 24 scanlines lines + ; (24*65)-8 = 1560-8 = 1552 + + jsr delay_1552 + +; 3 LINES 40-COL TEXT AN3=0 PAGE=2 + + nop + nop + + nop + nop + sta CLR80COL ; 4 + bit SET_TEXT ; 4 + + jsr delay_1552 + +; 3 LINES 40-col LORES AN3=0 PAGE=1 + + nop + nop + + nop + nop + bit PAGE1 ; 4 + bit SET_GR ; 4 + + jsr delay_1552 + +; 3 LINES 80-col DLORES AN3=0 PAGE=1 + + nop + nop + + sta LORES + sta SET80COL ; 4 + sta CLRAN3 ; 4 + + jsr delay_1552 + + +; 3 LINES 80-col DLORES AN3=0 PAGE=1 + + nop + nop + + nop + nop + + nop + nop + + nop + nop + + jsr delay_1552 + +; 3 lines HIRES 40-COL AN3=1 PAGE=2 + + sta CLR80COL + sta HIRES ; 4 + sta PAGE2 ; 4 + sta SETAN3 + + jsr delay_1552 + +; 3 lines Double-hires AN3=0 PAGE=1 + sta PAGE1 + bit HIRES + sta SET80COL ; 4 ; set 80 column mode + sta CLRAN3 ; 4 ; doublehireson + + jsr delay_1552 + +; 3 line Double-HIRES + + nop + nop + + nop + nop + + nop + nop + + nop + nop + + jsr delay_1552 + + + + + + + + diff --git a/vaporlock/doubledouble/hello.bas b/vaporlock/doubledouble/hello.bas index 133a44bb..8d2ce546 100644 --- a/vaporlock/doubledouble/hello.bas +++ b/vaporlock/doubledouble/hello.bas @@ -1,2 +1,4 @@ 5 HOME 10 PRINT CHR$(4);"CATALOG" +20 PRINT CHR$(4);"BRUN DOUBLE" +