peasant: more work on word list

This commit is contained in:
Vince Weaver 2021-11-15 20:39:43 -05:00
parent ab1bdb4844
commit b174e06b77
4 changed files with 172 additions and 11 deletions

View File

@ -75,6 +75,7 @@ qload.o: qload.s qboot.inc \
hgr_input.s \
hgr_tables.s \
hgr_text_box.s \
text/word_list.s \
clear_bottom.s \
hgr_hgr2.s \
gr_offsets.s \

View File

@ -77,6 +77,8 @@ disp_put_string_loop:
ldy #0
lda (OUTL),Y
beq disp_put_string_done
bmi disp_use_lookup
cmp #13
beq disp_end_of_line
@ -105,7 +107,14 @@ disp_put_string_done:
rts
disp_use_lookup:
and #$7f
tax
lda text_offset_table,X
jsr hgr_put_char_cursor
inc CURSOR_X
jsr inc_outl
jmp disp_put_string_loop
;============================
; like above, but don't save
@ -117,3 +126,5 @@ hgr_text_box_nosave:
lda #1
sta skip_box_save_smc+1
rts
.include "text/word_list.s"

View File

@ -3,7 +3,7 @@ sector_write =$0c63
requested_sector =$0d17
decompress_lzsa2_fast =$0de6
getsrc_smc =$0edc
hgr2 =$16fd
hgr2 =$184c
hgr_make_tables =$15da
hgr_put_string =$0ee9
save_bg_1x28 =$1421
@ -11,9 +11,9 @@ restore_bg_1x28 =$1442
hgr_draw_sprite_1x28 =$13ba
input_buffer =$15b2
hgr_text_box =$1650
hgr_text_box_nosave =$16c4
hgr_text_box_nosave =$16d7
hgr_partial_restore =$1530
clear_bottom =$16d2
clear_bottom =$1821
hgr_input =$1558
hgr_partial_save =$1501
draw_box =$126b
@ -23,13 +23,13 @@ invert_smc1 =$0f61
disp_put_string_cursor =$1696
hgr_put_char_cursor =$0f15
vgi_simple_rectangle =$12ec
peasant_text =$1d59
save_menu =$17b0
load_menu =$17a5
location_names_l =$1adc
location_names_h =$1afb
wait_until_keypress =$1d1b
random16 =$1d24
peasant_text =$1ea8
save_menu =$18ff
load_menu =$18f4
location_names_l =$1c2b
location_names_h =$1c4a
wait_until_keypress =$1e6a
random16 =$1e73
hposn_high = $BA00
hposn_low = $BB00
driveoff = $A22

View File

