Browse Source

Update md.asm

Simplify stack setup for relocatable code
pull/168/head
b1ackmai1er 5 years ago
parent
commit
eaa4ceaa38
  1. 7
      Source/HBIOS/md.asm

7
Source/HBIOS/md.asm

@ -813,13 +813,10 @@ MD_FNCALL:
CALL PRTHEXWORD CALL PRTHEXWORD
#ENDIF #ENDIF
; ;
LD HL,MD_FNRET ; ADDRESS RELOCATABLE CODE TO RETURN TO
HB_DI HB_DI
LD (FF_SAVSTK),SP ; SAVE CURRENT STACK LD (FF_SAVSTK),SP ; SAVE CURRENT STACK
LD SP,HBX_BUF_END-2 ; SETUP A NEW HIMEM STACK AT END OF HX_BUF
EX (SP),HL ; BEHIND CODE WITH RETURN ADDRESS PREPOPULATED
JP HBX_BUF ; EXECUTE RELOCATED CODE
MD_FNRET:
LD SP,HBX_BUF_END ; SETUP A NEW HIMEM STACK AT END OF HX_BUF
CALL HBX_BUF ; EXECUTE RELOCATED CODE
LD SP,(FF_SAVSTK) ; RESTORE STACK LD SP,(FF_SAVSTK) ; RESTORE STACK
HB_EI HB_EI
; ;

Loading…
Cancel
Save