Commit f48cad69 authored by Ben Avison's avatar Ben Avison
Browse files

Doing all of recalcmodevars on Service_ModeChanging turns out to be a Bad Idea...

Doing all of recalcmodevars on Service_ModeChanging turns out to be a Bad Idea because some of the Wimp's copies of VDU variables end up out-of-date. Now only the parts pertaining to command windows are done on Service_ModeChanging

(for that was the bit we were having trouble with), and the rest is back on
Service_ModeChange.

Version 4.24. Tagged as 'Wimp-4_24'
parent 9a878980
......@@ -6,9 +6,9 @@
GBLS Module_MinorVersion
GBLS Module_Date
GBLS Module_FullVersion
Module_MajorVersion SETS "4.23"
Module_Version SETA 423
Module_MajorVersion SETS "4.24"
Module_Version SETA 424
Module_MinorVersion SETS ""
Module_Date SETS "03 Aug 1999"
Module_FullVersion SETS "4.23"
Module_Date SETS "04 Aug 1999"
Module_FullVersion SETS "4.24"
END
/* (4.23)
/* (4.24)
*
* This file is automatically maintained by srccommit, do not edit manually.
*
*/
#define Module_MajorVersion_CMHG 4.23
#define Module_MajorVersion_CMHG 4.24
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 03 Aug 1999
#define Module_Date_CMHG 04 Aug 1999
#define Module_MajorVersion "4.23"
#define Module_Version 423
#define Module_MajorVersion "4.24"
#define Module_Version 424
#define Module_MinorVersion ""
#define Module_Date "03 Aug 1999"
#define Module_Date "04 Aug 1999"
#define Module_FullVersion "4.23"
#define Module_FullVersion "4.24"
......@@ -3537,6 +3537,7 @@ ServiceTable
] ;
DCD Service_Reset ; &27 ;
DCD Service_NewApplication ; &2A ;
DCD Service_ModeChange ; &46 ;
[ :LNOT: UseAMBControl ;
DCD Service_MemoryMoved ; &4E ;
] ; must be in ascending order
......@@ -3568,6 +3569,7 @@ Service
TEQ R1, #Service_Reset
]
TEQNE R1, #Service_NewApplication
TEQNE R1, #Service_ModeChange
[ :LNOT: UseAMBControl
TEQNE R1, #Service_MemoryMoved
]
......@@ -3639,6 +3641,8 @@ Service2
TEQ R1, #Service_SwitchingOutputToSprite
BEQ switchingtosprite
]
TEQ R1,#Service_ModeChange
BEQ recalcmodevars
TEQ R1,#Service_ResourceFSStarting ; redeclare resource files
BEQ serviceresourcefsstarting
TEQ R1,#Service_ResourceFSStarted ; re-link to sprite file
......@@ -3648,7 +3652,7 @@ Service2
TEQ R1,#Service_InvalidateCache ; ColourTrans changed palette
BEQ invalidatecache
TEQ R1,#Service_ModeChanging
BEQ recalcmodevars
BEQ releasewrchvpremodechange
TEQ R1,#Service_Reset
MOVNE PC,LR
......@@ -3827,7 +3831,7 @@ switchingtosprite_recache
EXITS
]
; Service_ModeChanging: cache new graphics parameters
; Service_ModeChange: cache new graphics parameters
recalcmodevars
Push "LR"
......@@ -3849,7 +3853,12 @@ recalcmodevars
TEQ R14,#0
BLNE recalc_greys_palette
]
Pull "PC"
; Service_ModeChanging: get off wrchv if necessary
releasewrchvpremodechange
Push "LR"
; medusa may require the write character vector to be reset.
LDR R14,commandflag
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment