diff --git a/028.bs/TODO.txt b/028.bs/TODO.txt
deleted file mode 100644
index 1be508e..0000000
--- a/028.bs/TODO.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-(1) Check second pass path rendering
-(2) sprite per level
diff --git a/028.bs/game1.s b/028.bs/game1.s
index f369602..5c6e370 100644
--- a/028.bs/game1.s
+++ b/028.bs/game1.s
@@ -247,7 +247,7 @@ GameLoop:
PostCheckPlayerMiss:
bsr RenderNextForegroundFrame
jsr RenderNextBackgroundFrame
-
+
cmp.w #0,pathwayClearPending
beq .dontClearPathway
jsr ClearPathway
@@ -905,7 +905,7 @@ BlitCountdown:
Level 1,"WELCOME TO BLOCKY SKIES!",75,2*2,12,10,"PHEW!, LEVEL 1 COMPLETE!",A,99,0,1,pig
Level 2,"HAVING FUN YET?",70,2*2,12,10,"LEVEL 2",B,98,2,0,robot
Level 3,"GIDDY UP!",50,4*2,8,6,"GETTING FASTER!, LEVEL 3 COMPLETE!",C,98,2,0,pig
- Level 4,"MOOOOOOOO!",200,4*2,8,6,"LEVEL 4 COMPLETE",E,99,2,0,cow
+ Level 4,"MOO!",75,4*2,8,6,"ALRIGHT! LEVEL 4 COMPLETE!!",E,99,2,0,cow
Level 5,"KABOOM?!",200,4*2,8,6,"PHEW!!! LEVEL 5 COMPLETE!",D,99,1,0,tank
Level 6,"WHAT? WHAT?!",50,4*2,8,6,"NICE! LEVEL 6 COMPLETE!",A,98,1,0,cow
diff --git a/028.bs/highscore.s b/028.bs/highscore.s
index c90a48e..019c26b 100644
--- a/028.bs/highscore.s
+++ b/028.bs/highscore.s
@@ -68,10 +68,15 @@ ShowHighScore:
RenderHighScore:
- lea highScore,a1
- lea splash,a0
- move.w #(320/2)-(6*8)+4,d0
+ lea splash,a0
+ lea pressFire,a1
+ move.l #(320/2)-(6*8),d0
move.w #150-16,d1
+ jsr DrawMaskedText85
+ lea splash,a0
+ lea highScore,a1
+ move.w #(320/2)-(6*8)+4,d0
+ add.w #16,d1
jsr DrawMaskedText85
lea highScores,a2
.loop:
@@ -85,11 +90,6 @@ RenderHighScore:
jsr DrawMaskedText85
cmp.l #endHighScores,a2
bne .loop
- lea splash,a0
- lea pressFire,a1
- move.l #(320/2)-(6*8),d0
- add.w #16,d1
- jsr DrawMaskedText85
rts
AddHighScore:
@@ -176,11 +176,11 @@ splashCopperListBplPtr:
dc.w PLAY_COPPER_WORD,$fffe
dc.w COLOR31
- dc.w MENU_TITLE_TOP_COLOR
+ dc.w MENU_FIRE_TOP_COLOR
dc.w PLAY_COPPER_WORD+(($1000/4)*3),$fffe
dc.w PLAY_COPPER_WORD+(($1000/4)*3),$fffe
dc.w COLOR31
- dc.w MENU_TITLE_BOTTOM_COLOR
+ dc.w MENU_FIRE_BOTTOM_COLOR
dc.w PLAY_COPPER_WORD+$1000,$fffe
dc.w COLOR31
firstTopColor:
@@ -214,12 +214,12 @@ secondTopColor:
dc.w MENU_TEXT_COLOR
dc.w $ffdf,$fffe
dc.w $06df,$fffe
- dc.w COLOR31,MENU_FIRE_BOTTOM_COLOR
+ dc.w COLOR31,MENU_TEXT_BOTTOM_COLOR
dc.w $9df,$fffe
dc.w COLOR31
- dc.w MENU_FIRE_TOP_COLOR
+ dc.w MENU_TEXT_COLOR
dc.w $16df,$fffe
- dc.w COLOR31,MENU_FIRE_BOTTOM_COLOR
+ dc.w COLOR31,MENU_TEXT_BOTTOM_COLOR
dc.l $fffffffe
diff --git a/028.bs/levels/level4_foreground.tmx b/028.bs/levels/level4_foreground.tmx
index 78d7302..2f07e9f 100644
--- a/028.bs/levels/level4_foreground.tmx
+++ b/028.bs/levels/level4_foreground.tmx
@@ -8,17 +8,17 @@
- eJxjZ2BgsGLEjtlH5eguZwekmYBYDAtNidxWPHKVNLBvqMtZQuNFC4c8iB5scrvJ1Fc/BPwAiw9K4no0ndM/fywnMx3QOw+QK4fPf/jyFbXdSY38MSpHvXIDOX/QOw/QO50PJncSyh/SDLjbYLSQG4xtzMEkBwB88FuB
+ eJxjZ2BgsGLEjhmgcuxY1GATG05y+DCt7APJ2wExExCLYaEZoDQ2Nfj00UpuKw3kcNmHj4aZCRODiTNRaJ8lME608MgzQGlsavDpG2xyu8nQh4/WwhMf5LpTDBofQyl/0CJfkZs/dqPFgxgRZtI6f5CT7oaKHKH8gSs+yM2ryPkDV/phQIrXhSTENTb11MwDgUBcT2UzSc0f+OqPgcof5KZJfPmKmDyXjRbftHALofxBq/pDmoFwexebGnz68MkNpjbtYGzvAgB7VGBH
- eJztVTkOwjAQtJGo0iOlyguo8v8HpOIFqXhBqrRohUcZDT4DEkhkmgV7dzx7gXMH/gXrtwU0YHLv6719QkjgWXbcMSyf0Tt39dvZHM40vvMbt/lrHbQ2E33eq6XkP/in3pQWcC6JO7PnyvdKORhPl+DCHec4RnxT8Ya7aIButcyF2qBWNe+kfHJ1Un7tiXGhBifhhs7Bv9YwN8eo50q+ep/TnOoX17k0G+aLee0SFujDd+SqWpAr58y7FuuvznIOHI/czV6CJtWJ/PpIXAzcQ32vFIt8UvVGT2rmlvVw3Wr3HO9Z3rCdcMR6iDO2sR0HmJP3owWIw5zE3sOMql5o5t8j/R+IxTBv36iXOXl3WjGXXXZzau9rsTfuwO/hAV5wUwI=
+ eJztVTkOwjAQtItUeUEqXkDF/x9AxQtc5QWp0oJFRhove6VBQmIk5Nizp3fXlPLHr+Lx+l1rKbtydqsjdy/vsy2htxl+NE7a7HvmOJYsZ+XJ/jkfADKwqcWZQfcXyWr+pzqu+Ob4l4ObaZV6XX4hGyvF43EA24xyAGQtvPxhu+tf6hjHTH65HtjLOCMg30h2FvfqnbXyOR9cA6mn3WWGA6ZE/HyXHbvDWXq9Blw/2Qc8F1wXoAm/GiAT9Rf4duxRR9m/+MY8ZeZD9jzb9DhgVc4Y2n0jb6sWmHGNg06Pf6Vz1EPOheaXgfcW6yLssm2sVv9YdUQvSd+tjP3G8hyPtGVxEbzebw7n9Sdyk7rRe6XZ5tribYlmyANis9BsagDy47cuw2XjO6Pn9V+kx//nlj++M64t8jvbc398D09ufmnc
- eJztld0KgzAMhe2jTefU/biC6JW+/2uoYCErTfNjJ1743Qj15CQ9Ac2yizORG3nNjVljjayH0z2356iYDfM8ihT91nxjGRfmV6vxhx4N4fHaeaciQSZaD05dR2hcxpys4e7uiP6NnGN6H2pfWrC5uExePec+2izq5X25ZV0DrfXq4D6sYI+OkqGFPTn6D6HpD/5mSVjv588/MHYFCe1EwoOo0Xim6N8GzqlZY4T8tJ7S/4Q0wyqi//c+9vI9+XwX6ZgB5+gTDw==
+ eJxjYBgFowABghgH2gXUAV5AfzgNE7/QCngjhY8zjcMKZBet7RjKwIdA2LiQEHZRRKgF2YfLzBgK44lS/QMNfPG43xUoF00D/4HsdEUzN5bG4Uhr86kB/PC40Y2G7gfZS0vzRwFpwB8YF+6j8THsAABh4Ag/
diff --git a/028.bs/player.s b/028.bs/player.s
index 44b9112..73838d8 100644
--- a/028.bs/player.s
+++ b/028.bs/player.s
@@ -173,9 +173,6 @@ UpdatePlayer:
ProcessJoystick:
- ;; 812
- ;; 7 3
- ;; 654
btst.b #0,joystick
beq .joystickNotPressed1
jsr UsePickup
@@ -210,29 +207,55 @@ ProcessJoystick:
beq .skip
.autoMoveDisabled:
+
+
+DiagonalJoystick: macro
+ cmp.b #\1,joystickpos
+ bne .\@1
+ cmp.b #\2,lastJoystickPos
+ bne .\@2
+ move.b #\3,joystickpos
+ bra .process
+.\@2:
+ move.b #\2,joystickpos
+ bra .process
+.\@1:
+ endm
+
+ ;; 812
+ ;; 7 3
+ ;; 654
+
if 0
- btst.b #0,joystick
- beq .joystickNotPressed
- jsr UsePickup
-.joystickNotPressed:
+ DiagonalJoystick 2,1,3
+ DiagonalJoystick 8,1,7
+ DiagonalJoystick 4,3,5
+ DiagonalJoystick 6,5,7
+
+ move.b joystickpos,lastJoystickPos
endif
+.process:
cmp.b #3,joystickpos
bne .notRight
PlayerMoveRight
+ bra .skip
.notRight:
cmp.b #1,joystickpos
bne .notUp
PlayerMoveUp
+ bra .skip
.notUp:
cmp.b #5,joystickpos
bne .notDown
PlayerMoveDown
+ bra .skip
.notDown:
cmp.b #7,joystickpos
bne .notLeft
PlayerMoveLeft
-.notLeft:
+ bra .skip
+.notLeft:
.skip:
rts
@@ -645,6 +668,10 @@ playerSpriteConfig:
include "sprite_data.i"
+ if 0
+lastJoystickPos:
+ dc.w 0
+ endif
spritePlayerFallingAnimation:
dc.w 0
currentSpriteOffset: