mirror of
https://github.com/a2-4am/pitch-dark.git
synced 2025-01-01 14:31:16 +00:00
macro madness
This commit is contained in:
parent
663c556e93
commit
a41885dba3
@ -13,7 +13,7 @@
|
||||
only meant that your dull life of cleaning grotch cages was replaced by an
|
||||
equally dull life of paperwork. Now you've got another assignment tailor-
|
||||
made for a grotchbrain: pilot a spacetruck to a nearby station to pick up a
|
||||
load of trivial forms. Trot and doublt trot!
|
||||
load of trivial forms. Trot and double trot!
|
||||
|
||||
But all is not lost. By a happy twist of fate, your companion for the
|
||||
journey is your old pal Floyd! That's right, it's the same mischievous
|
||||
|
@ -86,8 +86,7 @@ LaunchInterpreter
|
||||
|
||||
; change prefix to folder of file we want the interpreter to open
|
||||
jsr ResetPath
|
||||
lda #<kGameRootDirectory
|
||||
ldy #>kGameRootDirectory
|
||||
+LDADDR kGameRootDirectory
|
||||
jsr AddToPath
|
||||
|
||||
jsr okvs_get
|
||||
@ -122,8 +121,7 @@ LaunchInterpreter
|
||||
|
||||
LoadInterpreter
|
||||
jsr ResetPath
|
||||
lda #<.interpreterFilename
|
||||
ldy #>.interpreterFilename
|
||||
+LDADDR .interpreterFilename
|
||||
jsr AddToPath
|
||||
|
||||
jsr LoadFile
|
||||
|
15
src/macros.a
15
src/macros.a
@ -13,3 +13,18 @@ PARAM = $00
|
||||
+ phx
|
||||
pha
|
||||
}
|
||||
|
||||
!macro LDADDR .ptr {
|
||||
lda #<.ptr
|
||||
ldy #>.ptr
|
||||
}
|
||||
|
||||
!macro LDAY .ptr {
|
||||
lda .ptr
|
||||
ldy .ptr+1
|
||||
}
|
||||
|
||||
!macro STAY .ptr {
|
||||
sta .ptr
|
||||
sty .ptr+1
|
||||
}
|
||||
|
12
src/okvs.a
12
src/okvs.a
@ -249,8 +249,7 @@ okvs_get
|
||||
.matchlen=*+1
|
||||
cpy #$FD ; SMC
|
||||
bne .matchKeyLoop
|
||||
lda PTR
|
||||
ldy PTR+1
|
||||
+LDAY PTR
|
||||
clc
|
||||
adc .matchlen
|
||||
bcc +
|
||||
@ -298,8 +297,7 @@ okvs_nth
|
||||
.done
|
||||
jsr incptr
|
||||
jsr incptr
|
||||
lda PTR
|
||||
ldy PTR+1
|
||||
+LDAY PTR
|
||||
rts
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
@ -335,8 +333,7 @@ okvs_update
|
||||
!word $FDFD ; SMC
|
||||
!word $FDFD ; SMC
|
||||
bcs .exit
|
||||
sta DEST
|
||||
sty DEST+1
|
||||
+STAY DEST
|
||||
lda (SAVE)
|
||||
tay
|
||||
- lda (SAVE),y
|
||||
@ -357,8 +354,7 @@ okvs_update
|
||||
; X preserved, A/Y clobbered
|
||||
;------------------------------------------------------------------------------
|
||||
okvs_as_boolean
|
||||
sta PTR
|
||||
sty PTR+1
|
||||
+STAY PTR
|
||||
lda (PTR)
|
||||
cmp #1
|
||||
bne +
|
||||
|
@ -24,12 +24,12 @@ ParseKeyValueText
|
||||
|
||||
ldy #1
|
||||
lda (PARAM),y
|
||||
sta .initStore
|
||||
sta .appendStore
|
||||
sta .store1
|
||||
sta .store2
|
||||
iny
|
||||
lda (PARAM),y
|
||||
sta .initStore+1
|
||||
sta .appendStore+1
|
||||
sta .store1+1
|
||||
sta .store2+1
|
||||
iny
|
||||
lda (PARAM),y
|
||||
sta $FE
|
||||
@ -53,8 +53,7 @@ ParseKeyValueText
|
||||
dey
|
||||
+ sty $FF
|
||||
jsr okvs_init ; reset key/value store
|
||||
.initStore
|
||||
!word $FDFD ; SMC
|
||||
.store1 !word $FDFD ; SMC
|
||||
|
||||
ldy #$00 ; index into ($FE) pointing to current character
|
||||
.newKey
|
||||
@ -69,7 +68,7 @@ ParseKeyValueText
|
||||
cmp #$0D ; found CR before '=', ignore key and start over (also handles blank lines)
|
||||
beq .newKey
|
||||
cmp #$5B ; '[' ends the parsing
|
||||
beq .exit
|
||||
beq .done
|
||||
sta gKey,x
|
||||
inx
|
||||
bpl .gatherKey
|
||||
@ -99,8 +98,7 @@ ParseKeyValueText
|
||||
sta .appendMaxLength ; all other values get upgraded to max_length so we can update them in place
|
||||
phy ; okvs functions clobber everything but we need Y
|
||||
jsr okvs_append
|
||||
.appendStore
|
||||
!word $FDFD ; SMC
|
||||
.store2 !word $FDFD ; SMC
|
||||
!word gKeyLen
|
||||
!word gValLen
|
||||
.appendMaxLength
|
||||
@ -119,5 +117,5 @@ IncAndGetChar
|
||||
bne +
|
||||
inc $FF
|
||||
+ lda ($FE),y
|
||||
.exit rts
|
||||
.done rts
|
||||
}
|
||||
|
@ -43,8 +43,7 @@ addrInfo
|
||||
;------------------------------------------------------------------------------
|
||||
LoadGameInfo
|
||||
jsr ResetPath
|
||||
lda #<kTextRootDirectory
|
||||
ldy #>kTextRootDirectory
|
||||
+LDADDR kTextRootDirectory
|
||||
jsr AddToPath
|
||||
jsr okvs_get
|
||||
!word gGlobalPrefsStore
|
||||
@ -115,10 +114,8 @@ LoadGameInfo
|
||||
!word addrVersions
|
||||
!byte 0
|
||||
|
||||
lda SRC ; save pointer to free space for next store
|
||||
sta gOptionsStore
|
||||
lda SRC+1
|
||||
sta gOptionsStore+1
|
||||
+LDAY SRC
|
||||
+STAY gOptionsStore ; save pointer to free space for next store
|
||||
|
||||
jsr ParseKeyValueText ; parse [options] section into gOptionsStore
|
||||
!word gOptionsStore
|
||||
|
@ -19,14 +19,13 @@
|
||||
LoadGameList
|
||||
jsr LoadFile ; load prefs file at $2000
|
||||
!word .gamesListFilename
|
||||
.listAddress
|
||||
!word $2000
|
||||
.handle !word $2000
|
||||
!word $2000
|
||||
!word kProDOSFileBuffer
|
||||
|
||||
jsr ParseKeyValueText ; parse contents into games list store
|
||||
!word gGamesListStore
|
||||
!word .listAddress
|
||||
!word .handle
|
||||
!byte 0
|
||||
|
||||
lda SRC ; save pointer to free space for next store
|
||||
|
@ -53,21 +53,18 @@ LoadGlobalPreferences
|
||||
|
||||
jsr LoadFile ; load prefs file at $2000
|
||||
!word .globalPrefsFilename
|
||||
.prefsAddress
|
||||
!word $2000
|
||||
.handle !word $2000
|
||||
!word $2000
|
||||
!word kProDOSFileBuffer
|
||||
|
||||
jsr ParseKeyValueText ; parse contents into global prefs store
|
||||
!word gGlobalPrefsStore
|
||||
!word .prefsAddress
|
||||
!word .handle
|
||||
!byte 16
|
||||
|
||||
lda SRC ; save pointer to free space for next store
|
||||
sta gVersionsStore
|
||||
lda SRC+1
|
||||
sta gVersionsStore+1
|
||||
rts
|
||||
+LDAY SRC
|
||||
+STAY gVersionsStore ; save pointer to free space for next store
|
||||
.exit rts
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; SaveGlobalPreferences
|
||||
@ -77,15 +74,12 @@ LoadGlobalPreferences
|
||||
;------------------------------------------------------------------------------
|
||||
SaveGlobalPreferences
|
||||
lda gNeedToSavePrefs
|
||||
bne +
|
||||
rts
|
||||
+
|
||||
beq .exit
|
||||
stz $FE
|
||||
lda #$20
|
||||
sta $FF
|
||||
|
||||
lda #<.fluff1
|
||||
ldy #>.fluff1
|
||||
+LDADDR .fluff1
|
||||
jsr addString
|
||||
|
||||
jsr addBooleanFromStore
|
||||
@ -100,15 +94,13 @@ SaveGlobalPreferences
|
||||
jsr addBooleanFromStore
|
||||
!word kAutoScript
|
||||
|
||||
lda #<.fluff2
|
||||
ldy #>.fluff2
|
||||
+LDADDR .fluff2
|
||||
jsr addString
|
||||
|
||||
jsr addStringFromStore
|
||||
!word kLastPlayed
|
||||
|
||||
lda #<.fluff3
|
||||
ldy #>.fluff3
|
||||
+LDADDR .fluff3
|
||||
jsr addString
|
||||
|
||||
jsr okvs_len
|
||||
@ -117,41 +109,38 @@ SaveGlobalPreferences
|
||||
ldx #0
|
||||
.gameLoop
|
||||
phx
|
||||
stx .n
|
||||
stx +
|
||||
jsr okvs_nth
|
||||
!word gGamesListStore
|
||||
.n !byte $FD ; SMC
|
||||
sta .gameKey
|
||||
sty .gameKey+1
|
||||
+ !byte $FD ; SMC
|
||||
+STAY +
|
||||
jsr addStringFromStore
|
||||
.gameKey !word $FDFD ; SMC
|
||||
+ !word $FDFD ; SMC
|
||||
plx
|
||||
inx
|
||||
.numberOfGames=*+1
|
||||
cpx #$FD ; SMC
|
||||
bne .gameLoop
|
||||
|
||||
lda #<.eof
|
||||
ldy #>.eof
|
||||
+LDADDR .eof
|
||||
jsr addString
|
||||
|
||||
lda $FE
|
||||
sta .prefslen
|
||||
sta .filelen
|
||||
lda $FF
|
||||
sec
|
||||
sbc #$20
|
||||
sta .prefslen+1
|
||||
sta .filelen+1
|
||||
|
||||
jsr SaveFile
|
||||
!word .globalPrefsFilename
|
||||
!byte 4 ; filetype=TXT
|
||||
!word 0 ; auxtype=0000
|
||||
!word $2000
|
||||
.prefslen
|
||||
!word $FDFD ; SMC
|
||||
.filelen !word $FDFD ; SMC
|
||||
!word kProDOSFileBuffer
|
||||
stz gNeedToSavePrefs
|
||||
|
||||
stz gNeedToSavePrefs
|
||||
rts
|
||||
|
||||
addBooleanFromStore
|
||||
@ -163,39 +152,33 @@ addStringFromStore
|
||||
+PARAMS_ON_STACK 2
|
||||
ldy #1
|
||||
lda (PARAM),y
|
||||
sta .storeKey
|
||||
sta .key
|
||||
pha
|
||||
iny
|
||||
lda (PARAM),y
|
||||
sta .storeKey+1
|
||||
sta .key+1
|
||||
tay
|
||||
pla
|
||||
jsr addString
|
||||
lda #<.equals
|
||||
ldy #>.equals
|
||||
+LDADDR .equals
|
||||
jsr addString
|
||||
jsr okvs_get
|
||||
!word gGlobalPrefsStore
|
||||
.storeKey
|
||||
!word $FDFD ; SMC
|
||||
.key !word $FDFD ; SMC
|
||||
.skipOverBooleanLogic
|
||||
bra + ; SMC (opcode may become BIT)
|
||||
sta PTR
|
||||
sty PTR+1
|
||||
+STAY PTR
|
||||
ldy #1
|
||||
lda (PTR),y
|
||||
ora #$30
|
||||
sta (PTR),y
|
||||
lda PTR
|
||||
ldy PTR+1
|
||||
+LDAY PTR
|
||||
+ jsr addString
|
||||
lda #<.lf
|
||||
ldy #>.lf
|
||||
+LDADDR .lf
|
||||
jmp addString
|
||||
|
||||
addString
|
||||
sta $00
|
||||
sty $01
|
||||
+STAY $00
|
||||
lda ($00)
|
||||
inc
|
||||
sta .len
|
||||
|
@ -35,8 +35,7 @@ ResetPath
|
||||
;------------------------------------------------------------------------------
|
||||
!zone {
|
||||
AddToPath
|
||||
sta $00
|
||||
sty $01
|
||||
+STAY $00
|
||||
ldx gPathname ; current pathname length
|
||||
lda ($00) ; length of this segment
|
||||
inc
|
||||
@ -64,8 +63,7 @@ AddToPath
|
||||
;------------------------------------------------------------------------------
|
||||
!zone {
|
||||
SetStartupPath
|
||||
sta $00
|
||||
sty $01
|
||||
+STAY $00
|
||||
lda ($00)
|
||||
tay
|
||||
- lda ($00),y
|
||||
|
@ -1,5 +1,12 @@
|
||||
;license:MIT
|
||||
;(c) 2018 by 4am
|
||||
;
|
||||
; Public entry points
|
||||
; - MainScreen
|
||||
|
||||
; Public functions
|
||||
; - ExitWeeGUI
|
||||
;
|
||||
|
||||
!cpu 65c02
|
||||
!ct "src/lcase.ct"
|
||||
@ -42,7 +49,7 @@ Start
|
||||
jsr ClearInterpreterOptions ; clear options struct at $300
|
||||
jsr WGInit ; initialize WeeGUI
|
||||
jsr LoadGameList ; get master list of games
|
||||
jsr LoadGlobalPreferences ; get current game and global options
|
||||
jsr LoadGlobalPreferences ; get global options, including current game
|
||||
jsr LoadGameInfo ; get current game description and game-specific options
|
||||
ldx #WGEnableMouse ; enable mouse support
|
||||
jsr WeeGUI
|
||||
@ -58,11 +65,11 @@ MainScreen
|
||||
bit $C010 ; clear keyboard strobe
|
||||
.runLoop
|
||||
ldx #WGPendingViewAction
|
||||
jsr WeeGUI
|
||||
jsr WeeGUI ; handle mouse movement and clicks
|
||||
lda $c000
|
||||
bpl .runLoop
|
||||
bit $c010
|
||||
jsr HandleKey
|
||||
jsr HandleKey ; handle keypresses
|
||||
bra .runLoop
|
||||
|
||||
ExitWeeGUI
|
||||
@ -72,4 +79,4 @@ ExitWeeGUI
|
||||
jmp WeeGUI
|
||||
|
||||
gGamesListStore
|
||||
!word *+2 ; address first okvs store
|
||||
!word *+2 ; address of first okvs store
|
||||
|
@ -64,10 +64,8 @@ CreateButton
|
||||
;------------------------------------------------------------------------------
|
||||
CreateTitleView
|
||||
ldx #WGCreateView ; create title bar on top line
|
||||
lda #<viewTitle
|
||||
sta PARAM0
|
||||
lda #>viewTitle
|
||||
sta PARAM1
|
||||
+LDADDR viewTitle
|
||||
+STAY PARAM0
|
||||
jmp WeeGUI
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
@ -84,10 +82,8 @@ PaintTitleView
|
||||
jsr WeeGUI
|
||||
jsr INVERSE
|
||||
ldx #WGPrint
|
||||
lda #<.stringTitle
|
||||
sta PARAM0
|
||||
lda #>.stringTitle
|
||||
sta PARAM1
|
||||
+LDADDR .stringTitle
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
jmp NORMAL
|
||||
|
||||
|
@ -37,10 +37,8 @@ CreateViews
|
||||
jsr CreateTitleView
|
||||
|
||||
ldx #WGCreateView ; create horizontal rule
|
||||
lda #<.viewHR
|
||||
sta PARAM0
|
||||
lda #>.viewHR
|
||||
sta PARAM1
|
||||
+LDADDR .viewHR
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
jsr CreateButton ; create various buttons
|
||||
@ -59,29 +57,21 @@ CreateViews
|
||||
!word .viewOptions
|
||||
|
||||
ldx #WGCreateView ; create borderless frame for game title and info
|
||||
lda #<.viewInfo
|
||||
sta PARAM0
|
||||
lda #>.viewInfo
|
||||
sta PARAM1
|
||||
+LDADDR .viewInfo
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
ldx #WGViewSetAction
|
||||
lda #<paintInfoView
|
||||
sta PARAM0
|
||||
lda #>paintInfoView
|
||||
sta PARAM1
|
||||
+LDADDR paintInfoView
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
ldx #WGCreateView ; create scrollable frame for game description text
|
||||
lda #<.viewDescription
|
||||
sta PARAM0
|
||||
lda #>.viewDescription
|
||||
sta PARAM1
|
||||
+LDADDR .viewDescription
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
ldx #WGViewSetAction
|
||||
lda #<paintDescriptionView
|
||||
sta PARAM0
|
||||
lda #>paintDescriptionView
|
||||
sta PARAM1
|
||||
+LDADDR paintDescriptionView
|
||||
+STAY PARAM0
|
||||
jmp WeeGUI
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
@ -138,8 +128,7 @@ paintDescriptionView
|
||||
ldx #WGSelectView
|
||||
lda #ID_DESCRIPTION
|
||||
jsr WeeGUI
|
||||
lda addrDescription
|
||||
ldy addrDescription+1
|
||||
+LDAY addrDescription
|
||||
ldx #78
|
||||
jsr multiPrint
|
||||
lda .vtab+1
|
||||
@ -153,8 +142,7 @@ paintInfoView
|
||||
ldx #WGSelectView
|
||||
lda #ID_INFO
|
||||
jsr WeeGUI
|
||||
lda addrInfo
|
||||
ldy addrInfo+1
|
||||
+LDAY addrInfo
|
||||
ldx #65
|
||||
phx
|
||||
jsr multiPrint
|
||||
@ -169,20 +157,15 @@ paintInfoView
|
||||
jsr okvs_get ; get shortname of current game
|
||||
!word gGlobalPrefsStore
|
||||
!word kLastPlayed
|
||||
sta .key1
|
||||
sty .key1+1
|
||||
|
||||
+STAY +
|
||||
jsr okvs_get ; get selected version of this game
|
||||
!word gGlobalPrefsStore
|
||||
.key1 !word $FDFD ; SMC
|
||||
sta .key2
|
||||
sty .key2+1
|
||||
|
||||
+ !word $FDFD ; SMC
|
||||
+STAY +
|
||||
jsr okvs_get ; get long description of this version
|
||||
!word gVersionsStore
|
||||
.key2 !word $FDFD ; SMC
|
||||
sta SRC
|
||||
sty SRC+1
|
||||
+ !word $FDFD ; SMC
|
||||
+STAY SRC
|
||||
lda (SRC)
|
||||
tay
|
||||
- lda (SRC),y
|
||||
@ -195,8 +178,7 @@ paintInfoView
|
||||
jmp .printLoop
|
||||
|
||||
multiPrint
|
||||
sta $00
|
||||
sty $01
|
||||
+STAY $00
|
||||
stx .printLineLength+1
|
||||
stz .htab+1
|
||||
stz .vtab+1
|
||||
|
@ -11,10 +11,10 @@
|
||||
;
|
||||
|
||||
!zone {
|
||||
kGameRootDirectory ; length-prefixed pathname of where game subdirectories are stored
|
||||
kGameRootDirectory ; length-prefixed pathname of game subdirectories
|
||||
!byte 2
|
||||
!raw "Z/"
|
||||
kHintsRootDirectory ; length-prefixed pathname of where game subdirectories are stored
|
||||
kHintsRootDirectory ; length-prefixed pathname of hint files
|
||||
!byte 5
|
||||
!raw "PRIZM/"
|
||||
kArtworkRootDirectory ; length-prefixed pathname of DHGR box art
|
||||
@ -69,17 +69,17 @@ HandleKey
|
||||
dex
|
||||
dex
|
||||
bpl -
|
||||
jmp SoftBell
|
||||
jmp SoftBell ; unknown key, beep softly
|
||||
.foundKey
|
||||
lda .keys+1,x
|
||||
bpl .activateView
|
||||
cmp #ID_X
|
||||
beq .x
|
||||
lda .keys+1,x ; get ID associated with this key
|
||||
bpl .activateView ; ID < #$80 is a WeeGUI view, so activate it
|
||||
cmp #ID_X ; X, Y, and Z keys are part of
|
||||
beq .x ; an undocumented feature
|
||||
cmp #ID_Y
|
||||
beq .y
|
||||
cmp #ID_Z
|
||||
beq .z
|
||||
cmp #ID_SCROLLDOWN
|
||||
cmp #ID_SCROLLDOWN ; arrow keys scroll the description box
|
||||
beq .handleScrollDown
|
||||
.handleScrollUp
|
||||
lda #$01
|
||||
@ -87,7 +87,6 @@ HandleKey
|
||||
.handleScrollDown
|
||||
lda #$FF
|
||||
pha
|
||||
.handleScroll
|
||||
ldx #WGSelectView
|
||||
lda #ID_DESCRIPTION
|
||||
jsr WeeGUI
|
||||
@ -143,15 +142,13 @@ HandleKey
|
||||
jsr WeeGUI
|
||||
jsr SaveGlobalPreferences
|
||||
jsr ResetPath
|
||||
lda #<kArtworkRootDirectory
|
||||
ldy #>kArtworkRootDirectory
|
||||
+LDADDR kArtworkRootDirectory
|
||||
jsr AddToPath
|
||||
jsr SetPrefix
|
||||
!word gPathname
|
||||
bcs .xyzzyError
|
||||
jsr ResetPath
|
||||
lda #<.dhrslideFilename
|
||||
ldy #>.dhrslideFilename
|
||||
+LDADDR .dhrslideFilename
|
||||
jsr AddToPath
|
||||
jsr LoadFile
|
||||
!word gPathname
|
||||
@ -166,7 +163,6 @@ HandleKey
|
||||
.dhrslideFilename
|
||||
!byte 15
|
||||
!raw "DHRSLIDE.SYSTEM"
|
||||
|
||||
}
|
||||
|
||||
!zone {
|
||||
@ -174,12 +170,10 @@ GetCurrentGameIndex
|
||||
jsr okvs_get ; get shortname of current game
|
||||
!word gGlobalPrefsStore
|
||||
!word kLastPlayed
|
||||
sta .gameNamePtr
|
||||
sty .gameNamePtr+1
|
||||
+STAY +
|
||||
jsr okvs_get ; get numeric index
|
||||
!word gGamesListStore
|
||||
.gameNamePtr
|
||||
!word $FDFD ; SMC
|
||||
+ !word $FDFD ; SMC
|
||||
rts ; X = index of current game
|
||||
|
||||
callback_previous
|
||||
@ -191,6 +185,7 @@ callback_previous
|
||||
tax
|
||||
dex
|
||||
+ bra .loadNewGameInfoAndRepaint
|
||||
|
||||
callback_next
|
||||
jsr GetCurrentGameIndex
|
||||
inx
|
||||
@ -203,16 +198,15 @@ callback_next
|
||||
bne .loadNewGameInfoAndRepaint
|
||||
ldx #0
|
||||
.loadNewGameInfoAndRepaint
|
||||
stx .nth
|
||||
stx +
|
||||
jsr okvs_nth
|
||||
!word gGamesListStore
|
||||
.nth !byte $FD ; SMC
|
||||
sta .gameptr
|
||||
sty .gameptr+1
|
||||
+ !byte $FD ; SMC
|
||||
+STAY +
|
||||
jsr okvs_update
|
||||
!word gGlobalPrefsStore
|
||||
!word kLastPlayed
|
||||
.gameptr !word $FDFD ; SMC
|
||||
+ !word $FDFD ; SMC
|
||||
lda #1
|
||||
sta gNeedToSavePrefs
|
||||
jsr LoadGameInfo
|
||||
@ -228,8 +222,7 @@ callback_options
|
||||
!zone {
|
||||
callback_boxart
|
||||
jsr ResetPath
|
||||
lda #<kArtworkRootDirectory
|
||||
ldy #>kArtworkRootDirectory
|
||||
+LDADDR kArtworkRootDirectory
|
||||
jsr AddToPath
|
||||
jsr okvs_get
|
||||
!word gGlobalPrefsStore
|
||||
@ -277,8 +270,7 @@ callback_clues
|
||||
bcs .cluesError
|
||||
; change prefix to folder of file we want the interpreter to open
|
||||
jsr ResetPath
|
||||
lda #<kHintsRootDirectory
|
||||
ldy #>kHintsRootDirectory
|
||||
+LDADDR kHintsRootDirectory
|
||||
jsr AddToPath
|
||||
jsr SetPrefix
|
||||
!word gPathname
|
||||
|
@ -53,16 +53,12 @@ OptionsDialog
|
||||
jsr CreateTitleView ; create title bar (defined in paintcommon.a)
|
||||
|
||||
ldx #WGCreateView ; create frame
|
||||
lda #<.viewFrame
|
||||
sta PARAM0
|
||||
lda #>.viewFrame
|
||||
sta PARAM1
|
||||
+LDADDR .viewFrame
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
ldx #WGViewSetTitle
|
||||
lda #<.stringFrame
|
||||
sta PARAM0
|
||||
lda #>.stringFrame
|
||||
sta PARAM1
|
||||
+LDADDR .stringFrame
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
jsr CreateButton ; create UI controls
|
||||
@ -110,10 +106,8 @@ OptionsDialog
|
||||
sta PARAM1
|
||||
jsr WeeGUI
|
||||
ldx #WGPrint
|
||||
lda #<.stringForce40Description
|
||||
sta PARAM0
|
||||
lda #>.stringForce40Description
|
||||
sta PARAM1
|
||||
+LDADDR .stringForce40Description
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
ldx #WGSetCursor
|
||||
@ -123,10 +117,8 @@ OptionsDialog
|
||||
sta PARAM1
|
||||
jsr WeeGUI
|
||||
ldx #WGPrint
|
||||
lda #<.stringForceUpperDescription
|
||||
sta PARAM0
|
||||
lda #>.stringForceUpperDescription
|
||||
sta PARAM1
|
||||
+LDADDR .stringForceUpperDescription
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
ldx #WGSetCursor
|
||||
@ -136,10 +128,8 @@ OptionsDialog
|
||||
sta PARAM1
|
||||
jsr WeeGUI
|
||||
ldx #WGPrint
|
||||
lda #<.stringScriptToFileDescription
|
||||
sta PARAM0
|
||||
lda #>.stringScriptToFileDescription
|
||||
sta PARAM1
|
||||
+LDADDR .stringScriptToFileDescription
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
ldx #WGSetCursor
|
||||
@ -149,10 +139,8 @@ OptionsDialog
|
||||
sta PARAM1
|
||||
jsr WeeGUI
|
||||
ldx #WGPrint
|
||||
lda #<.stringAutoScriptDescription
|
||||
sta PARAM0
|
||||
lda #>.stringAutoScriptDescription
|
||||
sta PARAM1
|
||||
+LDADDR .stringAutoScriptDescription
|
||||
+STAY PARAM0
|
||||
jsr WeeGUI
|
||||
|
||||
.runLoop
|
||||
|
Loading…
Reference in New Issue
Block a user