diff --git a/appleiibot/Makefile b/appleiibot/Makefile index 5529bf85..717e0240 100644 --- a/appleiibot/Makefile +++ b/appleiibot/Makefile @@ -7,7 +7,7 @@ all: appleiibot.dsk convert_to convert_back convert_qkumba make_boxes appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS \ CIRCLES.BAS AUTUMN.BAS QKUMBA.BAS ASTEROID.BAS PERSON.BAS SHIP.BAS \ - CONCERT.BAS NYAN.BAS RASTER.BAS RASTER2.BAS RASTER3.BAS LOTS.BAS LOAD \ + CONCERT.BAS NYAN.BAS RASTER.BAS DHGR.BAS RASTER3.BAS LOTS.BAS LOAD \ RASTER4.BAS RASTER5.BAS PUMPKIN.BAS PUMPKIN_SMALL.BAS LADY.BAS \ A2.BAS FOURAM.BAS FLOPPY.BAS QR.BAS A2_4EVER.BAS RLE.BAS RLE2.BAS \ RLEASM.BAS HORIZON.BAS FLYER.BAS STAR.BAS HYPER.BAS FASTAR.BAS \ @@ -27,7 +27,7 @@ appleiibot.dsk: E2.BAS FLAME.BAS FLAME2.BAS \ $(DOS33) -y appleiibot.dsk SAVE A NYAN.BAS $(DOS33) -y appleiibot.dsk SAVE A CONCERT.BAS $(DOS33) -y appleiibot.dsk SAVE A RASTER.BAS - $(DOS33) -y appleiibot.dsk SAVE A RASTER2.BAS + $(DOS33) -y appleiibot.dsk SAVE A DHGR.BAS $(DOS33) -y appleiibot.dsk SAVE A RASTER3.BAS $(DOS33) -y appleiibot.dsk SAVE A RASTER4.BAS $(DOS33) -y appleiibot.dsk SAVE A RASTER5.BAS @@ -177,8 +177,8 @@ RASTER.BAS: raster.bas #### -RASTER2.BAS: raster2.bas - $(TOKENIZE) < raster2.bas > RASTER2.BAS +DHGR.BAS: dhgr.bas + $(TOKENIZE) < dhgr.bas > DHGR.BAS #### diff --git a/bot_demo/CIRCLES.BAS b/bot_demo/CIRCLES.BAS new file mode 100644 index 00000000..5a3b9e61 Binary files /dev/null and b/bot_demo/CIRCLES.BAS differ diff --git a/bot_demo/Makefile b/bot_demo/Makefile index 3ef81c72..4a9ca1a8 100644 --- a/bot_demo/Makefile +++ b/bot_demo/Makefile @@ -35,7 +35,8 @@ BOTDEMO: botdemo.o botdemo.o: botdemo.s \ zp.inc hardware.inc nozp.inc \ load.s bg.inc \ - interrupt_handler.s + interrupt_handler.s \ + wipe.s ca65 -o botdemo.o botdemo.s -l botdemo.lst @@ -60,4 +61,4 @@ bg.inc: bg.png #### clean: - rm -f *~ *.o *.lst RLE BOTDEMO + rm -f *~ *.o *.lst RLE BOTDEMO LOADER BOTDEMO.LZ4 diff --git a/bot_demo/botdemo.s b/bot_demo/botdemo.s index d90ab581..97a89d1f 100644 --- a/bot_demo/botdemo.s +++ b/bot_demo/botdemo.s @@ -6,6 +6,8 @@ .include "zp.inc" .include "hardware.inc" +STROUT = $db3a + DONE = 0 DO_LOAD = 1 DO_LIST = 2 @@ -52,43 +54,54 @@ mockingboard_not_found: ; init screen jsr TEXT jsr HOME + bit SET_GR + bit TEXTGR bit KEYRESET - ; GR part -; bit PAGE1 -; bit LORES ; 4 -; bit SET_GR ; 4 - -; bit FULLGR ; 4 - ;=================== ; init vars -; lda #0 -; sta DRAW_PAGE -; lda #4 -; sta DISP_PAGE - ;============================= - ; Load desire 1st + ; Load bg -; lda #desire_rle -; sta GBASH -; lda #$c -; jsr load_rle_gr + lda #bg_rle + sta GBASH + lda #$c + jsr load_rle_gr + + jsr do_wipe ; jsr gr_copy_to_current ; copy to page1 -; jsr page_flip + ;============================= + ; mockingboard where available -; jsr wait_until_keypress + lda #5 + sta CH + lda #21 + sta CV + jsr VTAB + + lda #mock_string + + jsr STROUT + + lda #12 + sta CH + lda #22 + sta CV + jsr VTAB + + lda #mock2_string + + jsr STROUT -; jsr do_list -; jsr do_list done: @@ -123,30 +136,59 @@ not_trigger: jmp done +mock_string: + .byte ") ) ) MOCKINGBOARD SOUND ( ( (",0 +mock2_string: + .byte "WHERE AVAILABLE",0 + todo_list: + + .byte DO_LOAD,1 + .byte DO_LIST,5 + .byte DO_RUN,15 ; a2 + .byte DO_LOAD,1 .byte DO_LIST,4 .byte DO_RUN,10 ; flyer + .byte DO_LOAD,1 .byte DO_LIST,4 .byte DO_RUN,20 ; nyan + .byte DO_LOAD,1 .byte DO_LIST,5 .byte DO_RUN,15 ; qr + + + + .byte DO_LOAD,1 + .byte DO_LIST,5 + .byte DO_RUN,15 + + .byte DO_LOAD,1 + .byte DO_LIST,5 + .byte DO_RUN,15 + + .byte DO_LOAD,1 + .byte DO_LIST,5 + .byte DO_RUN,15 + + .byte DO_LOAD,1 + .byte DO_LIST,5 + .byte DO_RUN,15 + .byte DONE,$FF command: .byte $00 which: .byte $00 -timeout: .byte $01 +timeout: .byte 10 trigger: .byte $00 original_stack: .byte $00 -; .include "gr_unrle.s" -; .include "gr_unrle_large.s" -; .include "gr_offsets.s" + .include "gr_unrle.s" + .include "gr_offsets.s" ; .include "gr_copy.s" -; .include "gr_copy_large.s" -; .include "gr_pageflip.s" + .include "bg.inc" .include "pt3_lib_core.s" .include "pt3_lib_init.s" @@ -155,6 +197,7 @@ original_stack: .byte $00 ; if you're self patching, detect has to be after interrupt_handler.s .include "pt3_lib_mockingboard_detect.s" +.include "wipe.s" .include "load.s" .include "nozp.inc" diff --git a/bot_demo/hello.bas b/bot_demo/hello.bas index c830d2df..8d480428 100644 --- a/bot_demo/hello.bas +++ b/bot_demo/hello.bas @@ -1,2 +1,7 @@ 5 HOME - +10 PRINT " LOADING APPLEBOT DEMO V0.1" +15 PRINT +20 HTAB 15:PRINT " _ " +30 HTAB 15:PRINT " _: :_ _" +40 HTAB 15:PRINT ":_: _: : " +50 PRINT CHR$(4)"BRUN LOADER" diff --git a/bot_demo/load.s b/bot_demo/load.s index 73e3f941..10ef29ad 100644 --- a/bot_demo/load.s +++ b/bot_demo/load.s @@ -8,17 +8,27 @@ CHRGET = $00B1 SCRTCH = $D64B RESTART = $D43C +FIX_LINKS = $D4F2 INLIN2 = $D52E PARSE_INPUT_LINE = $d559 TRACE_ = $D805 load_file: + ;================= ;================= ; run list command + ;================= + ;================= + do_list: + ; try to get things back to normal bit SET_TEXT + bit LORES bit PAGE0 + bit TEXTGR + + jsr TEXT jsr HOME lda #