diff --git a/028.bs/Makefile b/028.bs/Makefile
index f914b26..9bcf830 100644
--- a/028.bs/Makefile
+++ b/028.bs/Makefile
@@ -5,6 +5,7 @@ BACKGROUND_GREY_COLOR=777
paletteA_BACKGROUND_COLOR_LONG=000 153 238 255
paletteB_BACKGROUND_COLOR_LONG=000 000 102 187
paletteC_BACKGROUND_COLOR_LONG=210 002 053 255
+paletteD_BACKGROUND_COLOR_LONG=134 134 134 255
MAX_P61_SIZE=$(shell ls -Sl assets/P61.* | awk '{print $$5}' | head -1)
@@ -284,11 +285,13 @@ out/main.o: $(IMAGEDATA) \
out/level3_foreground-map.s\
out/level4_foreground-map.s\
out/level5_foreground-map.s\
+ out/level6_foreground-map.s\
out/background-map.s Makefile link.script.x\
out/menu-palette.s\
out/paletteA_playarea_fade.s out/paletteA_flags_fade.s out/paletteA_foreground-palette-table.s out/paletteA_tileFade.s\
out/paletteB_playarea_fade.s out/paletteB_flags_fade.s out/paletteB_foreground-palette-table.s out/paletteB_tileFade.s\
out/paletteC_playarea_fade.s out/paletteC_flags_fade.s out/paletteC_foreground-palette-table.s out/paletteC_tileFade.s\
+ out/paletteD_playarea_fade.s out/paletteD_flags_fade.s out/paletteD_foreground-palette-table.s out/paletteD_tileFade.s\
out/panelFade.s out/jump.raw out/falling.raw out/chaching.raw out/whoosh.raw out/yay.raw
diff --git a/028.bs/TODO.txt b/028.bs/TODO.txt
new file mode 100644
index 0000000..1be508e
--- /dev/null
+++ b/028.bs/TODO.txt
@@ -0,0 +1,2 @@
+(1) Check second pass path rendering
+(2) sprite per level
diff --git a/028.bs/assets/palette.txt b/028.bs/assets/palette.txt
index f9bb6d6..3a9a6f3 100644
--- a/028.bs/assets/palette.txt
+++ b/028.bs/assets/palette.txt
@@ -26,3 +26,6 @@ background
# ???
# main cloud
# cloud hilight
+# balloon outline
+# balloon main
+# balloon ropes
diff --git a/028.bs/assets/paletteD_background.pal b/028.bs/assets/paletteD_background.pal
new file mode 100644
index 0000000..abdac4a
--- /dev/null
+++ b/028.bs/assets/paletteD_background.pal
@@ -0,0 +1,8 @@
+000 000 014 255
+000 000 000 255
+070 070 070 255
+050 050 050 255
+173 173 173 255
+159 030 000 255
+154 154 154 255
+000 000 000 000
diff --git a/028.bs/assets/paletteD_foreground_flags.pal b/028.bs/assets/paletteD_foreground_flags.pal
new file mode 100644
index 0000000..13f45f4
--- /dev/null
+++ b/028.bs/assets/paletteD_foreground_flags.pal
@@ -0,0 +1,8 @@
+000 000 000 255
+150 150 150 255
+200 200 200 255
+066 036 019 255
+090 094 025 255
+218 202 127 255
+000 000 000 255
+000 000 000 255
diff --git a/028.bs/assets/paletteD_foreground_playarea.pal b/028.bs/assets/paletteD_foreground_playarea.pal
new file mode 100644
index 0000000..f998e11
--- /dev/null
+++ b/028.bs/assets/paletteD_foreground_playarea.pal
@@ -0,0 +1,8 @@
+000 153 238 255
+253 174 017 255
+233 216 100 255
+066 036 019 255
+090 094 025 255
+218 202 127 255
+106 126 054 255
+255 000 000 255
diff --git a/028.bs/game1.s b/028.bs/game1.s
index 7b9c25a..d132352 100644
--- a/028.bs/game1.s
+++ b/028.bs/game1.s
@@ -344,13 +344,16 @@ GameOver:
cmp.l #tutorialLevelInstallers,nextLevelInstaller
blt .notTutorial
move.l #levelInstallers,nextLevelInstaller
- move.l #"0001",levelCounter
+ move.l #"0001",levelCounter
+ bra .dontRegisterHighScore
.notTutorial:
+ jsr RegisterHighScore
+.dontRegisterHighScore:
lea gameOverMessage,a1
jsr Message
jsr WaitForJoystick
jsr RestorePanel
- jsr RegisterHighScore
+
jmp ShowHighScore
TutorialOver:
@@ -891,7 +894,7 @@ BlitCountdown:
Level 91,"STAY ON THE PATHWAYS!",100,2*2,12,10,"WELL DONE!",A,21,0,1
Level 92,"COLLECT COINS!",100,2*2,12,10,"NEXT COLLECT AN ARROW...",A,21,0,1
Level 93,"PRESS FIRE TO ACTIVATE THE ARROW",100,2*2,12,10,"WHOOHOO",A,21,0,1
- Level 94,"WATCH OUT FOR BEES!",100,2*2,12,10,"LOL - BEES",A,21,0,1
+ Level 94,"WATCH OUT FOR BEES!",100,2*2,12,10,"LOL - BEES :-)",A,21,0,1
Level 95,"REMEMBER THE PATHWAYS BEFORE THEY FADE!",75,2*2,12,10,"CLOCKS WILL STOP THE BOARD MOVING",A,21,0,1
Level 96,"PRESS FIRE TO ACTIVATE THE CLOCK",200,2*2,12,10,"EYES WILL UNHIDE THE BOARD",A,21,0,1
Level 97,"PRESS FIRE TO ACTIVATE THE EYE",100,2*2,12,10,"LEVEL 7",A,21,0,1
@@ -900,11 +903,14 @@ BlitCountdown:
Level 2,"HAVING FUN YET?",70,2*2,12,10,"LEVEL 2",B,98,2,0
Level 3,"GIDDY UP!",50,4*2,8,6,"GETTING FASTER!, LEVEL 3 COMPLETE!",C,98,2,0
Level 4,"LETS GO?",25,4*2,8,6,"LEVEL 4 COMPLETE",C,98,2,0
- Level 5,"WHAT? WHAT?!",50,4*2,8,6,"NICE! LEVEL 5 COMPLETE!",A,98,1,0
+ Level 5,"KABOOM?!",75,4*2,8,6,"PHEW!!! LEVEL 5 COMPLETE!",D,99,1,0
+ Level 6,"WHAT? WHAT?!",50,4*2,8,6,"NICE! LEVEL 6 COMPLETE!",A,98,1,0
+
Palette A
Palette B
- Palette C
+ Palette C
+ Palette D
levelData:
ds.b (level2End-level2Start)+1024
@@ -1032,6 +1038,7 @@ levelInstallers:
dc.l InstallLevel3
dc.l InstallLevel4
dc.l InstallLevel5
+ dc.l InstallLevel6
dc.l 0
nextLevelInstaller:
dc.l levelInstallers
@@ -1126,22 +1133,4 @@ startUserstack:
ds.b $1000 ; size of stack
userstack:
endif
-
- if 0
- LevelData 91,"STAY ON THE PATHWAYS!",100,2*2,12,10,"WELL DONE!",A,21,0
- LevelData 92,"COLLECT COINS!",100,2*2,12,10,"NEXT COLLECT AN ARROW...",A,21,0
- LevelData 93,"PRESS FIRE TO ACTIVATE THE ARROW",100,2*2,12,10,"WHOOHOO",A,21,0
- LevelData 94,"WATCH OUT FOR BEES!",100,2*2,12,10,"LOL - BEES",A,21,0
- LevelData 95,"REMEMBER THE PATHWAYS BEFORE THEY FADE!",75,2*2,12,10,"CLOCKS WILL STOP THE BOARD MOVING",A,21,0
- LevelData 96,"PRESS FIRE TO ACTIVATE THE CLOCK",200,2*2,12,10,"EYES WILL UNHIDE THE BOARD",A,21,0
- LevelData 97,"PRESS FIRE TO ACTIVATE THE EYE",100,2*2,12,10,"LEVEL 7",A,21,0
-
- LevelData 1,"LET'S TRY A LONGER LEVEL!",75,2*2,12,10,"PHEW!, LEVEL 1 COMPLETE!",B,99,2
- LevelData 2,"HAVING FUN YET?",70,2*2,12,10,"LEVEL 2",B,98,2
-
- LevelData 3,"GIDDY UP!",50,4*2,8,6,"GETTING FASTER!, LEVEL 3 COMPLETE!",C,98,2
- LevelData 4,"LETS GO?",25,4*2,8,6,"LEVEL 4 COMPLETE",C,98,2
-
- LevelData 5,"WHAT? WHAT?!",50,4*2,8,6,"NICE! LEVEL 5 COMPLETE!",A,98,1
- endif
end
\ No newline at end of file
diff --git a/028.bs/highscore.s b/028.bs/highscore.s
index 01d3c00..143a920 100644
--- a/028.bs/highscore.s
+++ b/028.bs/highscore.s
@@ -155,15 +155,17 @@ HighlightScore:
beq .match
move.w #MENU_TEXT_COLOR,(a0)
move.w #MENU_TEXT_BOTTOM_COLOR,MENU_BOTTOM_OFFSET(a0)
- add.l #4,a1
- add.l #MENU_OFFSET,a0
- bra .loop
+ bra .notMatch
.match:
move.w #MENU_SELECTED_TOP_COLOR,(a0)
move.w #MENU_SELECTED_BOTTOM_COLOR,MENU_BOTTOM_OFFSET(a0)
+.notMatch:
+ add.l #MENU_OFFSET,a0
+ add.l #4,a1
+ bra .loop
.done:
rts
-
+
highScore:
dc.b " HI SCORES "
dc.b 0
diff --git a/028.bs/levels/level5_foreground.tmx b/028.bs/levels/level5_foreground.tmx
index 605a6ee..9c6bc2b 100644
--- a/028.bs/levels/level5_foreground.tmx
+++ b/028.bs/levels/level5_foreground.tmx
@@ -8,17 +8,17 @@
- eJxjZ2BgsGLEjtlH5eguZwekmYBYDAtNSG4rmXLkmolPXyWZ+mghR45bLKHxooVDHkSD5OrxyOHTN1Tk6O2/3TjkYPExEOmH3DwwnN1JbP4YDnK40uRgcidy/lhIx3QwKjd88sfyYewWWHxIM+Bug9FCbjC2MQeTHAC1RFwJ
+ eJztVsENwjAMDHy6QT5skA3gkb14dRwm4NXlaCQsGXO5OKmK+uARRXC1fYnv3E4hhNsJr+mP/QwTPK/rbJ4rvyPAYvjGItgL9jT/SXwmnLJ5HnHx1vPG3cNnHTmvNyc6wwiXsl/X+GR46Hsv2KwwzSGRvKlyRombQZxgC+ih5HyQegvBancgmHDVOzqDzol64eFSw+K7H7bXTAdIWx4d1DzQq2XLoccDLA71w/oYcRmZGz3+aOkAYWi+tPzRquf1nDduT3/0cqlhyB9MP2yeoxk6qmVbT+dkOkea6anH/DGSc4s/2LzzeqflD/2OYDkRl5H3VY8/tIc1xnJuuTPmjwu4U1l7YEf6xjwSJvgLZ0FuDg==
- eJztVLsOwjAMTJA6dUdi6hcw9f8/gIkvYOoXMLESqz3peo1NqJhQT4qK4tf57JDSgX/Cq5zb8q3Z9uZsgVf3W9zLeQa2a/5Nnb0AhxZ0xa8v55G2nGt3hnM5J6oz5nU9i7M7TyODzWLIc33DlGb/SNtPPXg2y3kJ9NC90FzKCTxrvSu0die+Vnukuz77nKM+jL+nO7ia3loPHGAbyDYt9TxtkYv3/ZHWc1UMtGu196h7YcBv+PO84e/tqgHzq+lnPYK/9s/9QFvdc8SprZOZMiKbNwvlpL0+l1zgon3C5mnE/wMG3hnlOZGN9YHN01r5eDNDLHK1AnGepoDW7Z25tcyC6zLwjqGVvjno7b0TvL0aL/SgOT1orhqQr+bHux/p0JqTNcH3krdxXj2Nj/jyXcQdGiH3gQOGNxaubFI=
+ eJztVTEOgzAMDEMnXtCJFzB16/8XJl7AxAuYupaoPXG9+kJUdWDAErKIsX322SGlU44uw/o8CrZbU+eXv+sbH+sXXBzT5WPtZDSxFznXmLW11GK5N9vjpF1tF2Nvg/Nc2xL4ocZr4INeRtxz3eP7Xf1yHs3HPEW9Vawpbf6qnezZGQtzwVgWwgFd4gO1Rvmn9N2//M2cXn2f6TziDjG65lNrzHwWcQkOoDnfSBi457At4s/11fLh5pF3gPcYuiNbJzW4PnHOyeRHzbAhfiSuNp0NjrknWsdANnCI+pEfvEc9+Md+6BnmgXnqg54BRzSPLGwv7QfqdMJc8n9H96mWC8Rkf50Xnk3FprwAS6RrY2bJWHQ/sPf63+E54rtB8+p9hx7NBdue6LxG+HV+IizsBw4dFo3tcAGP3ot4r4npaij1zNUwp1OOKE+jEXLd
- eJztVUkOwzAIdJ7WxY3bdDvlUuf/36iixhJCJoCx1Rwyl0gBDzBg7NyOrSN2v++xy9sPxP+EdO7N+P0bVH0UbsZ6JPFOlTSLQp453rVyn1INQ+P+W/g1OnPzjn01/iWw9uuOzk8bvKdnJqew2GetA/BNO8cD+4T2kbY/UB+fOVtjzz0Ijly8Ui7MK90RXC6cngHZ4R1p8UascY6CeM/CnC5K7o8yjoSfgnbmoYa9sUc1evwiOLQzLOG0wqrXjnb4Au6/EfY=
+ eJztlNsKgCAMhvPVUguyw00RdHj/14gupCEynAeS8rt1+/w30Koq/JmavZ0gnO4DM2g4mGWPPJdij5cn3JlycIfeL0B/T3RR62dCPXSfDn26Xnjsw8VvZsLwyRCDLZP3K0GOgZDpIOY33QvSLy1nuezrpkGyjBFyQn8Mnw2qF5sZYwX/bypaonvyyKLv8OlNBXXuQh5ccOIMiw==
diff --git a/028.bs/levels/level6_foreground.tmx b/028.bs/levels/level6_foreground.tmx
new file mode 100644
index 0000000..605a6ee
--- /dev/null
+++ b/028.bs/levels/level6_foreground.tmx
@@ -0,0 +1,24 @@
+
+
diff --git a/028.bs/pickups.s b/028.bs/pickups.s
index 941bcc5..056d3c1 100644
--- a/028.bs/pickups.s
+++ b/028.bs/pickups.s
@@ -10,7 +10,7 @@
PICKUP_OFFSET equ (SCREEN_WIDTH_BYTES*PANEL_BIT_DEPTH*17)+(272/8)
PICKUP_NUM_FLASHES equ 6
-PICKUP_DEBOUNCE_FRAMES equ 50
+PICKUP_DEBOUNCE_FRAMES equ 10
PICKUP_SAFE_TILE1 equ $f02
PICKUP_SAFE_TILE2 equ $1682
diff --git a/028.bs/player.s b/028.bs/player.s
index 8281a48..e807df1 100644
--- a/028.bs/player.s
+++ b/028.bs/player.s
@@ -172,6 +172,11 @@ ProcessJoystick:
;; 812
;; 7 3
;; 654
+ btst.b #0,joystick
+ beq .joystickNotPressed1
+ jsr UsePickup
+.joystickNotPressed1:
+
jsr ReadJoystick
cmp.w #0,spriteR
bne .skip
@@ -181,23 +186,32 @@ ProcessJoystick:
bne .skip
cmp.w #0,spriteL
bne .skip
-
+
cmp.w #0,spriteAutoMoveEnabled
+ if 1
beq .autoMoveDisabled
-
;; Set fast as default, will be overridden to correct speed
move.w #PLAYER_FAST_PAUSE_PIXELS,playerPausePixels
move.w #PLAYER_FAST_CHECK_MISS_PIXELS,playerMissPixels
-
+ else
+ beq .autoMoveDisabled2
+ move.w #PLAYER_FAST_PAUSE_PIXELS,playerPausePixels
+ move.w #PLAYER_FAST_CHECK_MISS_PIXELS,playerMissPixels
+.autoMoveDisabled2:
+ endif
+
+
bsr GetNextAutoMove
cmp.w #1,d0
- beq .skip
+ beq .skip
.autoMoveDisabled:
+ if 0
btst.b #0,joystick
beq .joystickNotPressed
jsr UsePickup
.joystickNotPressed:
+ endif
cmp.b #3,joystickpos
bne .notRight
diff --git a/028.bs/splash_usage.txt b/028.bs/splash_usage.txt
new file mode 100644
index 0000000..1e4db8c
--- /dev/null
+++ b/028.bs/splash_usage.txt
@@ -0,0 +1 @@
+BOB_SAVE_SIZE*2*4