Prev: AB4C Up: Map Next: AB91
AB52: Copy Display If Needed
Copies display If Needed.
The display-marker scan has finished.
CopyDisplayIfNeeded AB52 CALL ClearCoordinateBuffer Jump to CopyDisplayIfNeeded_ReportDone if the display-marker scan has finished.
AB55 JR C,CopyDisplayIfNeeded_ReportDone
AB57 JR NZ,CopyDisplayIfNeeded_Next Skip the copy when bit 5 of the source is set.
AB59 CALL CopyDisplayDataToDisplayBuffer Go to CopyDisplayIfNeeded_ReportDone if neither bit 6 nor bit 7 of E is set.
AB5C JR Z,CopyDisplayIfNeeded_ReportDone
AB5E JR ReadObjectProcessingFlag The copy did not finish, so try the next object from ReadObjectProcessingFlag.
A sentence-stop marker rebuilds the picture once the game has started.
CopyDisplayIfNeeded_Next AB60 CP $B0 Go to MatchWordAgainstEarlierClause if the token code is B0.
AB62 JP Z,MatchWordAgainstEarlierClause
AB65 CP $A0 Go to HandleClassAWord if the token code is A0.
AB67 JP Z,HandleClassAWord
AB6A CP $90 Go to SearchCommandHandlerTable if it is 90.
AB6C JP Z,SearchCommandHandlerTable
AB6F LD HL,($A029) Copy the word at SavedTextPointer into the word at ActiveTextPointer.
AB72 LD ($A02B),HL
AB75 LD A,($A024) Jump to CopyDisplayIfNeeded_ReportDone if the command mode at A024 is not 02.
AB78 CP $02
AB7A JR NZ,CopyDisplayIfNeeded_ReportDone
The character-pair search returned carry.
AB7C CALL MatchCharacterPair Jump to CopyDisplayIfNeeded_ReportDone if the character-pair search returns carry.
AB7F JR C,CopyDisplayIfNeeded_ReportDone
AB81 JR NZ,CopyDisplayIfNeeded_ReportDone Jump ahead to CopyDisplayIfNeeded_ReportDone if MatchCharacterPair returns non-zero.
AB83 LD HL,($A029) Copy the word at SavedTextPointer into the word at ActiveTextPointer and take A0.
AB86 LD ($A02B),HL
AB89 LD D,$A0
AB8B JP HandleClassAWord Take token A0 and continue at HandleClassAWord.
This entry point is used by the routine at StartPictureModeScreenIdle.
CopyDisplayIfNeeded_ReportDone AB8E JP CopyBytes_ReportSuccess Jump to CopyBytes_ReportSuccess to return non-zero.
Prev: AB4C Up: Map Next: AB91