home *** CD-ROM | disk | FTP | other *** search
- (* ----------------------------------------------------------------------- *)
- (* NEWSTACK.INC *)
- (* Verlegt den Laufzeitstapel in einen eigens dafür im Datensegment der *)
- (* Interrupt-Routine vorgesehen Pufferbereich. Nach Durchlaufen des In- *)
- (* line Befehls kann auf die "PgmRegs" nicht mehr zugegriffen werden! *)
- (* ----------------------------------------------------------------------- *)
- INLINE ($8C/$D3/ (* MOV BX,SS ;Stacksegment sichern *)
- $89/$E1/ (* MOV CX,SP ;Stackpointer sichern *)
- $8C/$D8/ (* MOV AX,DS ;Datensegment holen *)
- $8E/$D0/ (* MOV SS,AX ;Stapel im Datensegment! *)
- $BC/StackTop/ (* MOV SP,StackTop ;SP auf neuen Wert *)
- $53/ (* PUSH BX ;altes SS auf Stapel *)
- $51/ (* PUSH CX ;alter SP auf Stapel *)
- $55/ (* PUSH BP ;alter BP auf Stapel *)
- $89/$E5/ (* MOV BP,SP ;Basepointer neu laden *)
- $55); (* PUSH BP ;und sichern *)
- (* ----------------------------------------------------------------------- *)
- (* NEWSTACK.INC *)
-