diff --git a/demos/TODO b/demos/TODO new file mode 100644 index 00000000..96b61c89 --- /dev/null +++ b/demos/TODO @@ -0,0 +1,2 @@ +lores_escape -- get the mockingboard access under 10 cycles + diff --git a/demos/bot_demo/A2.BAS b/demos/applebot_demo/A2.BAS similarity index 100% rename from demos/bot_demo/A2.BAS rename to demos/applebot_demo/A2.BAS diff --git a/demos/bot_demo/AUTUMN.BAS b/demos/applebot_demo/AUTUMN.BAS similarity index 100% rename from demos/bot_demo/AUTUMN.BAS rename to demos/applebot_demo/AUTUMN.BAS diff --git a/demos/bot_demo/CIRCLES.BAS b/demos/applebot_demo/CIRCLES.BAS similarity index 100% rename from demos/bot_demo/CIRCLES.BAS rename to demos/applebot_demo/CIRCLES.BAS diff --git a/demos/bot_demo/DHGR.BAS b/demos/applebot_demo/DHGR.BAS similarity index 100% rename from demos/bot_demo/DHGR.BAS rename to demos/applebot_demo/DHGR.BAS diff --git a/demos/bot_demo/FLAME2.BAS b/demos/applebot_demo/FLAME2.BAS similarity index 100% rename from demos/bot_demo/FLAME2.BAS rename to demos/applebot_demo/FLAME2.BAS diff --git a/demos/bot_demo/FLYER.BAS b/demos/applebot_demo/FLYER.BAS similarity index 100% rename from demos/bot_demo/FLYER.BAS rename to demos/applebot_demo/FLYER.BAS diff --git a/demos/bot_demo/Makefile b/demos/applebot_demo/Makefile similarity index 100% rename from demos/bot_demo/Makefile rename to demos/applebot_demo/Makefile diff --git a/demos/bot_demo/NYAN.BAS b/demos/applebot_demo/NYAN.BAS similarity index 100% rename from demos/bot_demo/NYAN.BAS rename to demos/applebot_demo/NYAN.BAS diff --git a/demos/bot_demo/QR.BAS b/demos/applebot_demo/QR.BAS similarity index 100% rename from demos/bot_demo/QR.BAS rename to demos/applebot_demo/QR.BAS diff --git a/demos/bot_demo/RASTER4.BAS b/demos/applebot_demo/RASTER4.BAS similarity index 100% rename from demos/bot_demo/RASTER4.BAS rename to demos/applebot_demo/RASTER4.BAS diff --git a/demos/bot_demo/RLE.BAS b/demos/applebot_demo/RLE.BAS similarity index 100% rename from demos/bot_demo/RLE.BAS rename to demos/applebot_demo/RLE.BAS diff --git a/demos/bot_demo/TODO b/demos/applebot_demo/TODO similarity index 100% rename from demos/bot_demo/TODO rename to demos/applebot_demo/TODO diff --git a/demos/bot_demo/bg.png b/demos/applebot_demo/bg.png similarity index 100% rename from demos/bot_demo/bg.png rename to demos/applebot_demo/bg.png diff --git a/demos/bot_demo/botdemo.s b/demos/applebot_demo/botdemo.s similarity index 100% rename from demos/bot_demo/botdemo.s rename to demos/applebot_demo/botdemo.s diff --git a/demos/bot_demo/commands.s b/demos/applebot_demo/commands.s similarity index 100% rename from demos/bot_demo/commands.s rename to demos/applebot_demo/commands.s diff --git a/demos/bot_demo/credits.s b/demos/applebot_demo/credits.s similarity index 100% rename from demos/bot_demo/credits.s rename to demos/applebot_demo/credits.s diff --git a/demos/bot_demo/decompress_fast_v2.s b/demos/applebot_demo/decompress_fast_v2.s similarity index 100% rename from demos/bot_demo/decompress_fast_v2.s rename to demos/applebot_demo/decompress_fast_v2.s diff --git a/demos/bot_demo/empty.dsk b/demos/applebot_demo/empty.dsk similarity index 100% rename from demos/bot_demo/empty.dsk rename to demos/applebot_demo/empty.dsk diff --git a/demos/bot_demo/gr_offsets.s b/demos/applebot_demo/gr_offsets.s similarity index 100% rename from demos/bot_demo/gr_offsets.s rename to demos/applebot_demo/gr_offsets.s diff --git a/demos/bot_demo/gr_unrle.s b/demos/applebot_demo/gr_unrle.s similarity index 100% rename from demos/bot_demo/gr_unrle.s rename to demos/applebot_demo/gr_unrle.s diff --git a/demos/bot_demo/hardware.inc b/demos/applebot_demo/hardware.inc similarity index 100% rename from demos/bot_demo/hardware.inc rename to demos/applebot_demo/hardware.inc diff --git a/demos/bot_demo/hello.bas b/demos/applebot_demo/hello.bas similarity index 100% rename from demos/bot_demo/hello.bas rename to demos/applebot_demo/hello.bas diff --git a/demos/bot_demo/interrupt_handler.s b/demos/applebot_demo/interrupt_handler.s similarity index 100% rename from demos/bot_demo/interrupt_handler.s rename to demos/applebot_demo/interrupt_handler.s diff --git a/demos/bot_demo/loader.s b/demos/applebot_demo/loader.s similarity index 100% rename from demos/bot_demo/loader.s rename to demos/applebot_demo/loader.s diff --git a/demos/bot_demo/mock_anim.s b/demos/applebot_demo/mock_anim.s similarity index 100% rename from demos/bot_demo/mock_anim.s rename to demos/applebot_demo/mock_anim.s diff --git a/demos/bot_demo/music/mAZE_-_The_Upbeated_Eaten_Apple.pt3 b/demos/applebot_demo/music/mAZE_-_The_Upbeated_Eaten_Apple.pt3 similarity index 100% rename from demos/bot_demo/music/mAZE_-_The_Upbeated_Eaten_Apple.pt3 rename to demos/applebot_demo/music/mAZE_-_The_Upbeated_Eaten_Apple.pt3 diff --git a/demos/bot_demo/nozp.inc b/demos/applebot_demo/nozp.inc similarity index 100% rename from demos/bot_demo/nozp.inc rename to demos/applebot_demo/nozp.inc diff --git a/demos/bot_demo/oldzp.inc b/demos/applebot_demo/oldzp.inc similarity index 100% rename from demos/bot_demo/oldzp.inc rename to demos/applebot_demo/oldzp.inc diff --git a/demos/bot_demo/pt3_lib_core.s b/demos/applebot_demo/pt3_lib_core.s similarity index 100% rename from demos/bot_demo/pt3_lib_core.s rename to demos/applebot_demo/pt3_lib_core.s diff --git a/demos/bot_demo/pt3_lib_init.s b/demos/applebot_demo/pt3_lib_init.s similarity index 100% rename from demos/bot_demo/pt3_lib_init.s rename to demos/applebot_demo/pt3_lib_init.s diff --git a/demos/bot_demo/pt3_lib_irq_handler.s b/demos/applebot_demo/pt3_lib_irq_handler.s similarity index 100% rename from demos/bot_demo/pt3_lib_irq_handler.s rename to demos/applebot_demo/pt3_lib_irq_handler.s diff --git a/demos/bot_demo/pt3_lib_mockingboard_detect.s b/demos/applebot_demo/pt3_lib_mockingboard_detect.s similarity index 100% rename from demos/bot_demo/pt3_lib_mockingboard_detect.s rename to demos/applebot_demo/pt3_lib_mockingboard_detect.s diff --git a/demos/bot_demo/pt3_lib_mockingboard_setup.s b/demos/applebot_demo/pt3_lib_mockingboard_setup.s similarity index 100% rename from demos/bot_demo/pt3_lib_mockingboard_setup.s rename to demos/applebot_demo/pt3_lib_mockingboard_setup.s diff --git a/demos/bot_demo/rle.s b/demos/applebot_demo/rle.s similarity index 100% rename from demos/bot_demo/rle.s rename to demos/applebot_demo/rle.s diff --git a/demos/bot_demo/timeline.inc b/demos/applebot_demo/timeline.inc similarity index 100% rename from demos/bot_demo/timeline.inc rename to demos/applebot_demo/timeline.inc diff --git a/demos/bot_demo/wipe.s b/demos/applebot_demo/wipe.s similarity index 100% rename from demos/bot_demo/wipe.s rename to demos/applebot_demo/wipe.s diff --git a/demos/bot_demo/zp.inc b/demos/applebot_demo/zp.inc similarity index 100% rename from demos/bot_demo/zp.inc rename to demos/applebot_demo/zp.inc diff --git a/demos/hellmood_memories/Makefile b/demos/hellmood_memories/Makefile index b7c7ff19..279e3e92 100644 --- a/demos/hellmood_memories/Makefile +++ b/demos/hellmood_memories/Makefile @@ -1,10 +1,12 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +PNG2RLE = ../../utils/gr-utils/png2rle +B2D = ../../utils/bmp2dhr/b2d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -PNG2RLE = ../gr-utils/png2rle -B2D = ../bmp2dhr/b2d all: memories.dsk @@ -23,13 +25,13 @@ memories.dsk: HELLO CIRCLES.BAS CIRCLES CHECKERS CHECKERS_SMALL PLANE \ $(DOS33) -y memories.dsk BSAVE -a 0x300 CIRCLES_NORMAL CIRCLES: circles.o - ld65 -o CIRCLES circles.o -C ../linker_scripts/apple2_70_zp.inc + ld65 -o CIRCLES circles.o -C ../../linker_scripts/apple2_70_zp.inc circles.o: circles.s ca65 -o circles.o circles.s -l circles.lst CIRCLES_NORMAL: circles_normal.o - ld65 -o CIRCLES_NORMAL circles_normal.o -C ../linker_scripts/apple2_300.inc + ld65 -o CIRCLES_NORMAL circles_normal.o -C ../../linker_scripts/apple2_300.inc circles_normal.o: circles_normal.s ca65 -o circles_normal.o circles_normal.s -l circles_normal.lst @@ -37,7 +39,7 @@ circles_normal.o: circles_normal.s ### CHECKERS: checkers.o - ld65 -o CHECKERS checkers.o -C ../linker_scripts/apple2_70_zp.inc + ld65 -o CHECKERS checkers.o -C ../../linker_scripts/apple2_70_zp.inc checkers.o: checkers.s ca65 -o checkers.o checkers.s -l checkers.lst @@ -45,7 +47,7 @@ checkers.o: checkers.s ### PLANE: plane.o - ld65 -o PLANE plane.o -C ../linker_scripts/apple2_1000.inc + ld65 -o PLANE plane.o -C ../../linker_scripts/apple2_1000.inc plane.o: plane.s ca65 -o plane.o plane.s -l plane.lst @@ -53,7 +55,7 @@ plane.o: plane.s ### SIER: sier.o - ld65 -o SIER sier.o -C ../linker_scripts/apple2_1000.inc + ld65 -o SIER sier.o -C ../../linker_scripts/apple2_1000.inc sier.o: sier.s fast_plot.s ca65 -o sier.o sier.s -l sier.lst @@ -61,7 +63,7 @@ sier.o: sier.s fast_plot.s ### TUNNEL: tunnel.o - ld65 -o TUNNEL tunnel.o -C ../linker_scripts/apple2_1000.inc + ld65 -o TUNNEL tunnel.o -C ../../linker_scripts/apple2_1000.inc tunnel.o: tunnel.s ca65 -o tunnel.o tunnel.s -l tunnel.lst @@ -69,7 +71,7 @@ tunnel.o: tunnel.s ### TNM: tunnel_nm.o - ld65 -o TNM tunnel_nm.o -C ../linker_scripts/apple2_1000.inc + ld65 -o TNM tunnel_nm.o -C ../../linker_scripts/apple2_1000.inc tunnel_nm.o: tunnel_nm.s ca65 -o tunnel_nm.o tunnel_nm.s -l tunnel_nm.lst @@ -79,7 +81,7 @@ tunnel_nm.o: tunnel_nm.s ### CHECKERS_SMALL: checkers_small.o - ld65 -o CHECKERS_SMALL checkers_small.o -C ../linker_scripts/apple2_70_zp.inc + ld65 -o CHECKERS_SMALL checkers_small.o -C ../../linker_scripts/apple2_70_zp.inc checkers_small.o: checkers_small.s ca65 -o checkers_small.o checkers_small.s -l checkers_small.lst @@ -88,15 +90,16 @@ checkers_small.o: checkers_small.s HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO CIRCLES.BAS: zooming_circles.bas - ../asoft_basic-utils/tokenize_asoft < zooming_circles.bas > CIRCLES.BAS + $(TOKENIZE) < zooming_circles.bas > CIRCLES.BAS #### clean: rm -f *~ *.o *.lst HELLO CIRCLES.BAS CIRCLES CHECKERS \ - CHECKERS_SMALL PLANE SIER TUNNEL TNM + CHECKERS_SMALL PLANE SIER TUNNEL TNM \ + division_table diff --git a/demos/hellmood_memories/README b/demos/hellmood_memories/README new file mode 100644 index 00000000..6c39c74b --- /dev/null +++ b/demos/hellmood_memories/README @@ -0,0 +1,2 @@ +some attempts at porting Hellmood's Memories to Apple II + diff --git a/demos/hellmood_memories/checkers_outtake/checkers_line.s b/demos/hellmood_memories/checkers_outtake/checkers_line.s new file mode 100644 index 00000000..35e45a28 --- /dev/null +++ b/demos/hellmood_memories/checkers_outtake/checkers_line.s @@ -0,0 +1,92 @@ +; Checkers, based on the code in Hellmood's Memories + +; 42 bytes +; could be shorter if you're not picky about colors + +; by deater (Vince Weaver) + +; Zero Page +BASL = $28 +BASH = $29 +H2 = $2C +COLOR = $30 + +X1 = $F0 +X2 = $F1 +Y1 = $F2 +Y2 = $F3 + +TEMP = $FA +TEMPY = $FB +FRAME = $FC +TEMPX = $FD + + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +BASCALC = $FBC1 +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us +HLINE = $F819 + + +.zeropage + +; orig = 42 +; make 32x32 + +checkers: + + ;=================== + ; init screen + jsr SETGR ; 3 +; bit FULLGR ; 3 + ;==== + ; 6 +checkers_forever: + + inc FRAME ; 2 + +; ldx #39 ; 2 +yloop: +; ldy #39 ; 2 +xloop: +; sec ; 1 + tya ; 1 + sbc FRAME ; 2 + sta X2 ; 2 + txa ; 1 + sbc #0 ; 2 + + eor X2 ; 2 + ora #$DC ; 2 +; adc #1 ; 2 + + sta COLOR + +; jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi checkers_forever ; 2 + diff --git a/demos/hellmood_memories/checkers_outtake/checkers_question.s b/demos/hellmood_memories/checkers_outtake/checkers_question.s new file mode 100644 index 00000000..8a322487 --- /dev/null +++ b/demos/hellmood_memories/checkers_outtake/checkers_question.s @@ -0,0 +1,92 @@ +; Checkers, based on the code in Hellmood's Memories + +; 42 bytes +; could be shorter if you're not picky about colors + +; by deater (Vince Weaver) + +; Zero Page +BASL = $28 +BASH = $29 +H2 = $2C +COLOR = $30 + +X1 = $F0 +X2 = $F1 +Y1 = $F2 +Y2 = $F3 + +TEMP = $FA +TEMPY = $FB +FRAME = $FC +TEMPX = $FD + + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +BASCALC = $FBC1 +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us +HLINE = $F819 + + +.zeropage + +; orig = 42 +; make 32x32 + +checkers: + + ;=================== + ; init screen + jsr SETGR ; 3 +; bit FULLGR ; 3 + ;==== + ; 6 +checkers_forever: + + inc FRAME ; 2 + +; ldx #39 ; 2 +yloop: + ldy #39 ; 2 +xloop: +; sec ; 1 + tya ; 1 + sbc FRAME ; 2 + sta X2 ; 2 + txa ; 1 + sbc #0 ; 2 + + eor X2 ; 2 + ora #$DC ; 2 +; adc #1 ; 2 + + sta COLOR + +; jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi checkers_forever ; 2 + diff --git a/demos/hellmood_memories/checkers_outtake/checkers_rainbow.s b/demos/hellmood_memories/checkers_outtake/checkers_rainbow.s new file mode 100644 index 00000000..09cb0693 --- /dev/null +++ b/demos/hellmood_memories/checkers_outtake/checkers_rainbow.s @@ -0,0 +1,94 @@ +; Checkers, based on the code in Hellmood's Memories + +; 42 bytes +; could be shorter if you're not picky about colors + +; by deater (Vince Weaver) + +; Zero Page +BASL = $28 +BASH = $29 +H2 = $2C +COLOR = $30 + +X1 = $F0 +X2 = $F1 +Y1 = $F2 +Y2 = $F3 + +TEMP = $FA +TEMPY = $FB +FRAME = $FC +TEMPX = $FD + + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +BASCALC = $FBC1 +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us +HLINE = $F819 + + +.zeropage + +; orig = 42 +; make 32x32 + +checkers: + + ;=================== + ; init screen + jsr SETGR ; 3 +; bit FULLGR ; 3 + ;==== + ; 6 +checkers_forever: + + inc FRAME ; 2 + + ldx #39 ; 2 +yloop: + ldy #39 ; 2 +xloop: +; sec ; 1 + tya ; 1 + sbc FRAME ; 2 + ;sta X2 ; 2 + sta COLOR ; 2 + txa ; 1 + sbc #0 ; 2 + +; eor X2 ; 2 + eor COLOR ; 2 + ora #$DC ; 2 +; adc #1 ; 2 + +; sta COLOR + +; jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi checkers_forever ; 2 + diff --git a/demos/hellmood_memories/checkers_small2.s b/demos/hellmood_memories/checkers_small2.s new file mode 100644 index 00000000..fba00cab --- /dev/null +++ b/demos/hellmood_memories/checkers_small2.s @@ -0,0 +1,92 @@ +; Checkers, based on the code in Hellmood's Memories + +; 42 bytes +; could be shorter if you're not picky about colors + +; by deater (Vince Weaver) + +; Zero Page +BASL = $28 +BASH = $29 +H2 = $2C +COLOR = $30 + +X1 = $F0 +X2 = $F1 +Y1 = $F2 +Y2 = $F3 + +TEMP = $FA +TEMPY = $FB +FRAME = $FC +TEMPX = $FD + + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +BASCALC = $FBC1 +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us +HLINE = $F819 + + +.zeropage + +; orig = 42 +; make 32x32 + +checkers: + + ;=================== + ; init screen + jsr SETGR ; 3 +; bit FULLGR ; 3 + ;==== + ; 6 +checkers_forever: + + inc FRAME ; 2 + + ldx #39 ; 2 +yloop: + ldy #39 ; 2 +xloop: + sec ; 1 + tya ; 1 + sbc FRAME ; 2 + sta X2 ; 2 + txa ; 1 + sbc #0 ; 2 + + eor X2 ; 2 + ora #$DB ; 2 + adc #1 ; 2 + + sta COLOR + +; jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi checkers_forever ; 2 + diff --git a/demos/hellmood_memories/circles_old.s b/demos/hellmood_memories/circles_old.s new file mode 100644 index 00000000..0beb907b --- /dev/null +++ b/demos/hellmood_memories/circles_old.s @@ -0,0 +1,117 @@ +; Zooming Circles, based on the code in Hellmood's Memories + +; by deater (Vince Weaver) + +; Zero Page +COLOR = $30 +TEMP = $FA +TEMPY = $FB +FRAME = $FC +XSAVE = $FD + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us + + +; 103 bytes + +.globalzp squares_table_y +.globalzp color_lookup + +.zeropage + +zooming_circles: + + ;=================== + ; init screen + jsr SETGR ; 3 + bit FULLGR ; 3 + ;==== + ; 6 +circle_forever: + + inc FRAME ; 2 + ldx #23 ; 2 + ;=== + ; 4 +yloop: + ldy #19 ; 2 +xloop: + + clc ; 1 + lda squares_table_y+4,y ; 3 + asl ; 1 + asl ; 1 + adc squares_table_y,x ; 3 + + lsr ; 1 + adc FRAME ; 2 + and #$1f ; 2 + + lsr ; 1 + lsr ; 1 + lsr ; 1 + stx XSAVE ; 2 + tax ; 1 + lda color_lookup,X ; 3 + sta COLOR ; 2 + ldx XSAVE ; 2 + + txa ; 1 + jsr PLOT ; 3 + + + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi circle_forever ; 2 + + + +color_lookup: + .byte $00,$55,$00,$77 + + +; 48 bytes +squares_table_y: +;.byte $24,$21,$1e,$1b,$19,$16,$14,$12 +;.byte $10,$0e,$0c,$0a,$09,$07,$06,$05 +;.byte $04,$03,$02,$01,$01,$00,$00,$00 + +.byte $00,$00,$00,$00,$01,$01,$02,$03 +.byte $04,$05,$06,$07,$09,$0a,$0c,$0e +.byte $10,$12,$14,$16,$19,$1b,$1e,$21 + + + + +; 40 bytes +;squares_table_x: +;.byte $71,$6a,$64,$5d,$57,$51,$4b,$45 +;.byte $40,$3a,$35,$31, +;.byte $2c,$28,$24,$20 +;.byte $1c,$19,$15,$12,$10,$0d,$0b,$09 +;.byte $07,$05,$04,$02,$01,$01,$00,$00 +;.byte $00,$00,$00,$01,$01,$02,$04,$05 +;.byte $07,$09,$0b,$0d,$10,$12,$15,$19 +;.byte $1c,$20,$24,$28 ;,$2c,$31,$35,$3a +;;.byte $40,$45,$4b,$51,$57,$5d,$64,$6a diff --git a/demos/hellmood_memories/division_table.c b/demos/hellmood_memories/division_table.c new file mode 100644 index 00000000..5bb7eabf --- /dev/null +++ b/demos/hellmood_memories/division_table.c @@ -0,0 +1,12 @@ +#include + +int main(int argc, char **argv) { + + int yy; + + for(yy=10;yy<58;yy++) { + printf("$%02X,",0x3d5/yy); + } + + return 0; +} diff --git a/demos/hellmood_memories/memories.dsk b/demos/hellmood_memories/memories.dsk index 3d98451f..0788fd7a 100644 Binary files a/demos/hellmood_memories/memories.dsk and b/demos/hellmood_memories/memories.dsk differ diff --git a/demos/hellmood_memories/mul_test.c b/demos/hellmood_memories/mul_test.c new file mode 100644 index 00000000..5e7ec122 --- /dev/null +++ b/demos/hellmood_memories/mul_test.c @@ -0,0 +1,25 @@ +#include + +int main(int argc, char **argv) { + + unsigned int m1,m2; + + m1=0x1; + m2=0x1; + printf("%x * %x = %x\n",m1,m2,m1*m2); + + m1=0x1; + m2=0xff; + printf("%x * %x = %x\n",m1,m2,m1*m2); + + m1=0xff; + m2=0x1; + printf("%x * %x = %x\n",m1,m2,m1*m2); + + m1=0xff; + m2=0xff; + printf("%x * %x = %x\n",m1,m2,m1*m2); + + + return 0; +} diff --git a/demos/hellmood_memories/multiply_s16x16.s b/demos/hellmood_memories/multiply_s16x16.s new file mode 100644 index 00000000..616afb8c --- /dev/null +++ b/demos/hellmood_memories/multiply_s16x16.s @@ -0,0 +1,68 @@ + + ;========================== + ; Signed 16x16=32 multiply + ;========================== + ; multiplies NUM1H:NUM1L by NUM2H:NUM2L + ; result in RESULT3:RESULT2:RESULT1:RESULT0 + +multiply_s16x16: + + ; check if we need to invert result, save for later + lda NUM1H + eor NUM2H + php + + + ; if NUM1 negative, invert it + lda NUM1H + bpl num1_positive + + sec + lda #0 + sbc NUM1L + sta NUM1L + lda #0 + sbc NUM1H + sta NUM1H + +num1_positive: + + ; if NUM2 negative, invert it + + lda NUM2H + bpl num2_positive + + sec + lda #0 + sbc NUM2L + sta NUM2L + lda #0 + sbc NUM2H + sta NUM2H +num2_positive: + + jsr multiply_u16x16 + + + ; done, see if we need to negate + + plp + bpl done_s16x16 + + sec + lda #0 + sbc RESULT0 + sta RESULT0 + lda #0 + sbc RESULT1 + sta RESULT1 + lda #0 + sbc RESULT2 + sta RESULT2 + lda #0 + sbc RESULT3 + sta RESULT3 + +done_s16x16: + + rts diff --git a/demos/hellmood_memories/multiply_u16x16.s b/demos/hellmood_memories/multiply_u16x16.s new file mode 100644 index 00000000..6695e834 --- /dev/null +++ b/demos/hellmood_memories/multiply_u16x16.s @@ -0,0 +1,217 @@ +; Fast mutiply + +; Note for our purposes we only care about 8.8 x 8.8 fixed point +; with 8.8 result, which means we only care about the middle two bytes +; of the 32 bit result. So we disable generation of the high and low byte +; to save some cycles. + +; +; The old routine took around 700 cycles for a 16bitx16bit=32bit mutiply +; This routine, at an expense of 2kB of lookup tables, takes around 250 +; If you reuse a term the next time this drops closer to 200 + + +; Fast 16x16 bit unsigned multiplication, 32-bit result +; Input: NUM1H:NUM1L * NUM2H:NUM2L +; Result: RESULT3:RESULT2:RESULT1:RESULT0 +; +; Does self-modifying code to hard-code NUM1H:NUM1L into the code +; carry=0: re-use previous NUM1H:NUM1L +; carry=1: reload NUM1H:NUM1L (58 cycles slower) +; +; clobbered: RESULT, X, A, C +; Allocation setup: T1,T2 and RESULT preferably on Zero-page. +; +; NUM1H (x_i), NUM1L (x_f) +; NUM2H (y_i), NUM2L (y_f) + +; NUM1L * NUM2L = AAaa +; NUM1L * NUM2H = BBbb +; NUM1H * NUM2L = CCcc +; NUM1H * NUM2H = DDdd +; +; AAaa +; BBbb +; CCcc +; + DDdd +; ---------- +; RESULT + +;fixed_16x16_mul_unsigned: + +multiply_u16x16: + + ;============================ + ; Set up self-modifying code + ; this changes the code to be hard-coded to multiply by NUM1H:NUM1L + ;============================ + + lda NUM1L ; load the low byte ; 3 + sta sm1a+1 ; 3 + sta sm3a+1 ; 3 + sta sm5a+1 ; 3 + sta sm7a+1 ; 3 + eor #$ff ; invert the bits for subtracting ; 2 + sta sm2a+1 ; 3 + sta sm4a+1 ; 3 + sta sm6a+1 ; 3 + sta sm8a+1 ; 3 + lda NUM1H ; load the high byte ; 3 + sta sm1b+1 ; 3 + sta sm3b+1 ; 3 + sta sm5b+1 ; 3 + sta sm7b+1 ; + eor #$ff ; invert the bits for subtractin ; 2 + sta sm2b+1 ; 3 + sta sm4b+1 ; 3 + sta sm6b+1 ; 3 + sta sm8b+1 ; + ;=========== + ; 52 + +multiply_u16x16_same_num1: + + stx TEMP + + ;========================== + ; Perform NUM1L * NUM2L = AAaa + ;========================== + + ldx NUM2L ; (low le) ; 3 + sec ; 2 +sm1a: + lda square1_lo,x ; 4 +sm2a: + sbc square2_lo,x ; 4 + + ; a is _aa + + sta RESULT0 ; + +sm3a: + lda square1_hi,x ; 4 +sm4a: + sbc square2_hi,x ; 4 + ; a is _AA + sta _AA+1 ; 3 + ;=========== + ; 24 + + ; Perform NUM1H * NUM2L = CCcc + sec ; 2 +sm1b: + lda square1_lo,x ; 4 +sm2b: + sbc square2_lo,x ; 4 + ; a is _cc + sta _cc+1 ; 3 +sm3b: + lda square1_hi,x ; 4 +sm4b: + sbc square2_hi,x ; 4 + ; a is _CC + sta _CC+1 ; 3 + ;=========== + ; 24 + + ;========================== + ; Perform NUM1L * NUM2H = BBbb + ;========================== + ldx NUM2H ; 3 + sec ; 2 +sm5a: + lda square1_lo,x ; 4 +sm6a: + sbc square2_lo,x ; 4 + ; a is _bb + sta _bb+1 ; 3 + +sm7a: + lda square1_hi,x ; 4 +sm8a: + sbc square2_hi,x ; 4 + ; a is _BB + sta _BB+1 ; 3 + ;=========== + ; 27 + + ;========================== + ; Perform NUM1H * NUM2H = DDdd + ;========================== + sec ; 2 +sm5b: + lda square1_lo,x ; 4 +sm6b: + sbc square2_lo,x ; 4 + ; a is _dd + sta _dd+1 ; 3 +sm7b: + lda square1_hi,x ; +sm8b: + sbc square2_hi,x ; + ; a = _DD + sta RESULT3 ; + ;=========== + ; 13 + + ;=========================================== + ; Add the separate multiplications together + ;=========================================== + + clc ; 2 +_AA: + lda #0 ; loading _AA ; 2 +_bb: + adc #0 ; adding in _bb ; 2 + sta RESULT1 ; 3 + ;========== + ; 9 + ; product[2]=_BB+_CC+c + +_BB: + lda #0 ; loading _BB ; 2 +_CC: + adc #0 ; adding in _CC ; 2 + sta RESULT2 ; 3 + ;=========== + ; 7 + + ; product[3]=_DD+c + + bcc dd_no_carry1 ; + inc RESULT3 ; + clc ; 2 + ;============= + ; 2 +dd_no_carry1: + + ; product[1]=_AA+_bb+_cc + +_cc: + lda #0 ; load _cc ; 2 + adc RESULT1 ; 3 + sta RESULT1 ; 3 + + ; product[2]=_BB+_CC+_dd+c + +_dd: + lda #0 ; load _dd ; 2 + adc RESULT2 ; 3 + sta RESULT2 ; 3 + + ;=========== + ; 16 + ; product[3]=_DD+c + + + bcc dd_no_carry2 ; + inc RESULT3 ; + + ;============= + ; 0 + +dd_no_carry2: + ldx TEMP + + rts ; 6 + diff --git a/demos/hellmood_memories/multiply_u16x16_mod.s b/demos/hellmood_memories/multiply_u16x16_mod.s new file mode 100644 index 00000000..a63ad284 --- /dev/null +++ b/demos/hellmood_memories/multiply_u16x16_mod.s @@ -0,0 +1,221 @@ +; MODIFIED +; we only care about the result of RESULT1 for sierpinski + + +; Fast mutiply + +; Note for our purposes we only care about 8.8 x 8.8 fixed point +; with 8.8 result, which means we only care about the middle two bytes +; of the 32 bit result. So we disable generation of the high and low byte +; to save some cycles. + +; +; The old routine took around 700 cycles for a 16bitx16bit=32bit mutiply +; This routine, at an expense of 2kB of lookup tables, takes around 250 +; If you reuse a term the next time this drops closer to 200 + + +; Fast 16x16 bit unsigned multiplication, 32-bit result +; Input: NUM1H:NUM1L * NUM2H:NUM2L +; Result: RESULT3:RESULT2:RESULT1:RESULT0 +; +; Does self-modifying code to hard-code NUM1H:NUM1L into the code +; carry=0: re-use previous NUM1H:NUM1L +; carry=1: reload NUM1H:NUM1L (58 cycles slower) +; +; clobbered: RESULT, X, A, C +; Allocation setup: T1,T2 and RESULT preferably on Zero-page. +; +; NUM1H (x_i), NUM1L (x_f) +; NUM2H (y_i), NUM2L (y_f) + +; NUM1L * NUM2L = AAaa +; NUM1L * NUM2H = BBbb +; NUM1H * NUM2L = CCcc +; NUM1H * NUM2H = DDdd +; +; AAaa +; BBbb +; CCcc +; + DDdd +; ---------- +; RESULT + +;fixed_16x16_mul_unsigned: + +multiply_u16x16: + + ;============================ + ; Set up self-modifying code + ; this changes the code to be hard-coded to multiply by NUM1H:NUM1L + ;============================ + + lda NUM1L ; load the low byte ; 3 + sta sm1a+1 ; 3 + sta sm3a+1 ; 3 + sta sm5a+1 ; 3 +; sta sm7a+1 ; 3 + eor #$ff ; invert the bits for subtracting ; 2 + sta sm2a+1 ; 3 + sta sm4a+1 ; 3 + sta sm6a+1 ; 3 +; sta sm8a+1 ; 3 + lda NUM1H ; load the high byte ; 3 + sta sm1b+1 ; 3 +; sta sm3b+1 ; 3 +; sta sm5b+1 ; 3 +; sta sm7b+1 ; + eor #$ff ; invert the bits for subtractin ; 2 + sta sm2b+1 ; 3 +; sta sm4b+1 ; 3 +; sta sm6b+1 ; 3 +; sta sm8b+1 ; + ;=========== + ; 52 + +multiply_u16x16_same_num1: + + stx TEMP + + ;========================== + ; Perform NUM1L * NUM2L = AAaa + ;========================== + + ldx NUM2L ; (low le) ; 3 + sec ; 2 +sm1a: + lda square1_lo,x ; 4 +sm2a: + sbc square2_lo,x ; 4 + + ; a is _aa + + sta RESULT0 ; + +sm3a: + lda square1_hi,x ; 4 +sm4a: + sbc square2_hi,x ; 4 + ; a is _AA + sta _AA+1 ; 3 + ;=========== + ; 24 + + ; Perform NUM1H * NUM2L = CCcc + sec ; 2 +sm1b: + lda square1_lo,x ; 4 +sm2b: + sbc square2_lo,x ; 4 + ; a is _cc + sta _cc+1 ; 3 +;sm3b: +; lda square1_hi,x ; 4 +;sm4b: +; sbc square2_hi,x ; 4 +; ; a is _CC +; sta _CC+1 ; 3 + ;=========== + ; 24 + + ;========================== + ; Perform NUM1L * NUM2H = BBbb + ;========================== + ldx NUM2H ; 3 + sec ; 2 +sm5a: + lda square1_lo,x ; 4 +sm6a: + sbc square2_lo,x ; 4 + ; a is _bb + sta _bb+1 ; 3 + +;sm7a: +; lda square1_hi,x ; 4 +;sm8a: +; sbc square2_hi,x ; 4 +; ; a is _BB +; sta _BB+1 ; 3 + ;=========== + ; 27 + + ;========================== + ; Perform NUM1H * NUM2H = DDdd + ;========================== +; sec ; 2 +;sm5b: +; lda square1_lo,x ; 4 +;sm6b: +; sbc square2_lo,x ; 4 +; ; a is _dd +; sta _dd+1 ; 3 +;sm7b: +; lda square1_hi,x ; +;sm8b: +; sbc square2_hi,x ; +; ; a = _DD +; sta RESULT3 ; + ;=========== + ; 13 + + ;=========================================== + ; Add the separate multiplications together + ;=========================================== + + clc ; 2 +_AA: + lda #0 ; loading _AA ; 2 +_bb: + adc #0 ; adding in _bb ; 2 + sta RESULT1 ; 3 + ;========== + ; 9 + ; product[2]=_BB+_CC+c + +;_BB: +; lda #0 ; loading _BB ; 2 +;_CC: +; adc #0 ; adding in _CC ; 2 +; sta RESULT2 ; 3 + ;=========== + ; 7 + + ; product[3]=_DD+c + +; bcc dd_no_carry1 ; +; inc RESULT3 ; +; clc ; 2 + ;============= + ; 2 +dd_no_carry1: + + ; product[1]=_AA+_bb+_cc + +_cc: + lda #0 ; load _cc ; 2 + adc RESULT1 ; 3 + sta RESULT1 ; 3 + + ; product[2]=_BB+_CC+_dd+c + +;_dd: +; lda #0 ; load _dd ; 2 +; adc RESULT2 ; 3 +; sta RESULT2 ; 3 + + ;=========== + ; 16 + ; product[3]=_DD+c + + +; bcc dd_no_carry2 ; +; inc RESULT3 ; + + ;============= + ; 0 + +;dd_no_carry2: + ldx TEMP + + rts ; 6 + diff --git a/demos/hellmood_memories/plane_outtake/plane.s b/demos/hellmood_memories/plane_outtake/plane.s new file mode 100644 index 00000000..2c36af26 --- /dev/null +++ b/demos/hellmood_memories/plane_outtake/plane.s @@ -0,0 +1,122 @@ +; Tilted Plane, based on the code in Hellmood's Memories + +; by deater (Vince Weaver) + +; Zero Page +BASL = $28 +BASH = $29 +H2 = $2C +COLOR = $30 + +X1 = $F0 +X2 = $F1 +Y1 = $F2 +Y2 = $F3 + + +M1 = $F7 +M2 = $F8 + +TEMP = $FA +TEMPY = $FB +FRAME = $FC +TEMPX = $FD +SCALED = $FE + + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text +PAGE0 = $C054 ; Page0 +PAGE1 = $C055 ; Page1 +LORES = $C056 ; Enable LORES graphics + +; ROM routines + +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +TEXT = $FB36 ;; Set text mode +BASCALC = $FBC1 +SETGR = $FB40 +HOME = $FC58 ;; Clear the text screen +WAIT = $FCA8 ;; delay 1/2(26+27A+5A^2) us +HLINE = $F819 + +tilted_plane: + + + + ;=================== + ; init screen + jsr SETGR ; 3 + bit FULLGR ; 3 + + jsr init_multiply_tables + +plane_forever: + + inc FRAME ; 2 + + ldx #47 ; yy ; 2 +yloop: + ldy #39 ; xx ; 2 +xloop: + +; clc +; adc #$10 ; adjust top of screen + lda division,X ; scaled=((0x3d5/yy)&0xff); + ; reverse divide AL=C/Y' + + sta M1 + + ; color=((signed char)((xprime-20)&0xff))*((signed char)(scaled&0xff)); + tya + sec + sbc #20 + sta M2 + + jsr multiply_s8x8 + + lda M1 + + ror M2 + ror + ror M2 + ror + and #$f + sta COLOR + +; color=(color>>6)&0xff; + + sec + lda SCALED + sbc FRAME ; scaled-=frame; + eor COLOR ; color^=(scaled&0xff); + and #$1C ; color&=0x1c; // map colors + + jsr SETCOL + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi plane_forever ; 2 + + +division: + .byte $62,$59,$51,$4B,$46,$41,$3D,$39,$36,$33 + .byte $31,$2E,$2C,$2A,$28,$27,$25,$24,$23,$21 + .byte $20,$1F,$1E,$1D,$1C,$1C,$1B,$1A,$19,$19 + .byte $18,$17,$17,$16,$16,$15,$15,$14,$14,$14 + .byte $13,$13,$12,$12,$12,$11,$11,$11 + +.include "multiply_tables.s" +.include "multiply_s8x8.s" +.include "multiply_u8x8.s" diff --git a/demos/hellmood_memories/tunnel_nm.s b/demos/hellmood_memories/tunnel_nm.s new file mode 100644 index 00000000..35df1465 --- /dev/null +++ b/demos/hellmood_memories/tunnel_nm.s @@ -0,0 +1,135 @@ +; Tunnel (no multiply), based on the code by Hellmood + +; by deater (Vince Weaver) + + +; first try (shift/add multiply) = 160 bytes, 14 seconds/frame +; second (lookup table mul) = 251 bytes, 9 seconds/frame + +; Zero Page +COLOR = $30 + +XCOORD = $F0 +YCOORD = $F1 +DEPTH = $F2 +VALUE = $F6 +M1 = $F7 +M2 = $F8 +FRAME = $F9 +TEMP = $FA + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text + +; ROM routines +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +SETGR = $FB40 + +tunnel: + + ;=================== + ; init screen + jsr SETGR ; 3 + bit FULLGR ; 3 + +; jsr init_multiply_tables ; 3 + +tunnel_forever: + + inc FRAME ; 2 + + ldx #47 ; 2 +yloop: + ldy #39 ; 2 +xloop: + + ; Xcoord = (x-10)*4 + sec ; 1 + tya ; 1 + sbc #10 ; 2 + asl ; 1 + asl ; 1 + sta XCOORD ; 2 + + ; Ycoord = (y-10)*4 + sec ; 1 + txa ; 1 + sbc #10 ; 2 + asl ; 1 + asl ; 1 + ; center + sbc #24 + sta YCOORD ; 2 + + ; set depth to -9 (move backwards) + lda #$f7 ; 2 + sta DEPTH ; 2 + +fx5_loop: + ; get ycoord + lda YCOORD ; 2 + + ; 8x8 signed multiply of M1*DEPTH + ;sta M1 ; 2 +; jsr imul ; 3 + +; lda M2 ; 2 + sta VALUE ; high result in A ; 2 + + ; get xcoord + lda XCOORD ; 2 + + ; add distance to projection (bend right) + clc ; 1 + adc DEPTH ; 2 + ;sta M1 ; 2 + + ; 8x8 signed multiply of M1*DEPTH +; jsr imul ; 3 + + ; do the calculation + + dec DEPTH ; 2 + beq putpixel ; 2 ; is this needed? + + ; load the yprojection + lda VALUE ; 2 + ; xor with the xprojection + eor M2 ; 2 + ; center walls around 0 + clc ; 1 + adc #$4 ; 2 + + ; test with -8, see if wall hit + sta VALUE ; 2 + and #$f8 ; 2 + beq fx5_loop ; 2 + +putpixel: + + ; adjust color by frame and set + sec ; 1 + lda DEPTH ; 2 + sbc FRAME ; 2 + eor VALUE ; 2 + and #$7 ; 2 + ;adc #$20 + jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi tunnel_forever ; 2 + + + diff --git a/demos/hellmood_memories/tunnel_slow.s b/demos/hellmood_memories/tunnel_slow.s new file mode 100644 index 00000000..9ad02130 --- /dev/null +++ b/demos/hellmood_memories/tunnel_slow.s @@ -0,0 +1,201 @@ +; Tunnel, based on the code in Hellmood's Memories + +; by deater (Vince Weaver) + + +; first try = 160 bytes, 14 seconds/frame + +; Zero Page +COLOR = $30 + +XCOORD = $F0 +YCOORD = $F1 +DEPTH = $F2 +VALUE = $F6 +M1 = $F7 +M2 = $F8 +FRAME = $F9 +TEMP = $FA + +; Soft Switches +KEYPRESS= $C000 +KEYRESET= $C010 +SET_GR = $C050 ; Enable graphics +FULLGR = $C052 ; Full screen, no text + +; ROM routines +PLOT = $F800 ; plot, horiz=y, vert=A (A trashed, XY Saved) +SETCOL = $F864 +SETGR = $FB40 + +tunnel: + + ;=================== + ; init screen + jsr SETGR ; 3 + bit FULLGR ; 3 + +tunnel_forever: + + inc FRAME ; 2 + + ldx #47 ; 2 +yloop: + ldy #39 ; 2 +xloop: + + ; Xcoord = (x-10)*4 + sec ; 1 + tya ; 1 + sbc #10 ; 2 + asl ; 1 + asl ; 1 + sta XCOORD ; 2 + + ; Ycoord = (y-10)*4 + sec ; 1 + txa ; 1 + sbc #10 ; 2 + asl ; 1 + asl ; 1 + ; center + sbc #24 + sta YCOORD ; 2 + + ; set depth to -9 (move backwards) + lda #$f7 ; 2 + sta DEPTH ; 2 + +fx5_loop: + ; get ycoord + lda YCOORD ; 2 + + ; 8x8 signed multiply of M1*DEPTH + ;sta M1 ; 2 + jsr imul ; 3 + +; lda M2 ; 2 + sta VALUE ; high result in A ; 2 + + ; get xcoord + lda XCOORD ; 2 + + ; add distance to projection (bend right) + clc ; 1 + adc DEPTH ; 2 + ;sta M1 ; 2 + + ; 8x8 signed multiply of M1*DEPTH + jsr imul ; 3 + + ; do the calculation + + dec DEPTH ; 2 + beq putpixel ; 2 ; is this needed? + + ; load the yprojection + lda VALUE ; 2 + ; xor with the xprojection + eor M2 ; 2 + ; center walls around 0 + clc ; 1 + adc #$4 ; 2 + + ; test with -8, see if wall hit + sta VALUE ; 2 + and #$f8 ; 2 + beq fx5_loop ; 2 + +putpixel: + + ; adjust color by frame and set + sec ; 1 + lda DEPTH ; 2 + sbc FRAME ; 2 + eor VALUE ; 2 + and #$7 ; 2 + ;adc #$20 + jsr SETCOL ; 3 + + txa ; A==Y1 ; 1 + jsr PLOT ; (X2,Y1) ; 3 + + dey ; 1 + bpl xloop ; 2 + + dex ; 1 + bpl yloop ; 2 + + bmi tunnel_forever ; 2 + + ;================================================= + ; A = M1 + ; DEPTH (preserve) is M2 +imul: + stx TEMP ; save as we trash it + + sta M1 ; get values in right place + lda DEPTH + sta M2 + + eor M1 ; calc if we need to adjust at end + ; (++ vs +- vs -+ vs --) + php ; save status on stack + + ; if M1 negative, negate it + lda M1 + bpl m1_positive + eor #$ff + clc + adc #0 +m1_positive: + sta M1 + + ; if M2 negative, naegate it + lda M2 + bpl m2_positive + eor #$ff + clc + adc #0 +m2_positive: + sta M2 + + ;================== + ; unsigned multiply + + ; factors in M1 and M2 + lda #0 + ldx #$8 + lsr M1 + clc +imul_loop: + bcc no_add + clc + adc M2 +no_add: + ror + ror M1 + dex + bne imul_loop + + sta M2 + ; done, high result in factor2, low result in factor1 + + ; adjust to be signed + ; if m1 and m2 positive, good + ; if m1 and m2 negative, good + ; otherwise, negate result + + plp ; restore saved pos/neg value + bpl done_result +negate_result: + sec + lda #0 + sbc M1 + lda #0 + sbc M2 +done_result: + sta M2 + + ldx TEMP + rts diff --git a/demos/kfest2018/Makefile b/demos/kfest2018/Makefile index 47415a8d..ba62790a 100644 --- a/demos/kfest2018/Makefile +++ b/demos/kfest2018/Makefile @@ -1,7 +1,7 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -TOKENIZE = ../asoft_basic-utils/tokenize_asoft +DOS33 = ../../utils/dos33fs-utils/dos33 +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft all: kfest18.dsk @@ -16,13 +16,13 @@ RASTER.lz4: RASTER lz4 -f -16 RASTER RASTER: raster.o - ld65 -o RASTER raster.o -C ../linker_scripts/apple2_2000.inc + ld65 -o RASTER raster.o -C ../../linker_scripts/apple2_2000.inc raster_decompress.o: raster_decompress.s RASTER.lz4 ca65 -o raster_decompress.o raster_decompress.s RASTER_C: raster_decompress.o - ld65 -o RASTER_C raster_decompress.o -C ../linker_scripts/apple2_1000.inc + ld65 -o RASTER_C raster_decompress.o -C ../../linker_scripts/apple2_1000.inc @@ -31,7 +31,7 @@ raster2.o: raster2.s ca65 -o raster2.o raster2.s -l raster2.lst RASTER2: raster2.o - ld65 -o RASTER2 raster2.o -C ../linker_scripts/apple2_1000.inc + ld65 -o RASTER2 raster2.o -C ../../linker_scripts/apple2_1000.inc clean: diff --git a/demos/demosplash2019/Makefile b/demos/lores_escape/Makefile similarity index 79% rename from demos/demosplash2019/Makefile rename to demos/lores_escape/Makefile index 49cf31e4..0a0d40cc 100644 --- a/demos/demosplash2019/Makefile +++ b/demos/lores_escape/Makefile @@ -1,11 +1,13 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG2RLE = ../../utils/gr-utils/png2rle +PNG2LZ4 = ../../utils/gr-utils/png2lz4 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +B2D = ../../utils/bmp2dhr/b2d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG2RLE = ../gr-utils/png2rle -PNG2LZ4 = ../gr-utils/png2lz4 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -B2D = ../bmp2dhr/b2d all: demosplash2019.dsk @@ -20,13 +22,13 @@ demosplash2019.dsk: HELLO LOADER DEMOSPLASH HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO ##### #DEMOSPLASH: demosplash.o -# ld65 -o DEMOSPLASH demosplash.o -C ../linker_scripts/apple2_1700.inc +# ld65 -o DEMOSPLASH demosplash.o -C ../../linker_scripts/apple2_1700.inc #demosplash.o: demosplash.s \ # zp.inc hardware.inc \ @@ -45,7 +47,7 @@ HELLO: hello.bas ##### DEMOSPLASH: demosplash.o - ld65 -o DEMOSPLASH demosplash.o -C ../linker_scripts/apple2_1400.inc + ld65 -o DEMOSPLASH demosplash.o -C ../../linker_scripts/apple2_1400.inc demosplash.o: demosplash.s \ zp.inc hardware.inc \ @@ -73,7 +75,7 @@ demosplash.o: demosplash.s \ ##### LOADER: loader.o - ld65 -o LOADER loader.o -C ../linker_scripts/apple2_1000.inc + ld65 -o LOADER loader.o -C ../../linker_scripts/apple2_1000.inc loader.o: loader.s ca65 -o loader.o loader.s -l loader.lst @@ -112,3 +114,5 @@ k_40_48d.inc: k_40_48d.png clean: rm -f *~ *.o *.lst *.lz4 HELLO \ DEMOSPLASH + cd ansi && make clean + cd generator && make clean diff --git a/demos/demosplash2019/NOTES b/demos/lores_escape/NOTES similarity index 100% rename from demos/demosplash2019/NOTES rename to demos/lores_escape/NOTES diff --git a/demos/lores_escape/README b/demos/lores_escape/README new file mode 100644 index 00000000..c03f8a74 --- /dev/null +++ b/demos/lores_escape/README @@ -0,0 +1,13 @@ +Apple II Lores Escape Demo + +presented at Demosplash 2019 (came in 3rd retro demo) + +was doing too much that year + +had to fix bugs (with memory not being inited to zero) right before +it was presented + +struggled with the sound transition from cycle-counted to interrupt +driven + +bass sound still not 100% great much to Dya's disappointment diff --git a/demos/demosplash2019/TODO b/demos/lores_escape/TODO similarity index 100% rename from demos/demosplash2019/TODO rename to demos/lores_escape/TODO diff --git a/demos/demosplash2019/ansi/Makefile b/demos/lores_escape/ansi/Makefile similarity index 100% rename from demos/demosplash2019/ansi/Makefile rename to demos/lores_escape/ansi/Makefile diff --git a/demos/demosplash2019/ansi/appleII_ansi_cropped.png b/demos/lores_escape/ansi/appleII_ansi_cropped.png similarity index 100% rename from demos/demosplash2019/ansi/appleII_ansi_cropped.png rename to demos/lores_escape/ansi/appleII_ansi_cropped.png diff --git a/demos/demosplash2019/ansi/kfest.png b/demos/lores_escape/ansi/kfest.png similarity index 100% rename from demos/demosplash2019/ansi/kfest.png rename to demos/lores_escape/ansi/kfest.png diff --git a/demos/demosplash2019/ansi/kfest.xp b/demos/lores_escape/ansi/kfest.xp similarity index 100% rename from demos/demosplash2019/ansi/kfest.xp rename to demos/lores_escape/ansi/kfest.xp diff --git a/demos/demosplash2019/ansi/kfest2020.ans b/demos/lores_escape/ansi/kfest2020.ans similarity index 100% rename from demos/demosplash2019/ansi/kfest2020.ans rename to demos/lores_escape/ansi/kfest2020.ans diff --git a/demos/demosplash2019/appleII_40_96.inc b/demos/lores_escape/appleII_40_96.inc similarity index 100% rename from demos/demosplash2019/appleII_40_96.inc rename to demos/lores_escape/appleII_40_96.inc diff --git a/demos/demosplash2019/appleII_40_96.png b/demos/lores_escape/appleII_40_96.png similarity index 100% rename from demos/demosplash2019/appleII_40_96.png rename to demos/lores_escape/appleII_40_96.png diff --git a/demos/demosplash2019/appleII_attempt1.png b/demos/lores_escape/appleII_attempt1.png similarity index 100% rename from demos/demosplash2019/appleII_attempt1.png rename to demos/lores_escape/appleII_attempt1.png diff --git a/demos/demosplash2019/appleII_attempt2.png b/demos/lores_escape/appleII_attempt2.png similarity index 100% rename from demos/demosplash2019/appleII_attempt2.png rename to demos/lores_escape/appleII_attempt2.png diff --git a/demos/demosplash2019/appleII_intro.s b/demos/lores_escape/appleII_intro.s similarity index 100% rename from demos/demosplash2019/appleII_intro.s rename to demos/lores_escape/appleII_intro.s diff --git a/demos/demosplash2019/asteroid.inc b/demos/lores_escape/asteroid.inc similarity index 100% rename from demos/demosplash2019/asteroid.inc rename to demos/lores_escape/asteroid.inc diff --git a/demos/demosplash2019/book_40_48d.png b/demos/lores_escape/book_40_48d.png similarity index 100% rename from demos/demosplash2019/book_40_48d.png rename to demos/lores_escape/book_40_48d.png diff --git a/demos/demosplash2019/book_hgr2.bmp b/demos/lores_escape/book_hgr2.bmp similarity index 100% rename from demos/demosplash2019/book_hgr2.bmp rename to demos/lores_escape/book_hgr2.bmp diff --git a/demos/demosplash2019/book_hgr2.png b/demos/lores_escape/book_hgr2.png similarity index 100% rename from demos/demosplash2019/book_hgr2.png rename to demos/lores_escape/book_hgr2.png diff --git a/demos/demosplash2019/create_update_type1.s b/demos/lores_escape/create_update_type1.s similarity index 100% rename from demos/demosplash2019/create_update_type1.s rename to demos/lores_escape/create_update_type1.s diff --git a/demos/demosplash2019/create_update_type2.s b/demos/lores_escape/create_update_type2.s similarity index 100% rename from demos/demosplash2019/create_update_type2.s rename to demos/lores_escape/create_update_type2.s diff --git a/demos/demosplash2019/credits.s b/demos/lores_escape/credits.s similarity index 100% rename from demos/demosplash2019/credits.s rename to demos/lores_escape/credits.s diff --git a/demos/demosplash2019/credits_bg.png b/demos/lores_escape/credits_bg.png similarity index 100% rename from demos/demosplash2019/credits_bg.png rename to demos/lores_escape/credits_bg.png diff --git a/demos/demosplash2019/delay_a.s b/demos/lores_escape/delay_a.s similarity index 100% rename from demos/demosplash2019/delay_a.s rename to demos/lores_escape/delay_a.s diff --git a/demos/demosplash2019/demosplash.s b/demos/lores_escape/demosplash.s similarity index 100% rename from demos/demosplash2019/demosplash.s rename to demos/lores_escape/demosplash.s diff --git a/demos/demosplash2019/demosplash.s.old b/demos/lores_escape/demosplash.s.old similarity index 100% rename from demos/demosplash2019/demosplash.s.old rename to demos/lores_escape/demosplash.s.old diff --git a/demos/demosplash2019/demosplash2019.dsk b/demos/lores_escape/demosplash2019.dsk similarity index 100% rename from demos/demosplash2019/demosplash2019.dsk rename to demos/lores_escape/demosplash2019.dsk diff --git a/demos/demosplash2019/dya_space_demo.pt3 b/demos/lores_escape/dya_space_demo.pt3 similarity index 100% rename from demos/demosplash2019/dya_space_demo.pt3 rename to demos/lores_escape/dya_space_demo.pt3 diff --git a/demos/demosplash2019/dya_space_demo2.pt3 b/demos/lores_escape/dya_space_demo2.pt3 similarity index 100% rename from demos/demosplash2019/dya_space_demo2.pt3 rename to demos/lores_escape/dya_space_demo2.pt3 diff --git a/demos/demosplash2019/earth.inc b/demos/lores_escape/earth.inc similarity index 100% rename from demos/demosplash2019/earth.inc rename to demos/lores_escape/earth.inc diff --git a/demos/demosplash2019/empty.dsk b/demos/lores_escape/empty.dsk similarity index 100% rename from demos/demosplash2019/empty.dsk rename to demos/lores_escape/empty.dsk diff --git a/demos/demosplash2019/escape.s b/demos/lores_escape/escape.s similarity index 100% rename from demos/demosplash2019/escape.s rename to demos/lores_escape/escape.s diff --git a/demos/demosplash2019/font.s b/demos/lores_escape/font.s similarity index 100% rename from demos/demosplash2019/font.s rename to demos/lores_escape/font.s diff --git a/demos/demosplash2019/generator/Makefile b/demos/lores_escape/generator/Makefile similarity index 91% rename from demos/demosplash2019/generator/Makefile rename to demos/lores_escape/generator/Makefile index 2daff0c4..5916c57a 100644 --- a/demos/demosplash2019/generator/Makefile +++ b/demos/lores_escape/generator/Makefile @@ -23,4 +23,4 @@ offsets2.o: offsets2.c $(CC) $(CFLAGS) -c offsets2.c clean: - rm -f *.o creator offsets offsets2 + rm -f *~ *.o creator offsets offsets2 diff --git a/demos/demosplash2019/generator/creator.c b/demos/lores_escape/generator/creator.c similarity index 100% rename from demos/demosplash2019/generator/creator.c rename to demos/lores_escape/generator/creator.c diff --git a/demos/demosplash2019/generator/offsets.c b/demos/lores_escape/generator/offsets.c similarity index 100% rename from demos/demosplash2019/generator/offsets.c rename to demos/lores_escape/generator/offsets.c diff --git a/demos/demosplash2019/generator/offsets2.c b/demos/lores_escape/generator/offsets2.c similarity index 100% rename from demos/demosplash2019/generator/offsets2.c rename to demos/lores_escape/generator/offsets2.c diff --git a/demos/demosplash2019/gr_clear_bottom.s b/demos/lores_escape/gr_clear_bottom.s similarity index 100% rename from demos/demosplash2019/gr_clear_bottom.s rename to demos/lores_escape/gr_clear_bottom.s diff --git a/demos/demosplash2019/gr_copy.s b/demos/lores_escape/gr_copy.s similarity index 100% rename from demos/demosplash2019/gr_copy.s rename to demos/lores_escape/gr_copy.s diff --git a/demos/demosplash2019/gr_fast_clear.s b/demos/lores_escape/gr_fast_clear.s similarity index 100% rename from demos/demosplash2019/gr_fast_clear.s rename to demos/lores_escape/gr_fast_clear.s diff --git a/demos/demosplash2019/gr_hlin.s b/demos/lores_escape/gr_hlin.s similarity index 100% rename from demos/demosplash2019/gr_hlin.s rename to demos/lores_escape/gr_hlin.s diff --git a/demos/demosplash2019/gr_offsets.s b/demos/lores_escape/gr_offsets.s similarity index 100% rename from demos/demosplash2019/gr_offsets.s rename to demos/lores_escape/gr_offsets.s diff --git a/demos/demosplash2019/gr_overlay.s b/demos/lores_escape/gr_overlay.s similarity index 100% rename from demos/demosplash2019/gr_overlay.s rename to demos/lores_escape/gr_overlay.s diff --git a/demos/demosplash2019/gr_pageflip.s b/demos/lores_escape/gr_pageflip.s similarity index 100% rename from demos/demosplash2019/gr_pageflip.s rename to demos/lores_escape/gr_pageflip.s diff --git a/demos/demosplash2019/gr_putsprite.s b/demos/lores_escape/gr_putsprite.s similarity index 100% rename from demos/demosplash2019/gr_putsprite.s rename to demos/lores_escape/gr_putsprite.s diff --git a/demos/demosplash2019/gr_putsprite_crop.s b/demos/lores_escape/gr_putsprite_crop.s similarity index 100% rename from demos/demosplash2019/gr_putsprite_crop.s rename to demos/lores_escape/gr_putsprite_crop.s diff --git a/demos/demosplash2019/gr_putsprite_fast.s b/demos/lores_escape/gr_putsprite_fast.s similarity index 100% rename from demos/demosplash2019/gr_putsprite_fast.s rename to demos/lores_escape/gr_putsprite_fast.s diff --git a/demos/demosplash2019/gr_run_sequence.s b/demos/lores_escape/gr_run_sequence.s similarity index 100% rename from demos/demosplash2019/gr_run_sequence.s rename to demos/lores_escape/gr_run_sequence.s diff --git a/demos/demosplash2019/gr_unrle.s b/demos/lores_escape/gr_unrle.s similarity index 100% rename from demos/demosplash2019/gr_unrle.s rename to demos/lores_escape/gr_unrle.s diff --git a/demos/demosplash2019/graphics/book_open/Makefile b/demos/lores_escape/graphics/book_open/Makefile similarity index 100% rename from demos/demosplash2019/graphics/book_open/Makefile rename to demos/lores_escape/graphics/book_open/Makefile diff --git a/demos/demosplash2019/graphics/book_open/book00.png b/demos/lores_escape/graphics/book_open/book00.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book00.png rename to demos/lores_escape/graphics/book_open/book00.png diff --git a/demos/demosplash2019/graphics/book_open/book01.png b/demos/lores_escape/graphics/book_open/book01.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book01.png rename to demos/lores_escape/graphics/book_open/book01.png diff --git a/demos/demosplash2019/graphics/book_open/book02.png b/demos/lores_escape/graphics/book_open/book02.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book02.png rename to demos/lores_escape/graphics/book_open/book02.png diff --git a/demos/demosplash2019/graphics/book_open/book03.png b/demos/lores_escape/graphics/book_open/book03.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book03.png rename to demos/lores_escape/graphics/book_open/book03.png diff --git a/demos/demosplash2019/graphics/book_open/book04.png b/demos/lores_escape/graphics/book_open/book04.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book04.png rename to demos/lores_escape/graphics/book_open/book04.png diff --git a/demos/demosplash2019/graphics/book_open/book05.png b/demos/lores_escape/graphics/book_open/book05.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book05.png rename to demos/lores_escape/graphics/book_open/book05.png diff --git a/demos/demosplash2019/graphics/book_open/book06.png b/demos/lores_escape/graphics/book_open/book06.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book06.png rename to demos/lores_escape/graphics/book_open/book06.png diff --git a/demos/demosplash2019/graphics/book_open/book07.png b/demos/lores_escape/graphics/book_open/book07.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book07.png rename to demos/lores_escape/graphics/book_open/book07.png diff --git a/demos/demosplash2019/graphics/book_open/book08.png b/demos/lores_escape/graphics/book_open/book08.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book08.png rename to demos/lores_escape/graphics/book_open/book08.png diff --git a/demos/demosplash2019/graphics/book_open/book09.png b/demos/lores_escape/graphics/book_open/book09.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book09.png rename to demos/lores_escape/graphics/book_open/book09.png diff --git a/demos/demosplash2019/graphics/book_open/book10.png b/demos/lores_escape/graphics/book_open/book10.png similarity index 100% rename from demos/demosplash2019/graphics/book_open/book10.png rename to demos/lores_escape/graphics/book_open/book10.png diff --git a/demos/demosplash2019/graphics/book_open/book_open.inc b/demos/lores_escape/graphics/book_open/book_open.inc similarity index 100% rename from demos/demosplash2019/graphics/book_open/book_open.inc rename to demos/lores_escape/graphics/book_open/book_open.inc diff --git a/demos/demosplash2019/graphics/sprites/alien.inc b/demos/lores_escape/graphics/sprites/alien.inc similarity index 100% rename from demos/demosplash2019/graphics/sprites/alien.inc rename to demos/lores_escape/graphics/sprites/alien.inc diff --git a/demos/demosplash2019/graphics/sprites/astronaut.inc b/demos/lores_escape/graphics/sprites/astronaut.inc similarity index 100% rename from demos/demosplash2019/graphics/sprites/astronaut.inc rename to demos/lores_escape/graphics/sprites/astronaut.inc diff --git a/demos/demosplash2019/graphics/starbase/Makefile b/demos/lores_escape/graphics/starbase/Makefile similarity index 100% rename from demos/demosplash2019/graphics/starbase/Makefile rename to demos/lores_escape/graphics/starbase/Makefile diff --git a/demos/demosplash2019/graphics/starbase/empty.png b/demos/lores_escape/graphics/starbase/empty.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/empty.png rename to demos/lores_escape/graphics/starbase/empty.png diff --git a/demos/demosplash2019/graphics/starbase/hallway.png b/demos/lores_escape/graphics/starbase/hallway.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/hallway.png rename to demos/lores_escape/graphics/starbase/hallway.png diff --git a/demos/demosplash2019/graphics/starbase/jail.png b/demos/lores_escape/graphics/starbase/jail.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/jail.png rename to demos/lores_escape/graphics/starbase/jail.png diff --git a/demos/demosplash2019/graphics/starbase/ootw_running-20190309-163912.piskel b/demos/lores_escape/graphics/starbase/ootw_running-20190309-163912.piskel similarity index 100% rename from demos/demosplash2019/graphics/starbase/ootw_running-20190309-163912.piskel rename to demos/lores_escape/graphics/starbase/ootw_running-20190309-163912.piskel diff --git a/demos/demosplash2019/graphics/starbase/ship.png b/demos/lores_escape/graphics/starbase/ship.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship.png rename to demos/lores_escape/graphics/starbase/ship.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame0.png b/demos/lores_escape/graphics/starbase/ship_flame0.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame0.png rename to demos/lores_escape/graphics/starbase/ship_flame0.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame1.png b/demos/lores_escape/graphics/starbase/ship_flame1.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame1.png rename to demos/lores_escape/graphics/starbase/ship_flame1.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame2.png b/demos/lores_escape/graphics/starbase/ship_flame2.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame2.png rename to demos/lores_escape/graphics/starbase/ship_flame2.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame3.png b/demos/lores_escape/graphics/starbase/ship_flame3.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame3.png rename to demos/lores_escape/graphics/starbase/ship_flame3.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame4.png b/demos/lores_escape/graphics/starbase/ship_flame4.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame4.png rename to demos/lores_escape/graphics/starbase/ship_flame4.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flame5.png b/demos/lores_escape/graphics/starbase/ship_flame5.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flame5.png rename to demos/lores_escape/graphics/starbase/ship_flame5.png diff --git a/demos/demosplash2019/graphics/starbase/ship_flames.inc b/demos/lores_escape/graphics/starbase/ship_flames.inc similarity index 100% rename from demos/demosplash2019/graphics/starbase/ship_flames.inc rename to demos/lores_escape/graphics/starbase/ship_flames.inc diff --git a/demos/demosplash2019/graphics/starbase/star1.png b/demos/lores_escape/graphics/starbase/star1.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/star1.png rename to demos/lores_escape/graphics/starbase/star1.png diff --git a/demos/demosplash2019/graphics/starbase/star2.png b/demos/lores_escape/graphics/starbase/star2.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/star2.png rename to demos/lores_escape/graphics/starbase/star2.png diff --git a/demos/demosplash2019/graphics/starbase/star3.png b/demos/lores_escape/graphics/starbase/star3.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/star3.png rename to demos/lores_escape/graphics/starbase/star3.png diff --git a/demos/demosplash2019/graphics/starbase/star4.png b/demos/lores_escape/graphics/starbase/star4.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/star4.png rename to demos/lores_escape/graphics/starbase/star4.png diff --git a/demos/demosplash2019/graphics/starbase/star5.png b/demos/lores_escape/graphics/starbase/star5.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/star5.png rename to demos/lores_escape/graphics/starbase/star5.png diff --git a/demos/demosplash2019/graphics/starbase/star_wipe.inc b/demos/lores_escape/graphics/starbase/star_wipe.inc similarity index 100% rename from demos/demosplash2019/graphics/starbase/star_wipe.inc rename to demos/lores_escape/graphics/starbase/star_wipe.inc diff --git a/demos/demosplash2019/graphics/starbase/starbase.inc b/demos/lores_escape/graphics/starbase/starbase.inc similarity index 100% rename from demos/demosplash2019/graphics/starbase/starbase.inc rename to demos/lores_escape/graphics/starbase/starbase.inc diff --git a/demos/demosplash2019/graphics/starbase/window.png b/demos/lores_escape/graphics/starbase/window.png similarity index 100% rename from demos/demosplash2019/graphics/starbase/window.png rename to demos/lores_escape/graphics/starbase/window.png diff --git a/demos/demosplash2019/hardware.inc b/demos/lores_escape/hardware.inc similarity index 100% rename from demos/demosplash2019/hardware.inc rename to demos/lores_escape/hardware.inc diff --git a/demos/demosplash2019/hello.bas b/demos/lores_escape/hello.bas similarity index 100% rename from demos/demosplash2019/hello.bas rename to demos/lores_escape/hello.bas diff --git a/demos/demosplash2019/interrupt_handler.s b/demos/lores_escape/interrupt_handler.s similarity index 100% rename from demos/demosplash2019/interrupt_handler.s rename to demos/lores_escape/interrupt_handler.s diff --git a/demos/demosplash2019/k_40_48d.inc b/demos/lores_escape/k_40_48d.inc similarity index 100% rename from demos/demosplash2019/k_40_48d.inc rename to demos/lores_escape/k_40_48d.inc diff --git a/demos/demosplash2019/k_40_48d.png b/demos/lores_escape/k_40_48d.png similarity index 100% rename from demos/demosplash2019/k_40_48d.png rename to demos/lores_escape/k_40_48d.png diff --git a/demos/demosplash2019/loader.s b/demos/lores_escape/loader.s similarity index 100% rename from demos/demosplash2019/loader.s rename to demos/lores_escape/loader.s diff --git a/demos/demosplash2019/missing.s b/demos/lores_escape/missing.s similarity index 100% rename from demos/demosplash2019/missing.s rename to demos/lores_escape/missing.s diff --git a/demos/demosplash2019/movement_table.s b/demos/lores_escape/movement_table.s similarity index 100% rename from demos/demosplash2019/movement_table.s rename to demos/lores_escape/movement_table.s diff --git a/demos/demosplash2019/offsets_table.s b/demos/lores_escape/offsets_table.s similarity index 100% rename from demos/demosplash2019/offsets_table.s rename to demos/lores_escape/offsets_table.s diff --git a/demos/demosplash2019/offsets_table2.s b/demos/lores_escape/offsets_table2.s similarity index 100% rename from demos/demosplash2019/offsets_table2.s rename to demos/lores_escape/offsets_table2.s diff --git a/demos/demosplash2019/open_book.s b/demos/lores_escape/open_book.s similarity index 100% rename from demos/demosplash2019/open_book.s rename to demos/lores_escape/open_book.s diff --git a/demos/demosplash2019/pt3_lib_core.s b/demos/lores_escape/pt3_lib_core.s similarity index 100% rename from demos/demosplash2019/pt3_lib_core.s rename to demos/lores_escape/pt3_lib_core.s diff --git a/demos/demosplash2019/pt3_lib_init.s b/demos/lores_escape/pt3_lib_init.s similarity index 100% rename from demos/demosplash2019/pt3_lib_init.s rename to demos/lores_escape/pt3_lib_init.s diff --git a/demos/demosplash2019/pt3_lib_irq_handler.s b/demos/lores_escape/pt3_lib_irq_handler.s similarity index 100% rename from demos/demosplash2019/pt3_lib_irq_handler.s rename to demos/lores_escape/pt3_lib_irq_handler.s diff --git a/demos/demosplash2019/pt3_lib_mockingboard.s b/demos/lores_escape/pt3_lib_mockingboard.s similarity index 100% rename from demos/demosplash2019/pt3_lib_mockingboard.s rename to demos/lores_escape/pt3_lib_mockingboard.s diff --git a/demos/demosplash2019/pt3_lib_play_frame.s b/demos/lores_escape/pt3_lib_play_frame.s similarity index 100% rename from demos/demosplash2019/pt3_lib_play_frame.s rename to demos/lores_escape/pt3_lib_play_frame.s diff --git a/demos/demosplash2019/pt3_lib_write_frame.s b/demos/lores_escape/pt3_lib_write_frame.s similarity index 100% rename from demos/demosplash2019/pt3_lib_write_frame.s rename to demos/lores_escape/pt3_lib_write_frame.s diff --git a/demos/demosplash2019/pt3_lib_write_lc.s b/demos/lores_escape/pt3_lib_write_lc.s similarity index 100% rename from demos/demosplash2019/pt3_lib_write_lc.s rename to demos/lores_escape/pt3_lib_write_lc.s diff --git a/demos/demosplash2019/random.data b/demos/lores_escape/random.data similarity index 100% rename from demos/demosplash2019/random.data rename to demos/lores_escape/random.data diff --git a/demos/demosplash2019/reading.s b/demos/lores_escape/reading.s similarity index 100% rename from demos/demosplash2019/reading.s rename to demos/lores_escape/reading.s diff --git a/demos/demosplash2019/sprites_screen.s b/demos/lores_escape/sprites_screen.s similarity index 100% rename from demos/demosplash2019/sprites_screen.s rename to demos/lores_escape/sprites_screen.s diff --git a/demos/demosplash2019/sprites_table.s b/demos/lores_escape/sprites_table.s similarity index 100% rename from demos/demosplash2019/sprites_table.s rename to demos/lores_escape/sprites_table.s diff --git a/demos/demosplash2019/starbase.s b/demos/lores_escape/starbase.s similarity index 100% rename from demos/demosplash2019/starbase.s rename to demos/lores_escape/starbase.s diff --git a/demos/demosplash2019/starbase_action.s b/demos/lores_escape/starbase_action.s similarity index 100% rename from demos/demosplash2019/starbase_action.s rename to demos/lores_escape/starbase_action.s diff --git a/demos/demosplash2019/starbase_alien.s b/demos/lores_escape/starbase_alien.s similarity index 100% rename from demos/demosplash2019/starbase_alien.s rename to demos/lores_escape/starbase_alien.s diff --git a/demos/demosplash2019/starbase_alien_laser.s b/demos/lores_escape/starbase_alien_laser.s similarity index 100% rename from demos/demosplash2019/starbase_alien_laser.s rename to demos/lores_escape/starbase_alien_laser.s diff --git a/demos/demosplash2019/starbase_astronaut.s b/demos/lores_escape/starbase_astronaut.s similarity index 100% rename from demos/demosplash2019/starbase_astronaut.s rename to demos/lores_escape/starbase_astronaut.s diff --git a/demos/demosplash2019/starbase_blast.s b/demos/lores_escape/starbase_blast.s similarity index 100% rename from demos/demosplash2019/starbase_blast.s rename to demos/lores_escape/starbase_blast.s diff --git a/demos/demosplash2019/starbase_charger.s b/demos/lores_escape/starbase_charger.s similarity index 100% rename from demos/demosplash2019/starbase_charger.s rename to demos/lores_escape/starbase_charger.s diff --git a/demos/demosplash2019/starbase_collision.s b/demos/lores_escape/starbase_collision.s similarity index 100% rename from demos/demosplash2019/starbase_collision.s rename to demos/lores_escape/starbase_collision.s diff --git a/demos/demosplash2019/starbase_doors.s b/demos/lores_escape/starbase_doors.s similarity index 100% rename from demos/demosplash2019/starbase_doors.s rename to demos/lores_escape/starbase_doors.s diff --git a/demos/demosplash2019/starbase_friend.s b/demos/lores_escape/starbase_friend.s similarity index 100% rename from demos/demosplash2019/starbase_friend.s rename to demos/lores_escape/starbase_friend.s diff --git a/demos/demosplash2019/starbase_gun.s b/demos/lores_escape/starbase_gun.s similarity index 100% rename from demos/demosplash2019/starbase_gun.s rename to demos/lores_escape/starbase_gun.s diff --git a/demos/demosplash2019/starbase_keyboard.s b/demos/lores_escape/starbase_keyboard.s similarity index 100% rename from demos/demosplash2019/starbase_keyboard.s rename to demos/lores_escape/starbase_keyboard.s diff --git a/demos/demosplash2019/starbase_laser.s b/demos/lores_escape/starbase_laser.s similarity index 100% rename from demos/demosplash2019/starbase_laser.s rename to demos/lores_escape/starbase_laser.s diff --git a/demos/demosplash2019/starbase_shield.s b/demos/lores_escape/starbase_shield.s similarity index 100% rename from demos/demosplash2019/starbase_shield.s rename to demos/lores_escape/starbase_shield.s diff --git a/demos/demosplash2019/text_print.s b/demos/lores_escape/text_print.s similarity index 100% rename from demos/demosplash2019/text_print.s rename to demos/lores_escape/text_print.s diff --git a/demos/demosplash2019/vapor_lock.s b/demos/lores_escape/vapor_lock.s similarity index 100% rename from demos/demosplash2019/vapor_lock.s rename to demos/lores_escape/vapor_lock.s diff --git a/demos/demosplash2019/zp.bug b/demos/lores_escape/zp.bug similarity index 100% rename from demos/demosplash2019/zp.bug rename to demos/lores_escape/zp.bug diff --git a/demos/demosplash2019/zp.inc b/demos/lores_escape/zp.inc similarity index 100% rename from demos/demosplash2019/zp.inc rename to demos/lores_escape/zp.inc diff --git a/demos/megademo/Makefile b/demos/megademo/Makefile index b7816c17..153fdeb6 100644 --- a/demos/megademo/Makefile +++ b/demos/megademo/Makefile @@ -1,9 +1,11 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_RLE = ../gr-utils/png2rle +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_RLE = ../../utils/gr-utils/png2rle +PNG_TO_HGR = ../../utils/hgr-utils/png2hgr +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft all: megademo.dsk @@ -25,7 +27,7 @@ megademo.dsk: MEGADEMO MEGALOAD c64.img MUSIC.D000X2 MUSIC.D000 MUSIC.1000 #### MEGADEMO: megademo.o - ld65 -o MEGADEMO megademo.o -C ../linker_scripts/apple2_4000.inc + ld65 -o MEGADEMO megademo.o -C ../../linker_scripts/apple2_4000.inc megademo.o: megademo.s \ zp.inc hardware.inc \ @@ -52,7 +54,7 @@ megademo.o: megademo.s \ #### MEGALOAD: megaload.o - ld65 -o MEGALOAD megaload.o -C ../linker_scripts/apple2_800.inc + ld65 -o MEGALOAD megaload.o -C ../../linker_scripts/apple2_800.inc megaload.o: megaload.s ca65 -o megaload.o megaload.s -l megaload.lst @@ -60,7 +62,7 @@ megaload.o: megaload.s #### MUSIC.1000: music_1000.o - ld65 -o MUSIC.1000 music_1000.o -C ../linker_scripts/apple2_1000.inc + ld65 -o MUSIC.1000 music_1000.o -C ../../linker_scripts/apple2_1000.inc music_1000.o: music_1000.s mockingboard.s ca65 -o music_1000.o music_1000.s -l music_1000.lst @@ -68,7 +70,7 @@ music_1000.o: music_1000.s mockingboard.s #### MUSIC.D000: music_d000.o - ld65 -o MUSIC.D000 music_d000.o -C ../linker_scripts/apple2_d000.inc + ld65 -o MUSIC.D000 music_d000.o -C ../../linker_scripts/apple2_d000.inc music_d000.o: music_d000.s ca65 -o music_d000.o music_d000.s @@ -76,7 +78,7 @@ music_d000.o: music_d000.s #### MUSIC.D000X2: music_2nd_d000.o - ld65 -o MUSIC.D000X2 music_2nd_d000.o -C ../linker_scripts/apple2_d000.inc + ld65 -o MUSIC.D000X2 music_2nd_d000.o -C ../../linker_scripts/apple2_d000.inc music_2nd_d000.o: music_2nd_d000.s ca65 -o music_2nd_d000.o music_2nd_d000.s @@ -104,7 +106,9 @@ starring3.img.lz4: starring3.img lz4 -f -16 starring3.img starring3.img: ./starring_3_hgr.png - ../hgr-utils/png2hgr starring_3_hgr.png > starring3.img + $(PNG_TO_HGR) starring_3_hgr.png > starring3.img + + #### @@ -123,7 +127,7 @@ takeoff.img.lz4: takeoff.img lz4 -f -16 takeoff.img takeoff.img: takeoff_hgr.png - ../hgr-utils/png2hgr takeoff_hgr.png > takeoff.img + $(PNG_TO_HGR) takeoff_hgr.png > takeoff.img #### @@ -171,7 +175,7 @@ c64.img.lz4: c64.img lz4 -f -16 c64.img c64.img: c64_updated.png - ../hgr-utils/png2hgr c64_updated.png > c64.img + $(PNG_TO_HGR) c64_updated.png > c64.img #### @@ -184,4 +188,6 @@ C64C.BIN: c64.bmp clean: rm -f *~ *.o *.lst MEGADEMO MEGALOAD c64.img \ - MUSIC.1000 MUSIC.D000 MUSIC.D000X2 + MUSIC.1000 MUSIC.D000 MUSIC.D000X2 destroy_disk + cd disk && make clean + cd music && make clean diff --git a/demos/megademo/README b/demos/megademo/README index 1bc99a6d..ca89c556 100644 --- a/demos/megademo/README +++ b/demos/megademo/README @@ -1,3 +1,10 @@ +Apple II Cycle Counting Megadmo + +Demosplash 2018 1st place Retro Demo + +by Vince "deater" Weaver, VMW Productions + + Memory Map: diff --git a/demos/megademo/disk/Makefile b/demos/megademo/disk/Makefile index f68adaef..8f43dc66 100644 --- a/demos/megademo/disk/Makefile +++ b/demos/megademo/disk/Makefile @@ -1,9 +1,9 @@ -include ../../Makefile.inc +include ../../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_RLE = ../gr-utils/png2rle +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_RLE = ../../utils/gr-utils/png2rle all: FASTLD6 RTS @@ -19,7 +19,7 @@ all: FASTLD6 RTS #### FASTLD6: fastld6.o - ld65 -o FASTLD6 fastld6.o -C ../../linker_scripts/apple2_800.inc + ld65 -o FASTLD6 fastld6.o -C ../../../linker_scripts/apple2_800.inc fastld6.o: fastld6.s ca65 -o fastld6.o fastld6.s -l fastld6.lst @@ -27,7 +27,7 @@ fastld6.o: fastld6.s #### RTS: rts.o - ld65 -o RTS rts.o -C ../../linker_scripts/apple2_800.inc + ld65 -o RTS rts.o -C ../../../linker_scripts/apple2_800.inc rts.o: rts.s ca65 -o rts.o rts.s -l rts.lst diff --git a/demos/mode7_demo/Makefile b/demos/mode7_demo/Makefile index 7b25dfcf..c0811747 100644 --- a/demos/mode7_demo/Makefile +++ b/demos/mode7_demo/Makefile @@ -1,8 +1,10 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG2GR = ../../utils/gr-utils/png2gr +PNG2RLE = ../../utils/gr-utils/png2rle +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG2GR = ../gr-utils/png2gr -PNG2RLE = ../gr-utils/png2rle all: mode7_demo.dsk @@ -18,12 +20,12 @@ mode7_demo.dsk: $(DOS33) MODE7_DEMO MODE7_DEMO_C HELLO #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO ### MODE7_DEMO_C: mode7_decompress.o - ld65 -o MODE7_DEMO_C mode7_decompress.o -C ../linker_scripts/apple2_2000.inc + ld65 -o MODE7_DEMO_C mode7_decompress.o -C ../../linker_scripts/apple2_2000.inc mode7_decompress.o: mode7_decompress.s MODE7_DEMO.lz4 \ zp.inc @@ -36,7 +38,7 @@ MODE7_DEMO.lz4: MODE7_DEMO ### MODE7_DEMO: mode7_demo.o - ld65 -o MODE7_DEMO mode7_demo.o -C ../linker_scripts/apple2_4000.inc + ld65 -o MODE7_DEMO mode7_demo.o -C ../../linker_scripts/apple2_4000.inc mode7_demo.o: mode7_demo.s mode7_demo_backgrounds.inc sprites.inc \ a2.scrolltext deater.scrolltext wave.krg \ @@ -53,7 +55,7 @@ mode7_demo.o: mode7_demo.s mode7_demo_backgrounds.inc sprites.inc \ ca65 -o mode7_demo.o mode7_demo.s -l mode7_demo.lst $(PNG2RLE): - cd ../gr-utils && make + cd ../../utils/gr-utils && make mode7_demo_backgrounds.inc: $(PNG2RLE) \ @@ -62,5 +64,5 @@ mode7_demo_backgrounds.inc: $(PNG2RLE) \ clean: - rm -f *~ *.o MODE7_DEMO MODE7_DEMO_C MODE7_DEMO.lz4 *.lst + rm -f *~ *.o MODE7_DEMO MODE7_DEMO_C MODE7_DEMO.lz4 *.lst HELLO cd docs && make clean diff --git a/demos/seasons/Makefile b/demos/seasons/Makefile index 1b905d8b..754277b5 100644 --- a/demos/seasons/Makefile +++ b/demos/seasons/Makefile @@ -1,10 +1,12 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +PNG2RLE = ../../utils/gr-utils/png2rle +B2D = ../../utils/bmp2dhr/b2d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -PNG2RLE = ../gr-utils/png2rle -B2D = ../bmp2dhr/b2d all: seasons.dsk @@ -16,15 +18,15 @@ seasons.dsk: HELLO SEASONS AUTUMN SEASONS: seasons.o -# ld65 -o SEASONS seasons.o -C ../linker_scripts/apple2_1000.inc - ld65 -o SEASONS seasons.o -C ../linker_scripts/apple2_50_zp.inc +# ld65 -o SEASONS seasons.o -C ../../linker_scripts/apple2_1000.inc + ld65 -o SEASONS seasons.o -C ../../linker_scripts/apple2_50_zp.inc seasons.o: seasons.s ca65 -o seasons.o seasons.s -l seasons.lst AUTUMN: autumn.o - ld65 -o AUTUMN autumn.o -C ../linker_scripts/apple2_300.inc + ld65 -o AUTUMN autumn.o -C ../../linker_scripts/apple2_300.inc autumn.o: autumn.s ca65 -o autumn.o autumn.s -l autumn.lst @@ -34,7 +36,7 @@ autumn.o: autumn.s HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO #### diff --git a/demos/shapetable_party/Makefile b/demos/shapetable_party/Makefile index f7d0b411..b7a0162f 100644 --- a/demos/shapetable_party/Makefile +++ b/demos/shapetable_party/Makefile @@ -1,10 +1,12 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +PNG2RLE = ../../utils/gr-utils/png2rle +B2D = ../../utils/bmp2dhr/b2d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -PNG2RLE = ../gr-utils/png2rle -B2D = ../bmp2dhr/b2d all: dsr_shape.dsk @@ -17,7 +19,7 @@ dsr_shape.dsk: HELLO DSRSHAPE DSRSHAPE: dsr_shape.o - ld65 -o DSRSHAPE dsr_shape.o -C ../linker_scripts/apple2_1000.inc + ld65 -o DSRSHAPE dsr_shape.o -C ../../linker_scripts/apple2_1000.inc dsr_shape.o: dsr_shape.s ca65 -o dsr_shape.o dsr_shape.s -l dsr_shape.lst @@ -25,12 +27,12 @@ dsr_shape.o: dsr_shape.s ### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO ### DSR.BAS: dsr.bas - ../asoft_basic-utils/tokenize_asoft < dsr.bas > DSR.BAS + $(TOKENIZE) < dsr.bas > DSR.BAS #### diff --git a/demos/streams/Makefile b/demos/streams/Makefile deleted file mode 100644 index e4727317..00000000 --- a/demos/streams/Makefile +++ /dev/null @@ -1,75 +0,0 @@ -include ../Makefile.inc - -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x48D = ../gr-utils/png_to_40x48d - -all: xmas2019.dsk sine_table - -xmas2019.dsk: SNOW TREE XMAS2019 HELLO - cp empty.dsk xmas2019.dsk - $(DOS33) -y xmas2019.dsk BSAVE -a 0x1000 XMAS2019 - $(DOS33) -y xmas2019.dsk BSAVE -a 0x1000 SNOW - $(DOS33) -y xmas2019.dsk BSAVE -a 0x1000 TREE - $(DOS33) -y xmas2019.dsk SAVE A HELLO - -#### - -TREE: tree.o - ld65 -o TREE tree.o -C ../linker_scripts/apple2_1000.inc - -tree.o: tree.s -#gr_copy.s random16.s fw.s hgr.s delay_a.s \ -# vapor_lock.s gr_hline.s state_machine.s move_letters.s \ -# background_final.inc - ca65 -o tree.o tree.s -l tree.lst - -#### - -SNOW: snow.o - ld65 -o SNOW snow.o -C ../linker_scripts/apple2_1000.inc - -snow.o: snow.s -#gr_copy.s random16.s fw.s hgr.s delay_a.s \ -# vapor_lock.s gr_hline.s state_machine.s move_letters.s \ -# background_final.inc - ca65 -o snow.o snow.s -l snow.lst - -#### - -XMAS2019: xmas2019.o - ld65 -o XMAS2019 xmas2019.o -C ../linker_scripts/apple2_1000.inc - -xmas2019.o: xmas2019.s \ - delay_a.s vapor_lock.s -#gr_hline.s state_machine.s move_letters.s - ca65 -o xmas2019.o xmas2019.s -l xmas2019.lst - - - -#background_final.inc: background_final.png -# $(PNG_TO_40x48D) asm background_final.png bg_final > background_final.inc - - -#### - -FIREWORKS.BAS: fireworks.bas - ../asoft_basic-utils/tokenize_asoft < fireworks.bas > FIREWORKS.BAS - -#### - -HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO - -#### - -sine_table: sine_table.o - $(CC) -o sine_table sine_table.o -lm - -sine_table.o: sine_table.c - $(CC) -c sine_table.c - -#### - -clean: - rm -f *~ *.o *.lst FIREWORKS.BAS diff --git a/demos/streams/snow.s b/demos/streams/snow.s deleted file mode 100644 index 979745f5..00000000 --- a/demos/streams/snow.s +++ /dev/null @@ -1,269 +0,0 @@ -; Display falling snow - -; by deater (Vince Weaver) - -; Zero Page -CH = $24 -CV = $25 -GBASL = $26 -GBASH = $27 -BASL = $28 -BASH = $29 - -SEEDL = $4E -SEEDH = $4F - -HGR_COLOR = $E4 -SNOWX = $F0 -TEMPY = $F1 - -HGR = $F3E2 - - -NUMFLAKES = 10 - - -.include "hardware.inc" - - - ;================================== - ;================================== - - jsr HGR - bit FULLGR - - - ;================================== - ; init snow - ;================================== - - ldx #NUMFLAKES-1 -snow_init_loop: - - jsr random16 - - lda SEEDL - and #$3f - sta snow_x,X - - lda SEEDH - and #$7f - sta snow_y,X - - dex - bpl snow_init_loop - - -display_loop: - - ; 0 4 8 c 10 14 18 1c - ; 0 1 2 3 4 5 6 7 - - ;========================= - ; erase old snow - ;========================= - ; 2 + (35+29+7)*NUMFLAKES - 1 - ; 1 +71*NUMFLAKES = 711 - - ldx #0 ; 2 -erase_loop: - lda snow_y,X ; get Y ; 4+ - lsr ; 2 - lsr ; 2 - lsr ; divide by 8 ; 2 - sta TEMPY ; 3 - lda snow_x,X ; 4+ - tay ; 2 - lda div_7_q,Y ; 4+ - ldy TEMPY ; 3 - clc ; 2 - adc hgr_offsets_l,Y ; 4+ - sta GBASL ; 3 - adc #30 - sta BASL - ;============= - ; 35 - - lda snow_y,X ; 4+ - asl ; 2 - asl ; 2 - and #$1f ; 2 - clc ; 2 - adc hgr_offsets_h,Y ; 4 - sta GBASH ; 3 - sta BASH - lda #0 ; 2 - tay ; 2 - sta (GBASL),Y ; 6 - sta (BASL),Y - - ;============ - ; 29 - - inx ; 2 - cpx #NUMFLAKES ; 2 - bne erase_loop ; 3 - ;============ - ; 7 - - ; -1 - - ;========================== - ; move snow - ; - ; 2 + - - ldx #0 ; 2 -move_snow: - lda snow_y,X ; 4+ - cmp #160 ; 2 - bne just_inc ; 3 - ; -1 - - ; out of bounds, get new - lda #30 ; 2 - sta snow_y,X ; 5 - lda SEEDH - and #$3f - sta snow_x,X - jmp done_inc ; 3 - - -just_inc: - - jsr random16 ; 6+42 - lda SEEDL ; 3 - and #$f ; 2 - - beq snow_left ; 3 - ; -1 - cmp #$1 ; 2 - beq snow_right ; 3 - ; -1 - - inc snow_y,X ; 6 - - jmp snow_no ; 3 - -snow_right: - inc snow_x,X ; 6 - jmp snow_no ; 3 - -snow_left: - dec snow_x,X ; 6 -snow_no: - lda snow_x,X - and #$3f - sta snow_x,X - -done_inc: - inx ; 2 - cpx #NUMFLAKES ; 2 - bne move_snow ; 3 - ; -1 - - ;========================= - ; draw new snow - ;========================= - ; 2+ (35+22+19+7)*NUMFLAKES -1 - ; 1+83*NUMFLAKES = 831 - - ldx #0 ; 2 -draw_loop: - lda snow_y,X ; 4+ - lsr ; 2 - lsr ; 2 - lsr ; 2 - sta TEMPY ; 3 - lda snow_x,X ; 4+ - tay ; 2 - lda div_7_q,Y ; 4+ - ldy TEMPY ; 3 - clc ; 2 - adc hgr_offsets_l,Y ; 4+ - sta GBASL ; 3 - adc #32 - sta BASL - ;=========== - ; 35 - - lda snow_y,X ; 4+ - asl ; 2 - asl ; 2 - and #$1f ; 2 - clc ; 2 - adc hgr_offsets_h,Y ; 4+ - sta GBASH ; 3 - sta BASH - ;============= - ; 19 - - ldy snow_x,X ; 4+ - lda div_7_r,Y ; 4+ - tay ; 2 - lda pixel_lookup,Y ; 4+ - - ldy #0 ; 2 - sta (GBASL),Y ; 6 - sta (BASL),Y - ;============= - ; 22 - - inx ; 2 - cpx #NUMFLAKES ; 2 - bne draw_loop ; 3 - ;============= - ; 7 - - ; -1 - lda #100 - jsr WAIT - - jmp display_loop ; 3 - - -snow_x: - .byte 0,0,0,0,0,0,0,0,0,0 - -snow_y: - .byte 0,0,0,0,0,0,0,0,0,0 - -hgr_offsets_h: -.byte >$2000,>$2080,>$2100,>$2180,>$2200,>$2280,>$2300,>$2380 -.byte >$2028,>$20A8,>$2128,>$21A8,>$2228,>$22A8,>$2328,>$23A8 -.byte >$2050,>$20D0,>$2150,>$21D0,>$2250,>$22D0,>$2350,>$23D0 - -hgr_offsets_l: -.byte <$2000,<$2080,<$2100,<$2180,<$2200,<$2280,<$2300,<$2380 -.byte <$2028,<$20A8,<$2128,<$21A8,<$2228,<$22A8,<$2328,<$23A8 -.byte <$2050,<$20D0,<$2150,<$21D0,<$2250,<$22D0,<$2350,<$23D0 - - -div_7_q: - .byte 0,0,0,0,0,0,0 ; 0..6 - .byte 1,1,1,1,1,1,1 ; 7..13 - .byte 2,2,2,2,2,2,2 ; 14..20 - .byte 3,3,3,3,3,3,3 ; 21..27 - .byte 4,4,4,4,4,4,4 ; 28..34 - .byte 5,5,5,5,5,5,5 ; 35..41 - .byte 6,6,6,6,6,6,6 ; 42..48 - .byte 7,7,7,7,7,7,7 ; 49..55 - .byte 8,8,8,8,8,8,8 ; 56..62 - .byte 9 ; 63 - -div_7_r: - .byte 0,1,2,3,4,5,6 ; 0..6 - .byte 0,1,2,3,4,5,6 ; 7..13 - .byte 0,1,2,3,4,5,6 ; 14..20 - .byte 0,1,2,3,4,5,6 ; 21..27 - .byte 0,1,2,3,4,5,6 ; 28..34 - .byte 0,1,2,3,4,5,6 ; 35..41 - .byte 0,1,2,3,4,5,6 ; 42..48 - .byte 0,1,2,3,4,5,6 ; 49..55 - .byte 0,1,2,3,4,5,6 ; 56..62 - .byte 0 ; 63 - -pixel_lookup: - .byte $01,$02,$04,$08,$10,$20,$40 - -.include "random16.s" diff --git a/demos/vertical_scroll/Makefile b/demos/vertical_scroll/Makefile index 8bd0947f..aa614757 100644 --- a/demos/vertical_scroll/Makefile +++ b/demos/vertical_scroll/Makefile @@ -1,9 +1,11 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +PNG2RLE = ../../utils/gr-utils/png2rle +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -PNG2RLE = ../gr-utils/png2rle all: scroller.dsk @@ -15,12 +17,12 @@ scroller.dsk: HELLO SCROLLER ### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO #### SCROLLER: scroller.o - ld65 -o SCROLLER scroller.o -C ../linker_scripts/apple2_1000.inc + ld65 -o SCROLLER scroller.o -C ../../linker_scripts/apple2_1000.inc scroller.o: scroller.s gr_copy.s gr_unrle.s gr_unrle_large.s \ gr_copy_large.s \ @@ -43,4 +45,4 @@ spaceman2.inc: spaceman_big2.png #### clean: - rm -f *~ *.o *.lst SCROLLER + rm -f *~ *.o *.lst SCROLLER HELLO diff --git a/demos/vertical_scroll/scroller.s b/demos/vertical_scroll/scroller.s index 6b9cba50..55f26c9b 100644 --- a/demos/vertical_scroll/scroller.s +++ b/demos/vertical_scroll/scroller.s @@ -204,4 +204,4 @@ wait_until_keypress: PT3_LOC = song .align $100 song: -.incbin "../pt3_player/music/DF.PT3" +.incbin "../../music/pt3_player/music/DF.PT3" diff --git a/demos/xmas_2018/Makefile b/demos/xmas_2018/Makefile index ccda0bb6..67861520 100644 --- a/demos/xmas_2018/Makefile +++ b/demos/xmas_2018/Makefile @@ -1,9 +1,9 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_RLE = ../gr-utils/png2rle +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_RLE = ../../utils/gr-utils/png2rle all: xmas2018.dsk @@ -20,7 +20,7 @@ xmas2018.dsk: HELLO XMAS2018 wreath.img.lz4t ball.img.lz4 merry.img.lz4t MUSIC.l #### XMAS2018: xmas2018.o - ld65 -o XMAS2018 xmas2018.o -C ../linker_scripts/apple2_c00.inc + ld65 -o XMAS2018 xmas2018.o -C ../../linker_scripts/apple2_c00.inc xmas2018.o: xmas2018.s \ zp.inc hardware.inc \ @@ -48,7 +48,7 @@ MUSIC.lz4: MUSIC lz4 -16 -f MUSIC MUSIC: music.o - ld65 -o MUSIC music.o -C ../linker_scripts/apple2_1000.inc + ld65 -o MUSIC music.o -C ../../linker_scripts/apple2_1000.inc music.o: music.s ca65 -o music.o music.s -l music.lst @@ -56,7 +56,7 @@ music.o: music.s #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO #### @@ -97,5 +97,5 @@ BALLC.BIN: ball.bmp $(B2D) ball.bmp HGR -d clean: - rm -f *~ *.o *.lst XMAS2018 wreath.img ball.img BALLC.BIN WREATHC.BIN + rm -f *~ *.o *.lst XMAS2018 wreath.img ball.img BALLC.BIN WREATHC.BIN HELLO diff --git a/demos/xmas_2018/README b/demos/xmas_2018/README index 1d7025ab..460187ae 100644 --- a/demos/xmas_2018/README +++ b/demos/xmas_2018/README @@ -1,3 +1,7 @@ +XMAS2018 -- hgr advent/xmas demo + + sorry for the music quality + total size: Demo code: 5k MUSIC.lz4: 1k diff --git a/demos/xmas_2019/Makefile b/demos/xmas_2019/Makefile index 745c36d3..341ca212 100644 --- a/demos/xmas_2019/Makefile +++ b/demos/xmas_2019/Makefile @@ -1,9 +1,12 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft + -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x48D = ../gr-utils/png_to_40x48d -PNG_TO_40x96 = ../gr-utils/png_to_40x96 all: xmas2019.dsk sine_table @@ -19,7 +22,7 @@ xmas2019.dsk: SNOW TREE XMAS2019 XMAS2019_LZ4 LOADER HELLO #### TREE: tree.o - ld65 -o TREE tree.o -C ../linker_scripts/apple2_1000.inc + ld65 -o TREE tree.o -C ../../linker_scripts/apple2_1000.inc tree.o: tree.s #gr_copy.s random16.s fw.s hgr.s delay_a.s \ @@ -30,7 +33,7 @@ tree.o: tree.s #### SNOW: snow.o - ld65 -o SNOW snow.o -C ../linker_scripts/apple2_1000.inc + ld65 -o SNOW snow.o -C ../../linker_scripts/apple2_1000.inc snow.o: snow.s #gr_copy.s random16.s fw.s hgr.s delay_a.s \ @@ -41,7 +44,7 @@ snow.o: snow.s #### LOADER: loader.o - ld65 -o LOADER loader.o -C ../linker_scripts/apple2_800.inc + ld65 -o LOADER loader.o -C ../../linker_scripts/apple2_800.inc loader.o: loader.s ca65 -o loader.o loader.s -l loader.lst @@ -50,7 +53,7 @@ loader.o: loader.s #### XMAS2019: xmas2019.o - ld65 -o XMAS2019 xmas2019.o -C ../linker_scripts/apple2_4000.inc + ld65 -o XMAS2019 xmas2019.o -C ../../linker_scripts/apple2_4000.inc xmas2019.o: xmas2019.s \ delay_a.s vapor_lock.s message.inc gr_unrle.s sines.inc \ @@ -72,7 +75,7 @@ message.inc: message.png #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO #### @@ -85,4 +88,4 @@ sine_table.o: sine_table.c #### clean: - rm -f *~ *.o *.lst XMAS2019 LOADER + rm -f *~ *.o *.lst XMAS2019 LOADER HELLO sine_table diff --git a/demos/xmas_2019/README b/demos/xmas_2019/README new file mode 100644 index 00000000..7e68c985 --- /dev/null +++ b/demos/xmas_2019/README @@ -0,0 +1 @@ +Xmas 2019 Apple II demo -- vapor-lock/cycle counted demo with mockingboard music diff --git a/demos/galaxy/HELLO b/graphics/galaxy/HELLO similarity index 100% rename from demos/galaxy/HELLO rename to graphics/galaxy/HELLO diff --git a/demos/galaxy/Makefile b/graphics/galaxy/Makefile similarity index 53% rename from demos/galaxy/Makefile rename to graphics/galaxy/Makefile index 1c6af93e..c10c1476 100644 --- a/demos/galaxy/Makefile +++ b/graphics/galaxy/Makefile @@ -1,8 +1,10 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x48D = ../gr-utils/png_to_40x48d all: galaxy.dsk @@ -16,18 +18,18 @@ galaxy.dsk: GALAXY_GR GALAXY_HGR HELLO ######## GALAXY_GR: galaxy_gr.bas - ../asoft_basic-utils/tokenize_asoft < galaxy_gr.bas > GALAXY_GR + $(TOKENIZE) < galaxy_gr.bas > GALAXY_GR ######## GALAXY_HGR: galaxy_hgr.bas - ../asoft_basic-utils/tokenize_asoft < galaxy_hgr.bas > GALAXY_HGR + $(TOKENIZE) < galaxy_hgr.bas > GALAXY_HGR #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO clean: diff --git a/demos/galaxy/README b/graphics/galaxy/README similarity index 100% rename from demos/galaxy/README rename to graphics/galaxy/README diff --git a/demos/galaxy/empty.dsk b/graphics/galaxy/empty.dsk similarity index 100% rename from demos/galaxy/empty.dsk rename to graphics/galaxy/empty.dsk diff --git a/demos/galaxy/galaxy.dsk b/graphics/galaxy/galaxy.dsk similarity index 100% rename from demos/galaxy/galaxy.dsk rename to graphics/galaxy/galaxy.dsk diff --git a/demos/galaxy/galaxy2.bas b/graphics/galaxy/galaxy2.bas similarity index 100% rename from demos/galaxy/galaxy2.bas rename to graphics/galaxy/galaxy2.bas diff --git a/demos/galaxy/galaxy_cool.bas b/graphics/galaxy/galaxy_cool.bas similarity index 100% rename from demos/galaxy/galaxy_cool.bas rename to graphics/galaxy/galaxy_cool.bas diff --git a/demos/galaxy/galaxy_gr.bas b/graphics/galaxy/galaxy_gr.bas similarity index 100% rename from demos/galaxy/galaxy_gr.bas rename to graphics/galaxy/galaxy_gr.bas diff --git a/demos/galaxy/galaxy_hgr.bas b/graphics/galaxy/galaxy_hgr.bas similarity index 100% rename from demos/galaxy/galaxy_hgr.bas rename to graphics/galaxy/galaxy_hgr.bas diff --git a/demos/galaxy/hello.bas b/graphics/galaxy/hello.bas similarity index 100% rename from demos/galaxy/hello.bas rename to graphics/galaxy/hello.bas diff --git a/demos/galaxy/test.c b/graphics/galaxy/test.c similarity index 100% rename from demos/galaxy/test.c rename to graphics/galaxy/test.c diff --git a/demos/mode7/Makefile b/graphics/gr/mode7/Makefile similarity index 59% rename from demos/mode7/Makefile rename to graphics/gr/mode7/Makefile index 6b27db7e..af7153b9 100644 --- a/demos/mode7/Makefile +++ b/graphics/gr/mode7/Makefile @@ -1,13 +1,15 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG2GR = ../../utils/gr-utils/png2gr +PNG2RLE = ../../utils/gr-utils/png2rle +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -PNG2GR = ../gr-utils/png2gr -PNG2RLE = ../gr-utils/png2rle all: mode7.dsk scroller background $(DOS33): - cd ../dos33fs-utils && make + cd ../../utils/dos33fs-utils && make mode7.dsk: $(DOS33) MODE7_ISLAND MODE7_CHECKERBOARD MODE7_RAINBOW \ PLOT_TEST RASTERBARS SCROLL_DEMO SKY_DEMO \ @@ -32,14 +34,14 @@ MODE7_ISLAND: mode7_island.o mode7_island.o: mode7.s island_lookup.s island_map.inc \ zp.inc sprites.inc \ - ../asm_routines/gr_hlin.s \ - ../asm_routines/multiply_fast.s \ - ../asm_routines/gr_fast_clear.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/keypress.s \ - ../asm_routines/gr_putsprite.s \ - ../asm_routines/text_print.s + ../../asm_routines/gr_hlin.s \ + ../../asm_routines/multiply_fast.s \ + ../../asm_routines/gr_fast_clear.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/keypress.s \ + ../../asm_routines/gr_putsprite.s \ + ../../asm_routines/text_print.s ca65 -o mode7_island.o mode7.s -D ISLAND_MAP=1 -l mode7.lst MODE7_CHECKERBOARD: mode7_checkerboard.o @@ -47,16 +49,16 @@ MODE7_CHECKERBOARD: mode7_checkerboard.o mode7_checkerboard.o: mode7.s checkerboard_lookup.s \ zp.inc sprites.inc \ - ../asm_routines/gr_hlin.s \ - ../asm_routines/multiply_fast.s \ - ../asm_routines/gr_fast_clear.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/keypress.s \ - ../asm_routines/gr_putsprite.s \ - ../asm_routines/text_print.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/bg_scroll.s + ../../asm_routines/gr_hlin.s \ + ../../asm_routines/multiply_fast.s \ + ../../asm_routines/gr_fast_clear.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/keypress.s \ + ../../asm_routines/gr_putsprite.s \ + ../../asm_routines/text_print.s \ + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/bg_scroll.s ca65 -o mode7_checkerboard.o mode7.s -D CHECKERBOARD_MAP=1 -l mode7.lst MODE7_RAINBOW: mode7_rainbow.o @@ -64,21 +66,21 @@ MODE7_RAINBOW: mode7_rainbow.o mode7_rainbow.o: mode7.s rainbow_lookup.s \ zp.inc sprites.inc \ - ../asm_routines/multiply_fast.s \ - ../asm_routines/gr_fast_clear.s \ - ../asm_routines/gr_hlin.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/keypress.s \ - ../asm_routines/gr_putsprite.s \ - ../asm_routines/text_print.s + ../../asm_routines/multiply_fast.s \ + ../../asm_routines/gr_fast_clear.s \ + ../../asm_routines/gr_hlin.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/keypress.s \ + ../../asm_routines/gr_putsprite.s \ + ../../asm_routines/text_print.s ca65 -o mode7_rainbow.o mode7.s -D RAINBOW_MAP=1 -l mode7.lst PLOT_TEST: plot_test.o ld65 -o PLOT_TEST plot_test.o -C ./apple2_1000.inc plot_test.o: plot_test.s \ - ../asm_routines/gr_setpage.s + ../../asm_routines/gr_setpage.s ca65 -o plot_test.o plot_test.s -l plot_test.lst SCROLL_DEMO: scroll_demo.o @@ -86,11 +88,11 @@ SCROLL_DEMO: scroll_demo.o scroll_demo.o: scroll_demo.s \ deater_scroll.inc \ - ../asm_routines/gr_hlin.s \ - ../asm_routines/gr_fast_clear.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s + ../../asm_routines/gr_hlin.s \ + ../../asm_routines/gr_fast_clear.s \ + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s ca65 -o scroll_demo.o scroll_demo.s -l scroll_demo.lst SKY_DEMO: sky_demo.o @@ -98,21 +100,21 @@ SKY_DEMO: sky_demo.o sky_demo.o: sky_demo.s \ starry_sky.scroll \ - ../asm_routines/gr_hlin.s \ - ../asm_routines/gr_fast_clear.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s + ../../asm_routines/gr_hlin.s \ + ../../asm_routines/gr_fast_clear.s \ + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s ca65 -o sky_demo.o sky_demo.s -l sky_demo.lst STARFIELD_DEMO: starfield_demo.o ld65 -o STARFIELD_DEMO starfield_demo.o -C ./apple2_1000.inc starfield_demo.o: starfield_demo.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/gr_fast_clear.s + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/gr_fast_clear.s ca65 -o starfield_demo.o starfield_demo.s -l starfield_demo.lst @@ -120,10 +122,10 @@ RASTERBARS: rasterbars.o ld65 -o RASTERBARS rasterbars.o -C ./apple2_1000.inc rasterbars.o: rasterbars.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/gr_fast_clear.s + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/gr_fast_clear.s ca65 -o rasterbars.o rasterbars.s -l rasterbars.lst @@ -131,10 +133,10 @@ STARFIELD_1K: starfield_1k.o ld65 -o STARFIELD_1K starfield_1k.o -C ./apple2_1000.inc starfield_1k.o: starfield_1k.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/gr_fast_clear.s + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/gr_fast_clear.s ca65 -o starfield_1k.o starfield_1k.s -l starfield_1k.lst @@ -142,10 +144,10 @@ TEXT_DEMO: text_demo.o ld65 -o TEXT_DEMO text_demo.o -C ./apple2_1000.inc text_demo.o: text_demo.s \ - ../asm_routines/gr_scroll.s \ - ../asm_routines/pageflip.s \ - ../asm_routines/gr_setpage.s \ - ../asm_routines/gr_fast_clear.s + ../../asm_routines/gr_scroll.s \ + ../../asm_routines/pageflip.s \ + ../../asm_routines/gr_setpage.s \ + ../../asm_routines/gr_fast_clear.s ca65 -o text_demo.o text_demo.s -l text_demo.lst scroller: scroller.o diff --git a/demos/mode7/apple2_1000.inc b/graphics/gr/mode7/apple2_1000.inc similarity index 100% rename from demos/mode7/apple2_1000.inc rename to graphics/gr/mode7/apple2_1000.inc diff --git a/demos/mode7/background.c b/graphics/gr/mode7/background.c similarity index 100% rename from demos/mode7/background.c rename to graphics/gr/mode7/background.c diff --git a/demos/mode7/checkerboard_lookup.s b/graphics/gr/mode7/checkerboard_lookup.s similarity index 100% rename from demos/mode7/checkerboard_lookup.s rename to graphics/gr/mode7/checkerboard_lookup.s diff --git a/demos/mode7/deater_scroll.inc b/graphics/gr/mode7/deater_scroll.inc similarity index 100% rename from demos/mode7/deater_scroll.inc rename to graphics/gr/mode7/deater_scroll.inc diff --git a/demos/mode7/demo_notes b/graphics/gr/mode7/demo_notes similarity index 100% rename from demos/mode7/demo_notes rename to graphics/gr/mode7/demo_notes diff --git a/demos/mode7/island_lookup.s b/graphics/gr/mode7/island_lookup.s similarity index 100% rename from demos/mode7/island_lookup.s rename to graphics/gr/mode7/island_lookup.s diff --git a/demos/mode7/island_map.inc b/graphics/gr/mode7/island_map.inc similarity index 100% rename from demos/mode7/island_map.inc rename to graphics/gr/mode7/island_map.inc diff --git a/demos/mode7/mode7.dsk b/graphics/gr/mode7/mode7.dsk similarity index 100% rename from demos/mode7/mode7.dsk rename to graphics/gr/mode7/mode7.dsk diff --git a/demos/mode7/mode7.s b/graphics/gr/mode7/mode7.s similarity index 98% rename from demos/mode7/mode7.s rename to graphics/gr/mode7/mode7.s index f72fe039..fe9a4784 100644 --- a/demos/mode7/mode7.s +++ b/graphics/gr/mode7/mode7.s @@ -1114,18 +1114,18 @@ exit: ; External modules ;=============================================== -.include "../asm_routines/gr_hlin.s" -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -.include "../asm_routines/keypress.s" -.include "../asm_routines/gr_putsprite.s" -.include "../asm_routines/text_print.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_hlin.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +.include "../../asm_routines/keypress.s" +.include "../../asm_routines/gr_putsprite.s" +.include "../../asm_routines/text_print.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" .if .def(CHECKERBOARD_MAP) -.include "../asm_routines/gr_scroll.s" -.include "../asm_routines/bg_scroll.s" +.include "../../asm_routines/gr_scroll.s" +.include "../../asm_routines/bg_scroll.s" .endif @@ -1143,7 +1143,7 @@ exit: .include "starry_sky.scroll" .endif -.include "../asm_routines/multiply_fast.s" +.include "../../asm_routines/multiply_fast.s" ; 8.8 fixed point diff --git a/demos/mode7/pink.c b/graphics/gr/mode7/pink.c similarity index 100% rename from demos/mode7/pink.c rename to graphics/gr/mode7/pink.c diff --git a/demos/mode7/plot_test.s b/graphics/gr/mode7/plot_test.s similarity index 64% rename from demos/mode7/plot_test.s rename to graphics/gr/mode7/plot_test.s index 9f09cc58..6e0ffdb0 100644 --- a/demos/mode7/plot_test.s +++ b/graphics/gr/mode7/plot_test.s @@ -56,12 +56,12 @@ blah: ; External modules ;=============================================== -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -;.include "../asm_routines/keypress.s" -;.include "../asm_routines/gr_putsprite.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_plot.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +;.include "../../asm_routines/keypress.s" +;.include "../../asm_routines/gr_putsprite.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_plot.s" diff --git a/demos/mode7/rainbow_lookup.s b/graphics/gr/mode7/rainbow_lookup.s similarity index 100% rename from demos/mode7/rainbow_lookup.s rename to graphics/gr/mode7/rainbow_lookup.s diff --git a/demos/mode7/rasterbars.s b/graphics/gr/mode7/rasterbars.s similarity index 95% rename from demos/mode7/rasterbars.s rename to graphics/gr/mode7/rasterbars.s index 1117f032..564eebd0 100644 --- a/demos/mode7/rasterbars.s +++ b/graphics/gr/mode7/rasterbars.s @@ -207,11 +207,11 @@ finish_line: ; External modules ;=============================================== -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_hlin.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_hlin.s" ;====================== ; some arrays diff --git a/demos/mode7/scroll_demo.s b/graphics/gr/mode7/scroll_demo.s similarity index 77% rename from demos/mode7/scroll_demo.s rename to graphics/gr/mode7/scroll_demo.s index b22bbfea..ce9d3e9f 100644 --- a/demos/mode7/scroll_demo.s +++ b/graphics/gr/mode7/scroll_demo.s @@ -36,11 +36,11 @@ scroll_forever: ;=============================================== ; Routines ;=============================================== -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_scroll.s" -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -.include "../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_scroll.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +.include "../../asm_routines/gr_offsets.s" ;=============================================== ; Variables diff --git a/demos/mode7/scroller.c b/graphics/gr/mode7/scroller.c similarity index 100% rename from demos/mode7/scroller.c rename to graphics/gr/mode7/scroller.c diff --git a/demos/mode7/sky_demo.s b/graphics/gr/mode7/sky_demo.s similarity index 75% rename from demos/mode7/sky_demo.s rename to graphics/gr/mode7/sky_demo.s index 38fdaf3a..fc52d0ca 100644 --- a/demos/mode7/sky_demo.s +++ b/graphics/gr/mode7/sky_demo.s @@ -51,13 +51,13 @@ scroll_forever: ;=============================================== ; Routines ;=============================================== -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_scroll.s" -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -.include "../asm_routines/keypress.s" -.include "../asm_routines/bg_scroll.s" -.include "../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_scroll.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +.include "../../asm_routines/keypress.s" +.include "../../asm_routines/bg_scroll.s" +.include "../../asm_routines/gr_offsets.s" ;=============================================== ; Variables diff --git a/demos/mode7/sprites.inc b/graphics/gr/mode7/sprites.inc similarity index 100% rename from demos/mode7/sprites.inc rename to graphics/gr/mode7/sprites.inc diff --git a/demos/mode7/starfield_1k.s b/graphics/gr/mode7/starfield_1k.s similarity index 95% rename from demos/mode7/starfield_1k.s rename to graphics/gr/mode7/starfield_1k.s index fa5a7c83..a0abd961 100644 --- a/demos/mode7/starfield_1k.s +++ b/graphics/gr/mode7/starfield_1k.s @@ -280,14 +280,14 @@ clear_x: ; External modules ;=============================================== -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -;.include "../asm_routines/keypress.s" -;.include "../asm_routines/gr_putsprite.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_plot.s" -.include "../asm_routines/multiply_fast.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +;.include "../../asm_routines/keypress.s" +;.include "../../asm_routines/gr_putsprite.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_plot.s" +.include "../../asm_routines/multiply_fast.s" ;====================== diff --git a/demos/mode7/starfield_demo.s b/graphics/gr/mode7/starfield_demo.s similarity index 95% rename from demos/mode7/starfield_demo.s rename to graphics/gr/mode7/starfield_demo.s index 7d5e97eb..766897fa 100644 --- a/demos/mode7/starfield_demo.s +++ b/graphics/gr/mode7/starfield_demo.s @@ -342,14 +342,14 @@ random_star: ; External modules ;=============================================== -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -.include "../asm_routines/keypress.s" -.include "../asm_routines/gr_putsprite.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_plot.s" -.include "../asm_routines/multiply_fast.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +.include "../../asm_routines/keypress.s" +.include "../../asm_routines/gr_putsprite.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_plot.s" +.include "../../asm_routines/multiply_fast.s" .include "sprites.inc" diff --git a/demos/mode7/starry_sky.scroll b/graphics/gr/mode7/starry_sky.scroll similarity index 100% rename from demos/mode7/starry_sky.scroll rename to graphics/gr/mode7/starry_sky.scroll diff --git a/demos/mode7/text_demo.s b/graphics/gr/mode7/text_demo.s similarity index 92% rename from demos/mode7/text_demo.s rename to graphics/gr/mode7/text_demo.s index 085abf43..18705f53 100644 --- a/demos/mode7/text_demo.s +++ b/graphics/gr/mode7/text_demo.s @@ -318,10 +318,10 @@ thankz: ; External modules ;=============================================== -.include "../asm_routines/pageflip.s" -.include "../asm_routines/gr_setpage.s" -;.include "../asm_routines/keypress.s" -.include "../asm_routines/gr_offsets.s" -.include "../asm_routines/gr_fast_clear.s" -.include "../asm_routines/gr_hlin.s" -.include "../asm_routines/text_print.s" +.include "../../asm_routines/pageflip.s" +.include "../../asm_routines/gr_setpage.s" +;.include "../../asm_routines/keypress.s" +.include "../../asm_routines/gr_offsets.s" +.include "../../asm_routines/gr_fast_clear.s" +.include "../../asm_routines/gr_hlin.s" +.include "../../asm_routines/text_print.s" diff --git a/demos/mode7/zp.inc b/graphics/gr/mode7/zp.inc similarity index 100% rename from demos/mode7/zp.inc rename to graphics/gr/mode7/zp.inc diff --git a/utils/Makefile b/utils/Makefile index 1ed84f05..8326cd18 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -4,7 +4,7 @@ all: cd asoft_basic-utils && make cd asoft_presenter && make cd asoft_sound && make -# cd bmp2dhr && make + cd bmp2dhr && make # cd dos33fs-linux2.4 && make cd dos33fs-utils && make # cd gr-sim && make diff --git a/vaporlock/Makefile b/vaporlock/Makefile index bbb2f8d6..d7f3277d 100644 --- a/vaporlock/Makefile +++ b/vaporlock/Makefile @@ -1,6 +1,16 @@ all: cd fancy_lores && make + cd fireworks && make + cd racebeam && make + cd rasterbars && make + cd tfv_credits && make + cd waterfall && make clean: cd fancy_lores && make clean + cd fireworks && make clean + cd racebeam && make clean + cd rasterbars && make clean + cd tfv_credits && make clean + cd waterfall && make clean rm -f *~ diff --git a/vaporlock/README b/vaporlock/README index cfd78f86..332379d1 100644 --- a/vaporlock/README +++ b/vaporlock/README @@ -4,3 +4,19 @@ mid-screen graphics switches fancy_lores: viewer for 40x96 and 40x48i cycle-counted graphics modes +fireworks: + fancy cycle-counted fireworks display + used in the cycle-counting megademo + +racebeam: + attempt (unsuccessful?) to get dhgr-esque resolution from vapor lock + +rasterbars: + work on self-modify code for 40x192 cycle-counted graphics + most of this work ended up in the lores-escape demo + +tfv_credits: + riding a chocobo credits scene for Talbot Fantasy + +waterfall: + transparent waterfall effect diff --git a/demos/fireworks/Makefile b/vaporlock/fireworks/Makefile similarity index 65% rename from demos/fireworks/Makefile rename to vaporlock/fireworks/Makefile index d5f89278..71eca610 100644 --- a/demos/fireworks/Makefile +++ b/vaporlock/fireworks/Makefile @@ -1,8 +1,10 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x48D = ../gr-utils/png_to_40x48d all: fireworks.dsk @@ -14,7 +16,7 @@ fireworks.dsk: FIREWORKS.BAS FIREWORKS #### FIREWORKS: fireworks.o - ld65 -o FIREWORKS fireworks.o -C ../linker_scripts/apple2_1000.inc + ld65 -o FIREWORKS fireworks.o -C ../../linker_scripts/apple2_1000.inc fireworks.o: fireworks.s gr_copy.s random16.s fw.s hgr.s delay_a.s \ vapor_lock.s gr_hline.s state_machine.s move_letters.s \ @@ -29,7 +31,7 @@ background_final.inc: background_final.png #### FIREWORKS.BAS: fireworks.bas - ../asoft_basic-utils/tokenize_asoft < fireworks.bas > FIREWORKS.BAS + $(TOKENIZE) < fireworks.bas > FIREWORKS.BAS clean: rm -f *~ *.o *.lst *.inc FIREWORKS.BAS diff --git a/demos/fireworks/README b/vaporlock/fireworks/README similarity index 100% rename from demos/fireworks/README rename to vaporlock/fireworks/README diff --git a/demos/fireworks/TODO b/vaporlock/fireworks/TODO similarity index 100% rename from demos/fireworks/TODO rename to vaporlock/fireworks/TODO diff --git a/demos/fireworks/background.png b/vaporlock/fireworks/background.png similarity index 100% rename from demos/fireworks/background.png rename to vaporlock/fireworks/background.png diff --git a/demos/fireworks/background_final.png b/vaporlock/fireworks/background_final.png similarity index 100% rename from demos/fireworks/background_final.png rename to vaporlock/fireworks/background_final.png diff --git a/demos/fireworks/delay_a.s b/vaporlock/fireworks/delay_a.s similarity index 100% rename from demos/fireworks/delay_a.s rename to vaporlock/fireworks/delay_a.s diff --git a/demos/fireworks/fireworks.bas b/vaporlock/fireworks/fireworks.bas similarity index 100% rename from demos/fireworks/fireworks.bas rename to vaporlock/fireworks/fireworks.bas diff --git a/demos/fireworks/fireworks.dsk b/vaporlock/fireworks/fireworks.dsk similarity index 100% rename from demos/fireworks/fireworks.dsk rename to vaporlock/fireworks/fireworks.dsk diff --git a/demos/fireworks/fireworks.s b/vaporlock/fireworks/fireworks.s similarity index 99% rename from demos/fireworks/fireworks.s rename to vaporlock/fireworks/fireworks.s index 9f021218..18dbaae9 100644 --- a/demos/fireworks/fireworks.s +++ b/vaporlock/fireworks/fireworks.s @@ -418,8 +418,8 @@ jump_table: .include "state_machine.s" .include "gr_hline.s" -.include "../asm_routines/gr_unrle.s" -.include "../asm_routines/keypress.s" +.include "../../asm_routines/gr_unrle.s" +.include "../../asm_routines/keypress.s" .include "gr_copy.s" .include "random16.s" .include "fw.s" diff --git a/demos/fireworks/fireworks_orig.s b/vaporlock/fireworks/fireworks_orig.s similarity index 100% rename from demos/fireworks/fireworks_orig.s rename to vaporlock/fireworks/fireworks_orig.s diff --git a/demos/fireworks/fw.s b/vaporlock/fireworks/fw.s similarity index 100% rename from demos/fireworks/fw.s rename to vaporlock/fireworks/fw.s diff --git a/demos/fireworks/gr_copy.s b/vaporlock/fireworks/gr_copy.s similarity index 100% rename from demos/fireworks/gr_copy.s rename to vaporlock/fireworks/gr_copy.s diff --git a/demos/fireworks/gr_hline.s b/vaporlock/fireworks/gr_hline.s similarity index 100% rename from demos/fireworks/gr_hline.s rename to vaporlock/fireworks/gr_hline.s diff --git a/demos/fireworks/hgline.s b/vaporlock/fireworks/hgline.s similarity index 100% rename from demos/fireworks/hgline.s rename to vaporlock/fireworks/hgline.s diff --git a/demos/fireworks/hgr.s b/vaporlock/fireworks/hgr.s similarity index 100% rename from demos/fireworks/hgr.s rename to vaporlock/fireworks/hgr.s diff --git a/demos/fireworks/move_letters.s b/vaporlock/fireworks/move_letters.s similarity index 100% rename from demos/fireworks/move_letters.s rename to vaporlock/fireworks/move_letters.s diff --git a/demos/fireworks/random16.s b/vaporlock/fireworks/random16.s similarity index 100% rename from demos/fireworks/random16.s rename to vaporlock/fireworks/random16.s diff --git a/demos/fireworks/state_machine.s b/vaporlock/fireworks/state_machine.s similarity index 100% rename from demos/fireworks/state_machine.s rename to vaporlock/fireworks/state_machine.s diff --git a/demos/fireworks/vapor_lock.s b/vaporlock/fireworks/vapor_lock.s similarity index 100% rename from demos/fireworks/vapor_lock.s rename to vaporlock/fireworks/vapor_lock.s diff --git a/demos/racebeam/Makefile b/vaporlock/racebeam/Makefile similarity index 53% rename from demos/racebeam/Makefile rename to vaporlock/racebeam/Makefile index 124e9652..addf75ec 100644 --- a/demos/racebeam/Makefile +++ b/vaporlock/racebeam/Makefile @@ -1,13 +1,15 @@ -include ../Makefile.inc +include ../../Makefile.inc + +DOS33 = ../../utils/dos33fs-utils/dos33 +B2D = ../../utils/bmp2dhr/b2d +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -DOS33 = ../dos33fs-utils/dos33 -B2D = ../bmp2dhr/b2d -PNG_TO_40x48D = ../gr-utils/png_to_40x48d all: racebeam.dsk racebeam.dsk: HELLO RACEBEAM - $(DOS33) -y racebeam.dsk SAVE HELLO + $(DOS33) -y racebeam.dsk SAVE A HELLO $(DOS33) -y racebeam.dsk BSAVE -a 0x1000 RACEBEAM @@ -15,7 +17,7 @@ racebeam.dsk: HELLO RACEBEAM #### RACEBEAM: racebeam.o - ld65 -o RACEBEAM racebeam.o -C ../linker_scripts/apple2_1000.inc + ld65 -o RACEBEAM racebeam.o -C ../../linker_scripts/apple2_1000.inc racebeam.o: racebeam.s ca65 -o racebeam.o racebeam.s -l racebeam.lst @@ -28,7 +30,7 @@ racebeam.o: racebeam.s #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO clean: rm -f *~ *.o *.lst *.inc RACEBEAM HELLO diff --git a/demos/racebeam/README b/vaporlock/racebeam/README similarity index 58% rename from demos/racebeam/README rename to vaporlock/racebeam/README index a5f422d5..eea6b71d 100644 --- a/demos/racebeam/README +++ b/vaporlock/racebeam/README @@ -4,3 +4,6 @@ Apple II Racing the Beam demo http://www.deater.net/weave/vmwprod/ +This seems to be incomplete + + did use this technique in the "lores escape" demo diff --git a/demos/interlace_demo/delay_a.s b/vaporlock/racebeam/delay_a.s similarity index 100% rename from demos/interlace_demo/delay_a.s rename to vaporlock/racebeam/delay_a.s diff --git a/demos/racebeam/gr_copy.s b/vaporlock/racebeam/gr_copy.s similarity index 100% rename from demos/racebeam/gr_copy.s rename to vaporlock/racebeam/gr_copy.s diff --git a/demos/racebeam/gr_hline.s b/vaporlock/racebeam/gr_hline.s similarity index 100% rename from demos/racebeam/gr_hline.s rename to vaporlock/racebeam/gr_hline.s diff --git a/demos/racebeam/hello.bas b/vaporlock/racebeam/hello.bas similarity index 100% rename from demos/racebeam/hello.bas rename to vaporlock/racebeam/hello.bas diff --git a/demos/racebeam/racebeam.dsk b/vaporlock/racebeam/racebeam.dsk similarity index 100% rename from demos/racebeam/racebeam.dsk rename to vaporlock/racebeam/racebeam.dsk diff --git a/demos/racebeam/racebeam.s b/vaporlock/racebeam/racebeam.s similarity index 100% rename from demos/racebeam/racebeam.s rename to vaporlock/racebeam/racebeam.s diff --git a/demos/racebeam/random16.s b/vaporlock/racebeam/random16.s similarity index 100% rename from demos/racebeam/random16.s rename to vaporlock/racebeam/random16.s diff --git a/demos/interlace_demo/vapor_lock.s b/vaporlock/racebeam/vapor_lock.s similarity index 100% rename from demos/interlace_demo/vapor_lock.s rename to vaporlock/racebeam/vapor_lock.s diff --git a/demos/interlace_demo/Makefile b/vaporlock/rasterbars/Makefile similarity index 75% rename from demos/interlace_demo/Makefile rename to vaporlock/rasterbars/Makefile index 0aecb50a..8f17ff91 100644 --- a/demos/interlace_demo/Makefile +++ b/vaporlock/rasterbars/Makefile @@ -1,8 +1,9 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_40x96 = ../gr-utils/png_to_40x96 -PNG_TO_40x48D = ../gr-utils/png_to_40x48d +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_40x96 = ../../utils/gr-utils/png_to_40x96 +PNG_TO_40x48D = ../../utils/gr-utils/png_to_40x48d +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft all: interlace.dsk @@ -17,13 +18,13 @@ interlace.dsk: INTERLACE RASTERBARS HELLO RASTERBARS_SOUND #SPRITES #### HELLO: hello.bas - ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO + $(TOKENIZE) < hello.bas > HELLO #### INTERLACE: interlace.o - ld65 -o INTERLACE interlace.o -C ../linker_scripts/apple2_1000.inc + ld65 -o INTERLACE interlace.o -C ../../linker_scripts/apple2_1000.inc interlace.o: interlace.s gr_copy.s \ k_40_48d.inc @@ -32,7 +33,7 @@ interlace.o: interlace.s gr_copy.s \ #### RASTERBARS: rasterbars.o - ld65 -o RASTERBARS rasterbars.o -C ../linker_scripts/apple2_1000.inc + ld65 -o RASTERBARS rasterbars.o -C ../../linker_scripts/apple2_1000.inc rasterbars.o: rasterbars.s gr_copy.s \ rasterbars_screen.s rasterbars_table.s movement_table.s rb_bg.inc @@ -41,7 +42,7 @@ rasterbars.o: rasterbars.s gr_copy.s \ #### RASTERBARS_SOUND: rasterbars_sound.o - ld65 -o RASTERBARS_SOUND rasterbars_sound.o -C ../linker_scripts/apple2_1000.inc + ld65 -o RASTERBARS_SOUND rasterbars_sound.o -C ../../linker_scripts/apple2_1000.inc rasterbars_sound.o: rasterbars_sound.s gr_copy.s \ rasterbars_screen.s rasterbars_table.s movement_table.s rb_bg.inc \ @@ -55,7 +56,7 @@ rasterbars_sound.o: rasterbars_sound.s gr_copy.s \ #### SPRITES: sprites.o - ld65 -o SPRITES sprites.o -C ../linker_scripts/apple2_1000.inc + ld65 -o SPRITES sprites.o -C ../../linker_scripts/apple2_1000.inc sprites.o: sprites.s gr_copy.s \ sprites_screen.s sprites_table.s movement_table.s earth.inc asteroid.inc diff --git a/vaporlock/rasterbars/README b/vaporlock/rasterbars/README new file mode 100644 index 00000000..27df307b --- /dev/null +++ b/vaporlock/rasterbars/README @@ -0,0 +1,10 @@ +working on getting 40x192 cycle-counted mode. you have to self-modify +screen contents mid-screen so you ounly get about 12 or so blocks +across in this mode + +really cool rasterbar effect + +attempted to get cycle-counted pt3 player going, wasted a lot of time +on that, didn't get it working in the end + +these proofs of concept were used in the Demosplash 2019 lores-escape demo diff --git a/demos/interlace_demo/asteroid.inc b/vaporlock/rasterbars/asteroid.inc similarity index 100% rename from demos/interlace_demo/asteroid.inc rename to vaporlock/rasterbars/asteroid.inc diff --git a/demos/racebeam/delay_a.s b/vaporlock/rasterbars/delay_a.s similarity index 100% rename from demos/racebeam/delay_a.s rename to vaporlock/rasterbars/delay_a.s diff --git a/demos/interlace_demo/earth.png b/vaporlock/rasterbars/earth.png similarity index 100% rename from demos/interlace_demo/earth.png rename to vaporlock/rasterbars/earth.png diff --git a/demos/interlace_demo/gr_copy.s b/vaporlock/rasterbars/gr_copy.s similarity index 100% rename from demos/interlace_demo/gr_copy.s rename to vaporlock/rasterbars/gr_copy.s diff --git a/demos/interlace_demo/gr_offsets.s b/vaporlock/rasterbars/gr_offsets.s similarity index 100% rename from demos/interlace_demo/gr_offsets.s rename to vaporlock/rasterbars/gr_offsets.s diff --git a/demos/interlace_demo/gr_putsprite.s b/vaporlock/rasterbars/gr_putsprite.s similarity index 100% rename from demos/interlace_demo/gr_putsprite.s rename to vaporlock/rasterbars/gr_putsprite.s diff --git a/demos/interlace_demo/gr_simple_clear.s b/vaporlock/rasterbars/gr_simple_clear.s similarity index 100% rename from demos/interlace_demo/gr_simple_clear.s rename to vaporlock/rasterbars/gr_simple_clear.s diff --git a/demos/interlace_demo/gr_unrle.s b/vaporlock/rasterbars/gr_unrle.s similarity index 100% rename from demos/interlace_demo/gr_unrle.s rename to vaporlock/rasterbars/gr_unrle.s diff --git a/demos/interlace_demo/hardware.inc b/vaporlock/rasterbars/hardware.inc similarity index 100% rename from demos/interlace_demo/hardware.inc rename to vaporlock/rasterbars/hardware.inc diff --git a/demos/interlace_demo/hello.bas b/vaporlock/rasterbars/hello.bas similarity index 100% rename from demos/interlace_demo/hello.bas rename to vaporlock/rasterbars/hello.bas diff --git a/demos/interlace_demo/interlace.dsk b/vaporlock/rasterbars/interlace.dsk similarity index 100% rename from demos/interlace_demo/interlace.dsk rename to vaporlock/rasterbars/interlace.dsk diff --git a/demos/interlace_demo/interlace.s b/vaporlock/rasterbars/interlace.s similarity index 99% rename from demos/interlace_demo/interlace.s rename to vaporlock/rasterbars/interlace.s index c84a24de..e2a88fcd 100644 --- a/demos/interlace_demo/interlace.s +++ b/vaporlock/rasterbars/interlace.s @@ -3616,8 +3616,8 @@ loop2: dex ; 2 .include "gr_simple_clear.s" .include "gr_offsets.s" -.include "../asm_routines/gr_unrle.s" -.include "../asm_routines/keypress.s" +.include "../../asm_routines/gr_unrle.s" +.include "../../asm_routines/keypress.s" .align $100 .include "gr_copy.s" .include "vapor_lock.s" diff --git a/demos/interlace_demo/k_40_48d.png b/vaporlock/rasterbars/k_40_48d.png similarity index 100% rename from demos/interlace_demo/k_40_48d.png rename to vaporlock/rasterbars/k_40_48d.png diff --git a/demos/interlace_demo/make_it.c b/vaporlock/rasterbars/make_it.c similarity index 100% rename from demos/interlace_demo/make_it.c rename to vaporlock/rasterbars/make_it.c diff --git a/demos/interlace_demo/make_mt.c b/vaporlock/rasterbars/make_mt.c similarity index 100% rename from demos/interlace_demo/make_mt.c rename to vaporlock/rasterbars/make_mt.c diff --git a/demos/interlace_demo/make_st.c b/vaporlock/rasterbars/make_st.c similarity index 100% rename from demos/interlace_demo/make_st.c rename to vaporlock/rasterbars/make_st.c diff --git a/demos/interlace_demo/movement_table.s b/vaporlock/rasterbars/movement_table.s similarity index 100% rename from demos/interlace_demo/movement_table.s rename to vaporlock/rasterbars/movement_table.s diff --git a/demos/interlace_demo/pt3_lib_calculate_note.s b/vaporlock/rasterbars/pt3_lib_calculate_note.s similarity index 100% rename from demos/interlace_demo/pt3_lib_calculate_note.s rename to vaporlock/rasterbars/pt3_lib_calculate_note.s diff --git a/demos/interlace_demo/pt3_lib_ci.s.old b/vaporlock/rasterbars/pt3_lib_ci.s.old similarity index 100% rename from demos/interlace_demo/pt3_lib_ci.s.old rename to vaporlock/rasterbars/pt3_lib_ci.s.old diff --git a/demos/interlace_demo/pt3_lib_core.s b/vaporlock/rasterbars/pt3_lib_core.s similarity index 100% rename from demos/interlace_demo/pt3_lib_core.s rename to vaporlock/rasterbars/pt3_lib_core.s diff --git a/demos/interlace_demo/pt3_lib_decode_note.s b/vaporlock/rasterbars/pt3_lib_decode_note.s similarity index 100% rename from demos/interlace_demo/pt3_lib_decode_note.s rename to vaporlock/rasterbars/pt3_lib_decode_note.s diff --git a/demos/interlace_demo/pt3_lib_do_frame.s b/vaporlock/rasterbars/pt3_lib_do_frame.s similarity index 100% rename from demos/interlace_demo/pt3_lib_do_frame.s rename to vaporlock/rasterbars/pt3_lib_do_frame.s diff --git a/demos/interlace_demo/pt3_lib_init.s b/vaporlock/rasterbars/pt3_lib_init.s similarity index 100% rename from demos/interlace_demo/pt3_lib_init.s rename to vaporlock/rasterbars/pt3_lib_init.s diff --git a/demos/interlace_demo/pt3_lib_make_frame.s b/vaporlock/rasterbars/pt3_lib_make_frame.s similarity index 100% rename from demos/interlace_demo/pt3_lib_make_frame.s rename to vaporlock/rasterbars/pt3_lib_make_frame.s diff --git a/demos/interlace_demo/pt3_lib_mockingboard.s b/vaporlock/rasterbars/pt3_lib_mockingboard.s similarity index 100% rename from demos/interlace_demo/pt3_lib_mockingboard.s rename to vaporlock/rasterbars/pt3_lib_mockingboard.s diff --git a/demos/interlace_demo/pt3_lib_sample_ornament.s b/vaporlock/rasterbars/pt3_lib_sample_ornament.s similarity index 100% rename from demos/interlace_demo/pt3_lib_sample_ornament.s rename to vaporlock/rasterbars/pt3_lib_sample_ornament.s diff --git a/demos/interlace_demo/pt3_lib_set_pattern.s b/vaporlock/rasterbars/pt3_lib_set_pattern.s similarity index 100% rename from demos/interlace_demo/pt3_lib_set_pattern.s rename to vaporlock/rasterbars/pt3_lib_set_pattern.s diff --git a/demos/interlace_demo/pt3_write_frame.s b/vaporlock/rasterbars/pt3_write_frame.s similarity index 100% rename from demos/interlace_demo/pt3_write_frame.s rename to vaporlock/rasterbars/pt3_write_frame.s diff --git a/demos/interlace_demo/random.data b/vaporlock/rasterbars/random.data similarity index 100% rename from demos/interlace_demo/random.data rename to vaporlock/rasterbars/random.data diff --git a/demos/interlace_demo/rasterbars.s b/vaporlock/rasterbars/rasterbars.s similarity index 98% rename from demos/interlace_demo/rasterbars.s rename to vaporlock/rasterbars/rasterbars.s index b38132f3..39ff7576 100644 --- a/demos/interlace_demo/rasterbars.s +++ b/vaporlock/rasterbars/rasterbars.s @@ -455,8 +455,8 @@ smc_raster_color1_2: .include "gr_simple_clear.s" .include "gr_offsets.s" -.include "../asm_routines/gr_unrle.s" -.include "../asm_routines/keypress.s" +.include "../../asm_routines/gr_unrle.s" +.include "../../asm_routines/keypress.s" .align $100 .include "rasterbars_table.s" .include "movement_table.s" diff --git a/demos/interlace_demo/rasterbars_screen.s b/vaporlock/rasterbars/rasterbars_screen.s similarity index 100% rename from demos/interlace_demo/rasterbars_screen.s rename to vaporlock/rasterbars/rasterbars_screen.s diff --git a/demos/interlace_demo/rasterbars_sound.s b/vaporlock/rasterbars/rasterbars_sound.s similarity index 99% rename from demos/interlace_demo/rasterbars_sound.s rename to vaporlock/rasterbars/rasterbars_sound.s index 28df78bc..4a9564d2 100644 --- a/demos/interlace_demo/rasterbars_sound.s +++ b/vaporlock/rasterbars/rasterbars_sound.s @@ -497,4 +497,4 @@ blue_x: .byte $40 ; this can be fixed but some changes would have ; to be made throughout the player code song: -.incbin "../pt3_player/music/EA.PT3" +.incbin "../../music/pt3_player/music/EA.PT3" diff --git a/demos/interlace_demo/rasterbars_table.s b/vaporlock/rasterbars/rasterbars_table.s similarity index 100% rename from demos/interlace_demo/rasterbars_table.s rename to vaporlock/rasterbars/rasterbars_table.s diff --git a/demos/interlace_demo/rb_bg.inc b/vaporlock/rasterbars/rb_bg.inc similarity index 100% rename from demos/interlace_demo/rb_bg.inc rename to vaporlock/rasterbars/rb_bg.inc diff --git a/demos/interlace_demo/rb_bg.png b/vaporlock/rasterbars/rb_bg.png similarity index 100% rename from demos/interlace_demo/rb_bg.png rename to vaporlock/rasterbars/rb_bg.png diff --git a/demos/interlace_demo/sample.png b/vaporlock/rasterbars/sample.png similarity index 100% rename from demos/interlace_demo/sample.png rename to vaporlock/rasterbars/sample.png diff --git a/demos/interlace_demo/sprites.s b/vaporlock/rasterbars/sprites.s similarity index 100% rename from demos/interlace_demo/sprites.s rename to vaporlock/rasterbars/sprites.s diff --git a/demos/interlace_demo/sprites_screen.s b/vaporlock/rasterbars/sprites_screen.s similarity index 100% rename from demos/interlace_demo/sprites_screen.s rename to vaporlock/rasterbars/sprites_screen.s diff --git a/demos/interlace_demo/sprites_table.s b/vaporlock/rasterbars/sprites_table.s similarity index 100% rename from demos/interlace_demo/sprites_table.s rename to vaporlock/rasterbars/sprites_table.s diff --git a/demos/racebeam/vapor_lock.s b/vaporlock/rasterbars/vapor_lock.s similarity index 100% rename from demos/racebeam/vapor_lock.s rename to vaporlock/rasterbars/vapor_lock.s diff --git a/demos/interlace_demo/zp.inc b/vaporlock/rasterbars/zp.inc similarity index 100% rename from demos/interlace_demo/zp.inc rename to vaporlock/rasterbars/zp.inc diff --git a/demos/split_screen/BISHOP.BAS b/vaporlock/tfv_credits/BISHOP.BAS similarity index 100% rename from demos/split_screen/BISHOP.BAS rename to vaporlock/tfv_credits/BISHOP.BAS diff --git a/demos/split_screen/KATC.BIN b/vaporlock/tfv_credits/KATC.BIN similarity index 100% rename from demos/split_screen/KATC.BIN rename to vaporlock/tfv_credits/KATC.BIN diff --git a/demos/split_screen/Makefile b/vaporlock/tfv_credits/Makefile similarity index 70% rename from demos/split_screen/Makefile rename to vaporlock/tfv_credits/Makefile index 63b03c11..d9858e5c 100644 --- a/demos/split_screen/Makefile +++ b/vaporlock/tfv_credits/Makefile @@ -1,9 +1,9 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -TOKENIZE = ../asoft_basic-utils/tokenize_asoft +DOS33 = ../../utils/dos33fs-utils/dos33 +TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -all: split.dsk +all: split.dsk calc_freq split.dsk: BISHOP BISHOP.BAS RAINBOW.BAS RAINBOW KATC.BIN CREDITS $(DOS33) -y split.dsk BSAVE -a 0x0300 BISHOP @@ -15,7 +15,7 @@ split.dsk: BISHOP BISHOP.BAS RAINBOW.BAS RAINBOW KATC.BIN CREDITS $(DOS33) -y split.dsk BSAVE -a 0x2000 KATC.BIN BISHOP: bishop.o - ld65 -o BISHOP bishop.o -C ../linker_scripts/apple2_300.inc + ld65 -o BISHOP bishop.o -C ../../linker_scripts/apple2_300.inc bishop.o: bishop.s ca65 -o bishop.o bishop.s -l bishop.lst @@ -27,7 +27,7 @@ rainbow.o: rainbow.s ca65 -o rainbow.o rainbow.s -l rainbow.lst RAINBOW: rainbow.o - ld65 -o RAINBOW rainbow.o -C ../linker_scripts/apple2_c00.inc + ld65 -o RAINBOW rainbow.o -C ../../linker_scripts/apple2_c00.inc RAINBOW.BAS: rainbow.bas $(TOKENIZE) < rainbow.bas > RAINBOW.BAS @@ -38,7 +38,7 @@ credits.o: credits.s tfv_sprites.inc mockingboard.s \ ca65 -o credits.o credits.s -l credits.lst CREDITS: credits.o - ld65 -o CREDITS credits.o -C ../linker_scripts/apple2_4000.inc + ld65 -o CREDITS credits.o -C ../../linker_scripts/apple2_4000.inc KATC.BIN.lz4: KATC.BIN @@ -48,4 +48,5 @@ KATC.BIN: kat.bmp ../bmp2dhr/b2d kat.bmp hgr dither clean: - rm -f *~ *.o *.lst BISHOP RAINBOW CREDITS + rm -f *~ *.o *.lst BISHOP RAINBOW CREDITS calc_freq + cd docs && make clean diff --git a/demos/split_screen/RAINBOW.BAS b/vaporlock/tfv_credits/RAINBOW.BAS similarity index 100% rename from demos/split_screen/RAINBOW.BAS rename to vaporlock/tfv_credits/RAINBOW.BAS diff --git a/vaporlock/tfv_credits/README b/vaporlock/tfv_credits/README new file mode 100644 index 00000000..76f237aa --- /dev/null +++ b/vaporlock/tfv_credits/README @@ -0,0 +1,7 @@ +First vapor lock work + +Got applause when showed it off at 2018 Kansasfest + +Credits for Talbot Fantasy 7 game + + diff --git a/demos/split_screen/bishop.bas b/vaporlock/tfv_credits/bishop.bas similarity index 100% rename from demos/split_screen/bishop.bas rename to vaporlock/tfv_credits/bishop.bas diff --git a/demos/split_screen/bishop.s b/vaporlock/tfv_credits/bishop.s similarity index 100% rename from demos/split_screen/bishop.s rename to vaporlock/tfv_credits/bishop.s diff --git a/demos/split_screen/calc_freq.c b/vaporlock/tfv_credits/calc_freq.c similarity index 100% rename from demos/split_screen/calc_freq.c rename to vaporlock/tfv_credits/calc_freq.c diff --git a/demos/split_screen/credits.s b/vaporlock/tfv_credits/credits.s similarity index 100% rename from demos/split_screen/credits.s rename to vaporlock/tfv_credits/credits.s diff --git a/demos/split_screen/delay_a.s b/vaporlock/tfv_credits/delay_a.s similarity index 100% rename from demos/split_screen/delay_a.s rename to vaporlock/tfv_credits/delay_a.s diff --git a/demos/split_screen/gr_hline.s b/vaporlock/tfv_credits/gr_hline.s similarity index 100% rename from demos/split_screen/gr_hline.s rename to vaporlock/tfv_credits/gr_hline.s diff --git a/demos/split_screen/gr_putsprite.s b/vaporlock/tfv_credits/gr_putsprite.s similarity index 100% rename from demos/split_screen/gr_putsprite.s rename to vaporlock/tfv_credits/gr_putsprite.s diff --git a/demos/split_screen/kat.bmp b/vaporlock/tfv_credits/kat.bmp similarity index 100% rename from demos/split_screen/kat.bmp rename to vaporlock/tfv_credits/kat.bmp diff --git a/demos/split_screen/kat_before.png b/vaporlock/tfv_credits/kat_before.png similarity index 100% rename from demos/split_screen/kat_before.png rename to vaporlock/tfv_credits/kat_before.png diff --git a/demos/split_screen/lz4_decode.s b/vaporlock/tfv_credits/lz4_decode.s similarity index 100% rename from demos/split_screen/lz4_decode.s rename to vaporlock/tfv_credits/lz4_decode.s diff --git a/demos/split_screen/mockingboard.s b/vaporlock/tfv_credits/mockingboard.s similarity index 100% rename from demos/split_screen/mockingboard.s rename to vaporlock/tfv_credits/mockingboard.s diff --git a/demos/split_screen/move_letters.s b/vaporlock/tfv_credits/move_letters.s similarity index 100% rename from demos/split_screen/move_letters.s rename to vaporlock/tfv_credits/move_letters.s diff --git a/demos/split_screen/music.tfv b/vaporlock/tfv_credits/music.tfv similarity index 100% rename from demos/split_screen/music.tfv rename to vaporlock/tfv_credits/music.tfv diff --git a/demos/split_screen/rainbow.bas b/vaporlock/tfv_credits/rainbow.bas similarity index 100% rename from demos/split_screen/rainbow.bas rename to vaporlock/tfv_credits/rainbow.bas diff --git a/demos/split_screen/rainbow.s b/vaporlock/tfv_credits/rainbow.s similarity index 100% rename from demos/split_screen/rainbow.s rename to vaporlock/tfv_credits/rainbow.s diff --git a/demos/split_screen/split.dsk b/vaporlock/tfv_credits/split.dsk similarity index 100% rename from demos/split_screen/split.dsk rename to vaporlock/tfv_credits/split.dsk diff --git a/demos/split_screen/tfv_sprites.inc b/vaporlock/tfv_credits/tfv_sprites.inc similarity index 100% rename from demos/split_screen/tfv_sprites.inc rename to vaporlock/tfv_credits/tfv_sprites.inc diff --git a/demos/split_screen/vapor_lock.s b/vaporlock/tfv_credits/vapor_lock.s similarity index 100% rename from demos/split_screen/vapor_lock.s rename to vaporlock/tfv_credits/vapor_lock.s diff --git a/demos/split_screen/zp.inc b/vaporlock/tfv_credits/zp.inc similarity index 100% rename from demos/split_screen/zp.inc rename to vaporlock/tfv_credits/zp.inc diff --git a/demos/waterfall/Makefile b/vaporlock/waterfall/Makefile similarity index 78% rename from demos/waterfall/Makefile rename to vaporlock/waterfall/Makefile index 508fd53a..950efdd6 100644 --- a/demos/waterfall/Makefile +++ b/vaporlock/waterfall/Makefile @@ -1,7 +1,7 @@ -include ../Makefile.inc +include ../../Makefile.inc -DOS33 = ../dos33fs-utils/dos33 -PNG_TO_RLE = ../gr-utils/png2rle +DOS33 = ../../utils/dos33fs-utils/dos33 +PNG_TO_RLE = ../../utils/gr-utils/png2rle all: waterfall.dsk @@ -14,7 +14,7 @@ waterfall.dsk: WATERFALL #### WATERFALL: waterfall.o - ld65 -o WATERFALL waterfall.o -C ../linker_scripts/apple2_1000.inc + ld65 -o WATERFALL waterfall.o -C ../../linker_scripts/apple2_1000.inc waterfall.o: waterfall.s gr_copy.s gr_unrolled_copy.s vapor_lock.s \ gr_putsprite.s delay_a.s \ diff --git a/vaporlock/waterfall/README b/vaporlock/waterfall/README new file mode 100644 index 00000000..b52200f0 --- /dev/null +++ b/vaporlock/waterfall/README @@ -0,0 +1,3 @@ +vapor-lock transparent waterfall effect + +used in the Demosplash 2018 cycle-counting mega demo (1st) diff --git a/demos/waterfall/delay_a.s b/vaporlock/waterfall/delay_a.s similarity index 100% rename from demos/waterfall/delay_a.s rename to vaporlock/waterfall/delay_a.s diff --git a/demos/waterfall/gr_copy.s b/vaporlock/waterfall/gr_copy.s similarity index 100% rename from demos/waterfall/gr_copy.s rename to vaporlock/waterfall/gr_copy.s diff --git a/demos/waterfall/gr_hline.s b/vaporlock/waterfall/gr_hline.s similarity index 100% rename from demos/waterfall/gr_hline.s rename to vaporlock/waterfall/gr_hline.s diff --git a/demos/waterfall/gr_putsprite.s b/vaporlock/waterfall/gr_putsprite.s similarity index 100% rename from demos/waterfall/gr_putsprite.s rename to vaporlock/waterfall/gr_putsprite.s diff --git a/demos/waterfall/gr_unrolled_copy.s b/vaporlock/waterfall/gr_unrolled_copy.s similarity index 100% rename from demos/waterfall/gr_unrolled_copy.s rename to vaporlock/waterfall/gr_unrolled_copy.s diff --git a/demos/waterfall/mockingboard.s b/vaporlock/waterfall/mockingboard.s similarity index 100% rename from demos/waterfall/mockingboard.s rename to vaporlock/waterfall/mockingboard.s diff --git a/demos/waterfall/tfv_sprites.inc b/vaporlock/waterfall/tfv_sprites.inc similarity index 100% rename from demos/waterfall/tfv_sprites.inc rename to vaporlock/waterfall/tfv_sprites.inc diff --git a/demos/waterfall/vapor_lock.s b/vaporlock/waterfall/vapor_lock.s similarity index 100% rename from demos/waterfall/vapor_lock.s rename to vaporlock/waterfall/vapor_lock.s diff --git a/demos/waterfall/waterfall.dsk b/vaporlock/waterfall/waterfall.dsk similarity index 100% rename from demos/waterfall/waterfall.dsk rename to vaporlock/waterfall/waterfall.dsk diff --git a/demos/waterfall/waterfall.s b/vaporlock/waterfall/waterfall.s similarity index 99% rename from demos/waterfall/waterfall.s rename to vaporlock/waterfall/waterfall.s index 184740ac..01197baf 100644 --- a/demos/waterfall/waterfall.s +++ b/vaporlock/waterfall/waterfall.s @@ -375,9 +375,9 @@ adjust_xpos: jmp display_loop ; 3 .include "gr_hline.s" -.include "../asm_routines/gr_unrle.s" +.include "../../asm_routines/gr_unrle.s" .align $100 -.include "../asm_routines/keypress.s" +.include "../../asm_routines/keypress.s" .include "gr_copy.s" .include "gr_unrolled_copy.s" .align $100 diff --git a/demos/waterfall/waterfall_page1.png b/vaporlock/waterfall/waterfall_page1.png similarity index 100% rename from demos/waterfall/waterfall_page1.png rename to vaporlock/waterfall/waterfall_page1.png diff --git a/demos/waterfall/waterfall_page2.png b/vaporlock/waterfall/waterfall_page2.png similarity index 100% rename from demos/waterfall/waterfall_page2.png rename to vaporlock/waterfall/waterfall_page2.png diff --git a/demos/waterfall/waterfall_simple.s b/vaporlock/waterfall/waterfall_simple.s similarity index 100% rename from demos/waterfall/waterfall_simple.s rename to vaporlock/waterfall/waterfall_simple.s