Difference between revisions of "83Plus:OS:RST Routines"

From WikiTI
Jump to: navigation, search
Line 7: Line 7:
 
== RST Routines ==
 
== RST Routines ==
 
All the RST routines work exactly the same as the corresponding B_CALLs:
 
All the RST routines work exactly the same as the corresponding B_CALLs:
 
 
{| border="0"
 
{| border="0"
 
| '''B_CALL''' || '''RST'''
 
| '''B_CALL''' || '''RST'''

Revision as of 13:53, 2 June 2005


Introduction

The Z80 restart instruction, or RST, can be used instead of a B_CALL for some system entry points. The advantage is that using the RST instruction takes only one byte, instead of the three bytes required for a B_CALL, and is very quick when compared with the relatively large overhead inherent of a B_CALL.

RST Routines

All the RST routines work exactly the same as the corresponding B_CALLs:

B_CALL RST
FindSym rFindSym
PushRealO1 rPushRealO1
Mov9ToOP1 rMov9ToOP1
FPAdd rFPAdd

Example

rst rFPAdd

Equates

rOP1ToOP2   EQU  08h
rFindSym    EQU  10h
rPushRealO1 EQU  18h
rMov9ToOP1  EQU  20h
rFPAdd      EQU  30h

Remarks

You cannot define your own RSTs; they are part of the operating system.