@ -0,0 +1,149 @@
text_offset_table:
.byte word_already-word_table ;DIALOG_ALREADY = $80
.byte word_cottage-word_table ;DIALOG_COTTAGE = $81
.byte word_peasant-word_table ;DIALOG_PEASANT = $82
.byte word_theres-word_table ;DIALOG_CAPITAL_THERES = $83
.byte word_trogdor-word_table ;DIALOG_CAPITAL_TROGDOR = $84
.byte word_little-word_table ;DIALOG_LITTLE = $85
.byte word_youre-word_table ;DIALOG_YOURE = $86
.byte word_Youre-word_table ;DIALOG_CAPITAL_YOURE = $87
.byte word_about-word_table ;DIALOG_ABOUT = $88
.byte word_cant-word_table ;DIALOG_CANT = $89
.byte word_dont-word_table ;DIALOG_DONT = $8A
.byte word_there-word_table ;DIALOG_THERE = $8B
.byte word_There-word_table ;DIALOG_CAPITAL_THERE = $8C
.byte word_baby-word_table ;DIALOG_BABY = $8D
.byte word_dead-word_table ;DIALOG_DEAD = $8E
.byte word_from-word_table ;DIALOG_FROM = $8F
.byte word_have-word_table ;DIALOG_HAVE = $90
.byte word_here-word_table ;DIALOG_HERE = $91
.byte word_into-word_table ;DIALOG_INTO = $92
.byte word_its-word_table ;DIALOG_ITS = $93
.byte word_Its-word_table ;DIALOG_CAPITAL_ITS = $94
.byte word_just-word_table ;DIALOG_JUST = $95
.byte word_like-word_table ;DIALOG_LIKE = $96
.byte word_says-word_table ;DIALOG_SAYS = $97
.byte word_some-word_table ;DIALOG_SOME = $98
.byte word_that-word_table ;DIALOG_THAT = $99
.byte word_That-word_table ;DIALOG_CAPITAL_THAT = $9A
.byte word_this-word_table ;DIALOG_THIS = $9B
.byte word_with-word_table ;DIALOG_WITH = $9C
.byte word_your-word_table ;DIALOG_YOUR = $9D
.byte word_all-word_table ;DIALOG_ALL = $9E
.byte word_and-word_table ;DIALOG_AND = $9F
.byte word_are-word_table ;DIALOG_ARE = $A0
.byte word_but-word_table ;DIALOG_BUT = $A1
.byte word_for-word_table ;DIALOG_FOR = $A2
.byte word_get-word_table ;DIALOG_GET = $A3
.byte word_got-word_table ;DIALOG_GOT = $A4
.byte word_him-word_table ;DIALOG_HIM = $A5
.byte word_his-word_table ;DIALOG_HIS = $A6
.byte word_not-word_table ;DIALOG_NOT = $A7
.byte word_now-word_table ;DIALOG_NOW = $A8
.byte word_old-word_table ;DIALOG_OLD = $A9
.byte word_one-word_table ;DIALOG_ONE = $AA
.byte word_out-word_table ;DIALOG_OUT = $AB
.byte word_see-word_table ;DIALOG_SEE = $AC
.byte word_the-word_table ;DIALOG_THE = $AD
.byte word_The-word_table ;DIALOG_CAPITAL_THE = $AE
.byte word_was-word_table ;DIALOG_WAS = $AF
.byte word_you-word_table ;DIALOG_YOU = $B0
.byte word_You-word_table ;DIALOG_CAPITAL_YOU = $B1
.byte word_an-word_table ;DIALOG_AN = $B2
.byte word_at-word_table ;DIALOG_AT = $B3
.byte word_be-word_table ;DIALOG_BE = $B4
.byte word_do-word_table ;DIALOG_DO = $B5
.byte word_go-word_table ;DIALOG_GO = $B6
.byte word_he-word_table ;DIALOG_HE = $B7
.byte word_He-word_table ;DIALOG_CAPITAL_HE = $B8
.byte word_in-word_table ;DIALOG_IN = $B9
.byte word_is-word_table ;DIALOG_IS = $BA
.byte word_it-word_table ;DIALOG_IT = $BB
.byte word_It-word_table ;DIALOG_CAPITAL_IT = $BC
.byte word_my-word_table ;DIALOG_MY = $BD
.byte word_no-word_table ;DIALOG_NO = $BE
.byte word_No-word_table ;DIALOG_CAPITAL_NO = $BF
.byte word_of-word_table ;DIALOG_OF = $C0
.byte word_on-word_table ;DIALOG_ON = $C1
.byte word_or-word_table ;DIALOG_OR = $C2
.byte word_so-word_table ;DIALOG_SO = $C3
.byte word_to-word_table ;DIALOG_TO = $C4
.byte word_up-word_table ;DIALOG_UP = $C5
word_table:
word_already: .byte "already"
word_cottage: .byte "cottage"
word_peasant: .byte "peasant"
word_theres: .byte "There's"
word_trogdor: .byte "Trogdor"
word_little: .byte "little"
word_youre: .byte "you're"
word_Youre: .byte "You're"
word_about: .byte "about"
word_cant: .byte "can't"
word_dont: .byte "don't"
word_there: .byte "there"
word_There: .byte "There"
word_baby: .byte "baby"
word_dead: .byte "dead"
word_from: .byte "from"
word_have: .byte "have"
word_here: .byte "here"
word_into: .byte "into"
word_its: .byte "it's"
word_Its: .byte "It's"
word_just: .byte "just"
word_like: .byte "like"
word_says: .byte "says"
word_some: .byte "some"
word_that: .byte "that"
word_That: .byte "That"
word_this: .byte "this"
word_with: .byte "with"
word_your: .byte "your"
word_all: .byte "all"
word_and: .byte "and"
word_are: .byte "are"
word_but: .byte "but"
word_for: .byte "for"
word_get: .byte "get"
word_got: .byte "got"
word_him: .byte "him"
word_his: .byte "his"
word_not: .byte "not"
word_now: .byte "now"
word_old: .byte "old"
word_one: .byte "one"
word_out: .byte "out"
word_see: .byte "see"
word_the: .byte "the"
word_The: .byte "The"
word_was: .byte "was"
word_you: .byte "you"
word_You: .byte "You"
word_an: .byte "an"
word_at: .byte "at"
word_be: .byte "be"
word_do: .byte "do"
word_go: .byte "go"
word_he: .byte "he"
word_He: .byte "He"
word_in: .byte "in"
word_is: .byte "is"
word_it: .byte "it"
word_It: .byte "It"
word_my: .byte "my"
word_no: .byte "no"
word_No: .byte "No"
word_of: .byte "of"
word_on: .byte "on"
word_or: .byte "or"
word_so: .byte "so"
word_to: .byte "to"
word_up: .byte "up"