67 lines
1.4 KiB
PHP
67 lines
1.4 KiB
PHP
; Copyright (C) 2025 Elaina Claus
|
|
;
|
|
; This program is free software: you can redistribute it and/or modify
|
|
; it under the terms of the GNU General Public License as published by
|
|
; the Free Software Foundation, either version 3 of the License, or
|
|
; (at your option) any later version.
|
|
;
|
|
; This program is distributed in the hope that it will be useful,
|
|
; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
; GNU General Public License for more details.
|
|
;
|
|
; You should have received a copy of the GNU General Public License
|
|
; along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
%ifnmacro __CDECL16_ENTRY
|
|
%macro __CDECL16_ENTRY 0
|
|
push bp
|
|
mov bp, sp
|
|
sub sp, 0x10
|
|
|
|
push si
|
|
push di
|
|
push bx
|
|
%endmacro
|
|
%endif
|
|
|
|
%ifnmacro __CDECL16_EXIT
|
|
%macro __CDECL16_EXIT 0
|
|
pop bx
|
|
pop di
|
|
pop si
|
|
|
|
mov sp, bp
|
|
pop bp
|
|
%endmacro
|
|
%endif
|
|
|
|
%ifnmacro __CDECL16_CALLER_SAVE
|
|
%macro __CDECL16_CALLER_SAVE 0
|
|
push ax
|
|
push cx
|
|
push dx
|
|
%endmacro
|
|
%endif
|
|
|
|
%ifnmacro __CDECL16_CALLER_RESTORE
|
|
%macro __CDECL16_CALLER_RESTORE 0
|
|
pop dx
|
|
pop cx
|
|
pop ax
|
|
%endmacro
|
|
%endif
|
|
|
|
%ifnmacro __FASTCALL16_ENTRY
|
|
%macro __FASTCALL16_ENTRY 0
|
|
push bp
|
|
mov bp, sp
|
|
%endmacro
|
|
%endif
|
|
|
|
%ifnmacro __FASTCALL16_EXIT
|
|
%macro __FASTCALL16_EXIT 0
|
|
mov sp, bp
|
|
pop bp
|
|
%endmacro
|
|
%endif |