Commit e2bf85fb authored by Kevin Bracey's avatar Kevin Bracey
Browse files

standalone option added

parent f21342c3
PreFT:Filter beim Aufruf von Wimp_Poll:
PostFT:Filter beim Verlassen von Wimp_Poll:
RectFT:Filter beim Aufruf von Wimp_GetRectangle:
CopyFT:Filter beim Aufruf von Wimp_BlockCopy:
PostRectFT:Filter beim Verlassen von Wimp_GetRectangle:
PostIconFT:Filters called after plotting icons in Wimp_GetRectangle:
Filter:Filter
Task:Aufgabe
Mask:Maske
All:Alle Aufgaben
UnkF:Unbekannter Filter
......@@ -62,6 +62,7 @@ Module_BaseAddr
GBLL hostvdu
GBLL debugxx
GBLL debugregister
GBLL standalone
debug SETL false ; ONLY FALSE IF NO DEBUGGING
......@@ -69,6 +70,7 @@ hostvdu SETL true ; True to send debug to tube
debugxx SETL false ; General debugging.
debugregister SETL false ; Register/de-register
standalone SETL false
wsptr RN R12
......
......@@ -38,7 +38,11 @@ MySWIBase * Module_SWISystemBase + FilterSWI * Module_SWIChunkSize
; ----------------------------------------------------------------------------------------------------------------------
Title DCB "FilterManager",0
Helpstr DCB "Filter Manager",9,"$VString ($Date)",0
Helpstr DCB "Filter Manager",9,"$VString ($Date)"
[ standalone
= " (Stand alone)"
]
DCB 0
ALIGN
; ----------------------------------------------------------------------------------------------------------------------
......@@ -470,6 +474,10 @@ Init
MOVGE r0, #0
STR r0, fake_postrect
[ standalone
BL declareresourcefsfiles
]
ADR R0,servicecallback
MOV R1,WP ; workspace pointer
SWI XOS_AddCallBack ; install the call back to broadcast we are here message
......@@ -500,7 +508,14 @@ servicecallback
; Module service entry point
Service
TEQ R1,#Service_WimpRegisterFilters
[ standalone
TEQNE R1,#Service_ResourceFSStarting
]
MOVNE PC,LR
[ standalone
TEQ R1,#Service_ResourceFSStarting
BEQ serviceresourcefsstarting
]
LDR R12, [R12]
CMP R12, #0
......@@ -625,6 +640,19 @@ RegisterFilters
Pull "r0-r2,PC"
[ standalone
; ResourceFS has been reloaded - redeclare resource files
; In R2 -> address to call
; R3 -> workspace for ResourceFS module
serviceresourcefsstarting
Push "R0,LR"
ADRL R0,resourcefsfiles
MOV LR,PC ; LR -> return address
MOV PC,R2 ; R2 -> address to call
Pull "R0,PC",,^
]
; ----------------------------------------------------------------------------------------------------------------------
; Reset button pressed. Wimp has shut down. Release filter handlers. Release linked lists of filters.
[ Version < 4
......@@ -740,6 +768,11 @@ Die
MOV R1,#Service_FilterManagerDying
SWI XOS_ServiceCall ; broadcast that the module is dying so you are no longer installed
[ standalone
ADRL R0,resourcefsfiles
SWI XResourceFS_DeregisterFiles ; ignore errors
]
[ Version < 5
; Release all workspace
MOV r2, r12
......
......@@ -35,6 +35,20 @@ free_list
B %BT01
; ----------------------------------------------------------------------------
[ standalone
declareresourcefsfiles
Push "R0,LR"
ADR R0,resourcefsfiles
SWI XResourceFS_RegisterFiles ; ignore errors
Pull "R0,PC",,^
resourcefsfiles
ResourceFile Resources.<Locale>.Messages, Resources.FilterMgr.Messages
DCD 0
]
; ----------------------------------------------------------------------------------------------------------------------
; Neil's debugging routines
......
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