mirror of
https://github.com/badvision/lawless-legends.git
synced 2024-06-09 23:29:37 +00:00
Fixed record mode so it functions on a system without a printer, enabling playback in Jace.
This commit is contained in:
parent
961940537d
commit
46f9cafa53
|
@ -87,6 +87,7 @@ ROM_crout = $FD8E
|
|||
ROM_prbyte = $FDDA
|
||||
ROM_prhex = $FDE3
|
||||
ROM_cout = $FDED
|
||||
ROM_cout1 = $FDF0
|
||||
ROM_setnorm = $FE84
|
||||
ROM_setkbd = $FE89
|
||||
ROM_setvid = $FE93
|
||||
|
|
|
@ -178,6 +178,43 @@ asm reseekRwts#0
|
|||
rts
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Turn the printer on or off (assumes slot 1)
|
||||
asm setPrinter(enable)#0
|
||||
+asmPlasmNoRet 1
|
||||
ldx #<ROM_cout1
|
||||
ldy #>ROM_cout1
|
||||
asl
|
||||
beq +
|
||||
; check slot ID bytes for printer in slot 1. If no printer, don't redirect.
|
||||
lda $C105
|
||||
cmp #$38
|
||||
bne +
|
||||
lda $C107
|
||||
cmp #$18
|
||||
bne +
|
||||
lda $C10B
|
||||
cmp #$01
|
||||
bne +
|
||||
lda $C10C
|
||||
and #$F0
|
||||
cmp #$10 ; printers appear to be $1x
|
||||
bne +
|
||||
; redirect cout to the printer
|
||||
ldx #0
|
||||
ldy #$C1
|
||||
+ stx cswl
|
||||
sty cswh
|
||||
rts
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
def setRecordMode(enable)#0
|
||||
recordMode = enable
|
||||
if recordMode; recordSeed = 1; fin
|
||||
setPrinter(recordMode)
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
def decideJace()#0
|
||||
word i, a0count
|
||||
|
|
|
@ -132,7 +132,6 @@ import gamelib
|
|||
predef setGameFlag(flagName, val)#0
|
||||
predef setGround(num)#0
|
||||
predef setMap(is3D, num, x, y, dir)#0
|
||||
predef setRecordMode(enable)#0
|
||||
predef setStoryMode(enable)#0
|
||||
predef soundPlayEmu(numAndFlgs)#0
|
||||
predef useMapWindow()#0
|
||||
|
@ -178,6 +177,7 @@ import gamelib
|
|||
byte isFloppyVer
|
||||
byte isJace
|
||||
byte recordMode
|
||||
word recordSeed
|
||||
byte prevClockColor, prevClockHour, prevClockMinute
|
||||
byte nextSignificantMinute
|
||||
byte lampFrame
|
||||
|
|
|
@ -203,7 +203,7 @@ export byte[] S_THEIR = "their"
|
|||
word lastTick = 0
|
||||
|
||||
export byte recordMode = 0
|
||||
word recordSeed
|
||||
export word recordSeed
|
||||
|
||||
export byte diskLimit = 0
|
||||
|
||||
|
@ -971,21 +971,6 @@ asm internal_rand16()#1
|
|||
}
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Turn the printer on or off (assumes slot 1)
|
||||
asm setPrinter(enable)#0
|
||||
+asmPlasmNoRet 1
|
||||
ldx #<ROM_cout
|
||||
ldy #>ROM_cout
|
||||
asl
|
||||
beq +
|
||||
ldx #0
|
||||
ldy #$C1
|
||||
+ stx cswl
|
||||
sty cswh
|
||||
rts
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Clear the text-mode screen, and put the text cursor at the top of it.
|
||||
export asm textHome()#0
|
||||
|
@ -3079,13 +3064,6 @@ def help()#1
|
|||
return 0
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
export def setRecordMode(enable)#0
|
||||
recordMode = enable
|
||||
if recordMode; recordSeed = 1; fin
|
||||
setPrinter(recordMode)
|
||||
end
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
def toggleGodMode()#1
|
||||
byte key
|
||||
|
|
Loading…
Reference in New Issue
Block a user