manual chapters wip

This commit is contained in:
2023-08-10 13:11:11 -04:00
parent 2713b5e9c9
commit 49c02b2446
6 changed files with 63 additions and 8 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
# Basic instruction manual: # Basic instruction manual:
You can play using the keyboard (all functionality) or the joystick in the first port (all functionality necessary for gameplay). You can play using the keyboard (all functionality) or the joystick in any port (all functionality necessary for gameplay).
## 1. Game Option Selection. ## 1. Game Option Selection.
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
# Podstawowa instrukcja: # Podstawowa instrukcja:
Grać można przy użyciu klawiatury (wszystkie funkcjonalności) lub joysticka (wszystkie funkcjonalności niezbędne w rozgrywce). Grać można przy użyciu klawiatury (wszystkie funkcjonalności) lub joysticka w dowolnym porcie (wszystkie funkcjonalności niezbędne w rozgrywce).
## 1. Wybór opcji gry. ## 1. Wybór opcji gry.
+57 -3
View File
@@ -36,12 +36,12 @@ start
jsr RASTERMUSICTRACKER ;Init jsr RASTERMUSICTRACKER ;Init
;second POKEY init ;second POKEY init
lda #0 lda #0
sta $d218 sta AUDCTL+$10
ldy #3 ldy #3
sty $d21f sty SKCTL+$10
ldy #8 ldy #8
@ @
sta $d210,y sta POKEY+$10,y
dey dey
bpl @- bpl @-
@@ -66,6 +66,18 @@ main_loop
; EXIT THIS WAY ---> ; EXIT THIS WAY --->
jsr FadeOut jsr FadeOut
VMAIN XITVBV,7 ; jsr SetVBL (off user proc) VMAIN XITVBV,7 ; jsr SetVBL (off user proc)
lda #0 ; stereo silence
sta AUDCTL
sta AUDCTL+$10
ldy #3
sty SKCTL
sty SKCTL+$10
ldy #8
@
sta POKEY,y
sta POKEY+$10,y
dey
bpl @-
LDA #%01000000 ; DLI off LDA #%01000000 ; DLI off
STA NMIEN STA NMIEN
lda #0 ; screen off lda #0 ; screen off
@@ -84,6 +96,10 @@ NoEscape
beq scroll_down beq scroll_down
cmp #@kbcode._up cmp #@kbcode._up
beq scroll_up beq scroll_up
cmp #@kbcode._left
beq prev_chapter
cmp #@kbcode._right
jeq next_chapter
jmp main_loop jmp main_loop
scroll_down scroll_down
@@ -127,6 +143,44 @@ scroll_up
scs:mwa #man_text top_src scs:mwa #man_text top_src
jmp main_loop jmp main_loop
prev_chapter
; find first $fe above the screen
sbw top_src #screen_width temp ; start a bit above the current screen
ldy #0
prev_letter
lda (temp),y
cmp #$fe ; $fe - chapter marker
beq prev_chapter_found
dew temp
cpw temp #man_text
bcs @+
mwa #man_text top_src
jmp main_loop
@
jmp prev_letter
prev_chapter_found
mwa temp top_src
jmp main_loop
next_chapter
; find first $fe below the top of the screen
adw top_src #screen_width temp ; start ~1 line below the current screen top
ldy #0
next_letter
lda (temp),y
cmp #$fe
beq next_chapter_found
inw temp
cpw temp #man_text_end-screen_width*4
bcc @+
mwa start_address top_src
jmp main_loop
@
jmp next_letter
next_chapter_found
mwa temp top_src
jmp main_loop
;-------------------------------------------------- ;--------------------------------------------------
.proc MakeScreenCopy .proc MakeScreenCopy
mwa top_src src mwa top_src src
+4 -3
View File
@@ -53,9 +53,9 @@ with open(sys.argv[1], 'r') as f:
out = '' out = ''
for line in md: for line in md:
line = line.replace('ó', 'ɠ') # this is a dirty trick to avoid tripping 'ó' which is a legit LATIN-1 char line = line.replace('ó', 'ɠ') # this is a dirty trick to avoid tripping 'ó' which is a legit LATIN-1 char
if line.startswith('#'): if line.startswith('#'): # header
line = remove_wierd(line) line = remove_wierd(line)
out += line out += '' + line # header marker
out += '-' * len(line) + '\n' out += '-' * len(line) + '\n'
else: else:
line = remove_wierd(line) line = remove_wierd(line)
@@ -181,6 +181,7 @@ utf_to_internal = {
'Ź': 89, 'Ź': 89,
'ź': 90, 'ź': 90,
'': 93, '': 93,
'': 0xfe, # header marker
# INVERSE # INVERSE
chr(ord(' ')+128): 128+0, chr(ord(' ')+128): 128+0,
chr(ord('!')+128): 128+1, chr(ord('!')+128): 128+1,
@@ -305,7 +306,7 @@ for line in out2.split('\n'):
try: try:
bin_out.append(utf_to_internal[c]) bin_out.append(utf_to_internal[c])
except KeyError: except KeyError:
print('-'*100, 'ERROR:', c) print('-'*70, 'ERROR:', ord(c), c)
bin_out.append(0) bin_out.append(0)
if len(line) < 40: if len(line) < 40:
# bin_out += bytes(40-len(line)) # bin_out += bytes(40-len(line))
Binary file not shown.