New colors and RIP

This commit is contained in:
Pecusx
2025-03-04 20:42:20 +01:00
parent f62a3444f5
commit d4c39d5d64
4 changed files with 194 additions and 38 deletions
+2
View File
@@ -25,6 +25,8 @@ last_line_r
dta $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$27,$50,$9E,$9F,$A0,$A1,$A2,$A3,$A4,$A5,$51,$29,$01,$6F,$70,$01,$01,$71,$72,$01,$01,$01
last_line_l
dta $01,$01,$01,$7F,$7E,$01,$01,$7D,$7C,$01,$27,$D0,$9E,$9F,$A0,$A1,$A2,$A3,$A4,$A5,$D1,$29,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
last_line_RIP
dta $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$27,$D0,$9E,$9F,$A0,$A1,$A2,$A3,$A4,$A5,$D1,$29,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01
.align $100
; Right animation
+162 -34
View File
@@ -1,19 +1,8 @@
import json
color_labels_used = set()
def load_atrview(filename: str, page: int = 1) -> list[str]:
with open(filename, 'rb') as f:
full_json = json.loads(f.read().decode('utf-8-sig'))
dta = full_json['Pages'][page-1]['View']
# very unpythonic side effect - printing colors consts
const_name = filename.replace('.atrview', '')
cols = full_json['Colors']
for i,val in enumerate([cols[i:i+2] for i in range(0, len(cols), 2)]):
color_label = const_name + 'p' + str(page) + 'c' + str(i)
if color_label not in color_labels_used:
print( color_label + ' = $' + val)
color_labels_used.add(color_label)
dta = json.loads(f.read().decode('utf-8-sig'))['Pages'][page-1]['View']
return [dta[i*80:(i+1)*80][:64] for i in range(len(dta)//80)]
def print_lines(dta, line_from: int, line_to:int):
@@ -31,8 +20,8 @@ print("branch1")
print_lines(dta, 7,12)
print("branch2")
print_lines(dta, 12,17)
print("branch3")
print_lines(dta, 17,22)
#print("branch3")
#print_lines(dta, 17,22)
print()
print('last_line_r')
@@ -45,54 +34,115 @@ dta = load_atrview('phase1l.atrview')
d = dta[-1]
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print('last_line_RIP')
dta = load_atrview('rip.atrview')
d = dta[-1]
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print("""
.align $100
; Right animation
gamescreen_lower1r ; phase 1 page 1""")
gamescreen_r_ph1p1 ; phase 1 page 1""")
dta = load_atrview('phase1r.atrview')
for l, d in enumerate(dta[-9:-1], 1):
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print("gamescreen_lower2r ; phase 2 page 1")
print('gamescreen_r_ph1p2 ; phase 1 page 2')
dta = load_atrview('phase1r.atrview', page=2)
print_lines(dta, -9, -1)
print("gamescreen_r_ph2p1 ; phase 2 page 1")
dta = load_atrview('phase2r.atrview')
for l, d in enumerate(dta[-9:-1], 1):
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print('gamescreen_lower3r ; phase 2 page 2')
print('gamescreen_r_ph2p2 ; phase 2 page 2')
dta = load_atrview('phase2r.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_lower4r ; phase 2 page 3')
print('gamescreen_r_ph2p3 ; phase 2 page 3')
dta = load_atrview('phase2r.atrview', page=3)
print_lines(dta, -9, -1)
print('gamescreen_lower5r ; phase 2 page 4')
print('gamescreen_r_ph2p4 ; phase 2 page 4')
dta = load_atrview('phase2r.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_lower6r ; phase 3 page 1')
print('gamescreen_r_ph2p5 ; phase 2 page 5')
dta = load_atrview('phase2r.atrview', page=5)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p6 ; phase 2 page 6')
dta = load_atrview('phase2r.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p7 ; phase 2 page 7')
dta = load_atrview('phase2r.atrview', page=7)
print_lines(dta, -9, -1)
print('gamescreen_r_ph2p8 ; phase 2 page 8')
dta = load_atrview('phase2r.atrview', page=8)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p1 ; phase 3 page 1')
dta = load_atrview('phase3r.atrview', page=1)
print_lines(dta, -9, -1)
print('gamescreen_lower7r ; phase 3 page 2')
print('gamescreen_r_ph3p2 ; phase 3 page 2')
dta = load_atrview('phase3r.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_lower8r ; phase 3 page 3')
print('gamescreen_r_ph3p3 ; phase 3 page 3')
dta = load_atrview('phase3r.atrview', page=3)
print_lines(dta, -9, -1)
print('gamescreen_lower9r ; phase 3 page 4')
print('gamescreen_r_ph3p4 ; phase 3 page 4')
dta = load_atrview('phase3r.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_lower10r ; phase 3 page 5')
print('gamescreen_r_ph3p5 ; phase 3 page 5')
dta = load_atrview('phase3r.atrview', page=5)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p6 ; phase 3 page 6')
dta = load_atrview('phase3r.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p7 ; phase 3 page 7')
dta = load_atrview('phase3r.atrview', page=7)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p8 ; phase 3 page 8')
dta = load_atrview('phase3r.atrview', page=8)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p9 ; phase 3 page 9')
dta = load_atrview('phase3r.atrview', page=9)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p10 ; phase 3 page 10')
dta = load_atrview('phase3r.atrview', page=10)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p11 ; phase 3 page 11')
dta = load_atrview('phase3r.atrview', page=11)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p12 ; phase 3 page 12')
dta = load_atrview('phase3r.atrview', page=12)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p13 ; phase 3 page 13')
dta = load_atrview('phase3r.atrview', page=13)
print_lines(dta, -9, -1)
print('gamescreen_r_ph3p14 ; phase 3 page 14')
dta = load_atrview('phase3r.atrview', page=14)
print_lines(dta, -9, -1)
print("""
; left animation
gamescreen_lower1l ; phase 1 page 1""")
gamescreen_l_ph1p1 ; phase 1 page 1""")
# pj = load_atrview('phase1l.atrview')
# print_lines(dta, -9, -1)
with open('phase1l.atrview', 'rb') as f:
@@ -102,38 +152,116 @@ dta = [dta[i*80:(i+1)*80][:64] for i in range(len(dta)//80)]
for l, d in enumerate(dta[-9:-1], 1):
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print('gamescreen_lower2l ; phase 2 page 1')
print('gamescreen_l_ph1p2 ; phase 1 page 2')
dta = load_atrview('phase1l.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p1 ; phase 2 page 1')
dta = load_atrview('phase2l.atrview', page=1)
print_lines(dta, -9, -1)
print('gamescreen_lower3l ; phase 2 page 2')
print('gamescreen_l_ph2p2 ; phase 2 page 2')
dta = load_atrview('phase2l.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_lower4l ; phase 2 page 3')
print('gamescreen_l_ph2p3 ; phase 2 page 3')
dta = load_atrview('phase2l.atrview', page=3)
print_lines(dta, -9, -1)
print('gamescreen_lower5l ; phase 2 page 4')
print('gamescreen_l_ph2p4 ; phase 2 page 4')
dta = load_atrview('phase2l.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_lower6l ; phase 3 page 1')
print('gamescreen_l_ph2p5 ; phase 2 page 5')
dta = load_atrview('phase2l.atrview', page=5)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p6 ; phase 2 page 6')
dta = load_atrview('phase2l.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p7 ; phase 2 page 7')
dta = load_atrview('phase2l.atrview', page=7)
print_lines(dta, -9, -1)
print('gamescreen_l_ph2p8 ; phase 2 page 8')
dta = load_atrview('phase2l.atrview', page=8)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p1 ; phase 3 page 1')
dta = load_atrview('phase3l.atrview', page=1)
print_lines(dta, -9, -1)
print('gamescreen_lower7l ; phase 3 page 2')
print('gamescreen_l_ph3p2 ; phase 3 page 2')
dta = load_atrview('phase3l.atrview', page=2)
print_lines(dta, -9, -1)
print('gamescreen_lower8l ; phase 3 page 3')
print('gamescreen_l_ph3p3 ; phase 3 page 3')
dta = load_atrview('phase3l.atrview', page=3)
print_lines(dta, -9, -1)
print('gamescreen_lower9l ; phase 3 page 4')
print('gamescreen_l_ph3p4 ; phase 3 page 4')
dta = load_atrview('phase3l.atrview', page=4)
print_lines(dta, -9, -1)
print('gamescreen_lower10l ; phase 3 page 5')
print('gamescreen_l_ph3p5 ; phase 3 page 5')
dta = load_atrview('phase3l.atrview', page=5)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p6 ; phase 3 page 6')
dta = load_atrview('phase3l.atrview', page=6)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p7 ; phase 3 page 7')
dta = load_atrview('phase3l.atrview', page=7)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p8 ; phase 3 page 8')
dta = load_atrview('phase3l.atrview', page=8)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p9 ; phase 3 page 9')
dta = load_atrview('phase3l.atrview', page=9)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p10 ; phase 3 page 10')
dta = load_atrview('phase3l.atrview', page=10)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p11 ; phase 3 page 11')
dta = load_atrview('phase3l.atrview', page=11)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p12 ; phase 3 page 12')
dta = load_atrview('phase3l.atrview', page=12)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p13 ; phase 3 page 13')
dta = load_atrview('phase3l.atrview', page=13)
print_lines(dta, -9, -1)
print('gamescreen_l_ph3p14 ; phase 3 page 14')
dta = load_atrview('phase3l.atrview', page=14)
print_lines(dta, -9, -1)
print("""
; RIP screens
RIPscreen_l_nobranch ; page 1""")
with open('rip.atrview', 'rb') as f:
pj=json.loads(f.read().decode('utf-8-sig'))
dta = pj['Pages'][0]['View']
dta = [dta[i*80:(i+1)*80][:64] for i in range(len(dta)//80)]
for l, d in enumerate(dta[-9:-1], 1):
print(f' dta '+','.join([f'${d[i:i+2]}' for i in range(0, len(d), 2)]))
print('RIPscreen_r_nobranch ; page 2')
dta = load_atrview('rip.atrview', page=2)
print_lines(dta, -9, -1)
print('RIPscreen_l_branch ; page 3')
dta = load_atrview('rip.atrview', page=3)
print_lines(dta, -9, -1)
print('RIPscreen_r_branch ; page 4')
dta = load_atrview('rip.atrview', page=4)
print_lines(dta, -9, -1)
+30 -4
View File
@@ -174,7 +174,12 @@ DLI2
nop
nop
nop
mva #$c6 COLBAK ; green
mva #$84 COLBAK ; thin line
sta WSYNC
mva #$DA COLBAK ; additional lines
sta WSYNC
sta WSYNC
mva #$c8 COLBAK ; green
inc SyncByte
pla
rti
@@ -191,7 +196,7 @@ DLI4
sta WSYNC
sta WSYNC
;sta WSYNC
mva #$86 COLPF2 ; blue pants
mva #$92 COLPF2 ; blue pants
inc dliCount
pla
rti
@@ -418,14 +423,16 @@ no_2branch_l
LevelDeath
jsr SetRIPscreen
mva #2 StateFlag
@ mva RANDOM COLBAK
jsr GetKeyFast
@
;mva RANDOM COLBAK
jsr GetKey
cmp #@kbcode._space
bne @-
; restart game
jsr ScoreClear
jsr InitBranches
jsr draw_branches
jsr SetLumberjackPosition
jsr LevelReset
mva #24 PowerValue ; half power
jsr draw_PowerBar
@@ -447,6 +454,7 @@ LevelOver
;--------------------------------------------------
:5 WaitForSync
mva #>font_game_rip LowCharsetBase
mwa #last_line_RIP lastline_addr
lda LumberjackDir ; branch and Lumerjack ?
cmp branches_list+5
beq BranchDeath
@@ -470,6 +478,24 @@ leftbranch
rts
.endp
;--------------------------------------------------
.proc SetLumberjackPosition
;--------------------------------------------------
WaitForSync
lda LumberjackDir
cmp #1
beq right_side
left_side
mva #>font_game_lower_left LowCharsetBase
mwa #last_line_l lastline_addr
mwa #gamescreen_l_ph1p1 animation_addr
rts
right_side
mva #>font_game_lower_right LowCharsetBase
mwa #last_line_r lastline_addr
mwa #gamescreen_r_ph1p1 animation_addr
rts
.endp
;--------------------------------------------------
.proc AudioInit
;--------------------------------------------------
; pokeys init
BIN
View File
Binary file not shown.