--- uae/amiga/source/uae_pragmas.h 2018/04/24 16:38:39 1.1 +++ uae/amiga/source/uae_pragmas.h 2018/04/24 16:39:40 1.1.1.2 @@ -1,38 +1,78 @@ -int GetVersion(void); -int GetUaeConfig(struct UAE_CONFIG *); -int SetUaeConfig(struct UAE_CONFIG *); -int HardReset(void); -int Reset(void); -int EjectDisk(ULONG drive); -int InsertDisk(UBYTE *name, ULONG drive); -int EnableSound(void); -int DisableSound(void); -int EnableJoystick(void); -int DisableJoystick(void); -int SetFrameRate(ULONG rate); -int ChgCMemSize(ULONG mem); -int ChgSMemSize(ULONG mem); -int ChgFMemSize(ULONG mem); -int ChangeLanguage(ULONG lang); -int ExitEmu(void); -int GetDisk(ULONG drive, UBYTE *name); -int DebugFunc(void); -#pragma libcall UaeBase GetVersion 1e 0 -#pragma libcall UaeBase GetUaeConfig 24 801 -#pragma libcall UaeBase SetUaeConfig 2a 801 -#pragma libcall UaeBase HardReset 30 0 -#pragma libcall UaeBase Reset 36 0 -#pragma libcall UaeBase EjectDisk 3c 001 -#pragma libcall UaeBase InsertDisk 42 0802 -#pragma libcall UaeBase EnableSound 48 0 -#pragma libcall UaeBase DisableSound 4e 0 -#pragma libcall UaeBase EnableJoystick 54 0 -#pragma libcall UaeBase DisableJoystick 5a 0 -#pragma libcall UaeBase SetFrameRate 60 001 -#pragma libcall UaeBase ChgCMemSize 66 001 -#pragma libcall UaeBase ChgSMemSize 6c 001 -#pragma libcall UaeBase ChgFMemSize 72 001 -#pragma libcall UaeBase ChangeLanguage 78 001 -#pragma libcall UaeBase ExitEmu 7e 0 -#pragma libcall UaeBase GetDisk 84 8002 -#pragma libcall UaeBase DebugFunc 8A 0 +static int (*calltrap)(...) = (int (*)(...))0xF0FF60; + +static int GetVersion(void) +{ + calltrap (0); +} +static int GetUaeConfig(struct UAE_CONFIG *a) +{ + calltrap (1, a); +} +static int SetUaeConfig(struct UAE_CONFIG *a) +{ + calltrap (2, a); +} +static int HardReset(void) +{ + calltrap (3); +} +static int Reset(void) +{ + calltrap (4); +} +static int EjectDisk(ULONG drive) +{ + calltrap (5, "", drive); +} +static int InsertDisk(UBYTE *name, ULONG drive) +{ + calltrap (5, name, drive); +} +static int EnableSound(void) +{ + calltrap (6, 2); +} +static int DisableSound(void) +{ + calltrap (6, 1); +} +static int EnableJoystick(void) +{ + calltrap (7, 1); +} +static int DisableJoystick(void) +{ + calltrap (7, 0); +} +static int SetFrameRate(ULONG rate) +{ + calltrap (8, rate); +} +static int ChgCMemSize(ULONG mem) +{ + calltrap (9, mem); +} +static int ChgSMemSize(ULONG mem) +{ + calltrap (10, mem); +} +static int ChgFMemSize(ULONG mem) +{ + calltrap (11, mem); +} +static int ChangeLanguage(ULONG lang) +{ + calltrap (12, lang); +} +static int ExitEmu(void) +{ + calltrap (13); +} +static int GetDisk(ULONG drive, UBYTE *name) +{ + calltrap (14, drive, name); +} +static int DebugFunc(void) +{ + calltrap (15); +}