Difference between revisions of "83Plus:BCALLs:4021"
From WikiTI
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:83Plus:BCALLs:By Name:Monitor|MonForceKey]] [[Category:83Plus:BCALLs:By Name|MonForceKey]] [[Category:83Plus:BCALLs:By Address|4021 - MonForceKey]] | [[Category:83Plus:BCALLs:By Name:Monitor|MonForceKey]] [[Category:83Plus:BCALLs:By Name|MonForceKey]] [[Category:83Plus:BCALLs:By Address|4021 - MonForceKey]] | ||
+ | |||
== Synopsis == | == Synopsis == | ||
'''Official Name:''' MonForceKey | '''Official Name:''' MonForceKey | ||
Line 5: | Line 6: | ||
'''BCALL Address:''' 4021 | '''BCALL Address:''' 4021 | ||
− | Calls the system monitor but allows the programmer to push an initial key through cxMain. This is very much like [[83Plus:BCALLs:401E|Mon]]. | + | Calls the system monitor but allows the programmer to push an initial key through [[83Plus:RAM:858D|cxMain]]. This is very much like [[83Plus:BCALLs:401E|Mon]]. |
=== Inputs === | === Inputs === | ||
* a = initial key press to simulate | * a = initial key press to simulate | ||
− | * AppAllowContext, (IY + APIFlg) = 1 to allow Mon to pass context keys, like | + | * [[83Plus:Flags:28|AppAllowContext, (IY + APIFlg)]] = 1 to allow Mon to pass context keys, like |
* kYequ to the cxMain routine. | * kYequ to the cxMain routine. | ||
− | * CurLock, (IY + curFlags) = 1 to lock the cursor off | + | * [[83Plus:Flags:0C|CurLock, (IY + curFlags)]] = 1 to lock the cursor off |
=== Outputs === | === Outputs === | ||
Line 17: | Line 18: | ||
=== Registers Destroyed === | === Registers Destroyed === | ||
− | * | + | * Doesn't matter because it doesn't return |
== Comments == | == Comments == |
Latest revision as of 07:47, 6 February 2008
Synopsis
Official Name: MonForceKey
BCALL Address: 4021
Calls the system monitor but allows the programmer to push an initial key through cxMain. This is very much like Mon.
Inputs
- a = initial key press to simulate
- AppAllowContext, (IY + APIFlg) = 1 to allow Mon to pass context keys, like
- kYequ to the cxMain routine.
- CurLock, (IY + curFlags) = 1 to lock the cursor off
Outputs
- none
Registers Destroyed
- Doesn't matter because it doesn't return
Comments
The system NEVER returns from this B_CALL. The programmer should find alternative methods of regaining control and exiting such as hooks, cxMain, etc.
Example
To simulate a key press by the user when first entering the system monitor:
;set up edit buffer ;... ld a,k8 B_CALL MonForceKey ;should see the number 8 appear in the edit buffer