void CfrTil_system0 ( ) { _Compile_Stack_PopToReg ( DSP, EAX ) ; _Compile_INT80 ( ) ; _Compile_Stack_PushReg ( DSP, EAX ) ; }
void _Compile_Rsp_Fetch ( ) { _Compile_Move_Reg_To_Reg ( EAX, ESP ) ; _Compile_Move_Rm_To_Reg ( EAX, EAX, 0 * CELL ) ; _Compile_Stack_PushReg ( DSP, EAX ) ; }
void _Compile_ESP_Save ( ) { #if 1 _Compile_Move_Reg_To_Rm ( ESI, ESP, 4 ) ; // 4 : placeholder _Context_->Compiler0->EspSaveOffset = Here - 1 ; // only takes one byte for _Compile_Move_Reg_To_Rm ( ESI, 4, ESP ) // TO DO : i think this (below) is what it should be but some adjustments need to be made to make it work //byte * here = Here ; //_Compile_Stack_Push_Reg ( DSP, ESP ) ; //compiler->EspSaveOffset = here ; // only takes one byte for _Compile_Move_Reg_To_Rm ( ESI, 4, ESP ) #else _Compile_Stack_PushReg ( DSP, ESP ) ; #endif }
void _Compile_Rsp_Get ( ) { _Compile_Stack_PushReg ( DSP, ESP ) ; }