diff --git a/res/ATTRACT/STAR.MAZE b/res/ATTRACT/STAR.MAZE index 041635967..c1d980a1e 100644 --- a/res/ATTRACT/STAR.MAZE +++ b/res/ATTRACT/STAR.MAZE @@ -6,3 +6,4 @@ STAR.MAZE=C STAR.MAZE2=A STAR.MAZE=A +STAR.MAZE=0 diff --git a/src/demo/star.maze.a b/src/demo/star.maze.a new file mode 100644 index 000000000..7ae53cc4a --- /dev/null +++ b/src/demo/star.maze.a @@ -0,0 +1,59 @@ +;license:MIT +;(c) 2024 by qkumba + +!cpu 6502 +!to "build/DEMO/STAR.MAZE#060300",plain +*=$300 + + !source "src/constants.a" ; no code in these + !source "src/macros.a" + + +READ_RAM2_WRITE_RAM2 + jsr EnableAccelerator + +LOAD_FILE_KEEP_DIR star_maze, star_maze_dir_e-star_maze_dir_b + +READ_ROM_NO_WRITE + + lda #$60 + sta $21FD + jsr $2000 ; decompress + sta $7A07 + sty $7A08 ; reset vector + + lda #callback + sta $7B3B + + lda #$4C + sta $7BD3 + sta $9849 + ldx #0 + stx $7BD4 + stx $984A + inx + stx $7BD5 + stx $984B + + +DISABLE_ACCEL + jmp $79D3 + +callback + dec counter + beq + + jmp $87AB ++ jmp $100 + +counter !byte 5 + +star_maze + !byte star_maze_e-star_maze_b +star_maze_b +star_maze_dir_b + !text "X" +star_maze_dir_e + !text "/STAR.MAZE" +star_maze_e + +!if * > $3F0 { + !error "code is too large, ends at ", * +}