diff --git a/graphics/hgr/bubble_universe/bubble_c64.s b/graphics/hgr/bubble_universe/bubble_c64.s index c397d154..73d9c232 100644 --- a/graphics/hgr/bubble_universe/bubble_c64.s +++ b/graphics/hgr/bubble_universe/bubble_c64.s @@ -9,12 +9,13 @@ ; originally was working off the BASIC code posted on the pouet forum ; original effect by yuruyrau on twitter +; 2304 bytes -- first working version ; soft-switches -;KEYPRESS = $C000 -;KEYRESET = $C010 +KEYPRESS = $C000 +KEYRESET = $C010 PAGE1 = $C054 PAGE2 = $C055 @@ -47,7 +48,7 @@ HGR_PAGE = $E6 ; const ;NUM = 32 -NUM = 24 +;NUM = 24 bubble: @@ -98,11 +99,14 @@ next_frame: sta is1_smc+1 sta is2_smc+1 +num1_smc: lda #24 ; 40 sta I i_loop: +num2_smc: lda #24 ; 200 + sta J j_loop: ldx U @@ -203,6 +207,35 @@ done_i: inc T end: + + lda KEYPRESS + bpl flip_pages + bit KEYRESET + ; 0110 -> 0100 + and #$5f ; to handle lowercase too... + + cmp #'A' + bne check_z + inc num1_smc+1 + jmp done_keys +check_z: + cmp #'Z' + bne check_j + dec num1_smc+1 + jmp done_keys +check_j: + cmp #'J' + bne check_m + inc num2_smc+1 + jmp done_keys +check_m: + cmp #'M' + bne done_keys + dec num2_smc+1 + +done_keys: + +flip_pages: ; flip pages ; if $20 (draw PAGE1) draw PAGE2, SHOW page1 diff --git a/graphics/hgr/bubble_universe/hello.bas b/graphics/hgr/bubble_universe/hello.bas index 133a44bb..233e75d5 100644 --- a/graphics/hgr/bubble_universe/hello.bas +++ b/graphics/hgr/bubble_universe/hello.bas @@ -1,2 +1,13 @@ 5 HOME -10 PRINT CHR$(4);"CATALOG" +10 PRINT " BUBBLE UNIVERSE EXPERIMENTS" +15 PRINT " BY DEATER / FAST CODE BY SERATO_FIG" +20 PRINT +25 PRINT "THIS VERSION YOU CAN CHANGE" +27 PRINT "PARAMETERS ON THE FLY" +28 PRINT "+ TRY PRESSING A/Z TO INC/DEC I" +29 PRINT "+ TRY PRESSING J/M TO INC/DEC J" +30 PRINT:PRINT "PRESS ANY KEY TO START" +40 GET A$ +50 IF A$="Q" THEN END +60 PRINT:PRINT CHR$(4)"BRUN BUBBLE_C64" +