Topic : TOS - das Betriebssystem Author : Version : tos.hyp (5. März 2013) Subject : Programmieren/Atari Nodes : 3001 Index Size : 93602 HCP-Version : 5 Compiled on : Atari @charset : atarist @lang : @default : Titel @help : @options : +g -i -s +x +zz -t4 @width : 70 View Ref-File14.2.1.2 mps_base.def TOS // Tabsize: 3 // Letzte Änderung: 15.08.96 // Autor: FS // ------------------------------------------------------------------------------ // // Die MagiC PC - Programmier-Schnittstelle // // mps_base.h: Basis-Include !! UNVERÄNDERT ÜBERNEHMEN !! // ====================== #ifdef __cplusplus extern "C" { #endif /* ========================================================================= Die vom Anwender frei definierbaren DLL-Funktionen haben die Form void mps_funktion(MPS_motregs *r), wobei r ein Pointer auf die 16 Motorola-Register darstellt, also: */ typedef struct { // MPS_motregs = Die Motorola-Register long d0,d1,d2,d3,d4,d5,d6,d7; long a0,a1,a2,a3,a4,a5,a6,a7; } MPS_motregs; // MPS_fuptr = Pointer auf eine MPS_Funktion: typedef void (*MPS_fuptr)(MPS_motregs *); /* ============================================================ Der DLL-Basisfunktion mps_info wird der folgende Infoblock MPS_infostr mitgegeben: */ typedef struct { DWORD sizeof_str; // Größe von MPS_infostr DWORD magic_version; // z.B. 0x010001 DWORD magic_date; // z.B. 19960815 (aufsteigend) BYTE is_demo; // Ist demoversion? BYTE uu1, uu2, uu3; // noch unbenutzt, 0 BYTE *(*intel_adr)(DWORD motadr); // Adressumrechnung Motorola -> Intel BYTE *(*intel_ptr)(DWORD motptr); // Pointer-Umrechnung Motorola -> Intel (NULL bleibt NULL!) WORD (*swap_word)(WORD w); // Ein Word swappen DWORD (*swap_long)(DWORD dw); // Ein Langwort swappen } MPS_magicinfo; // =============== zu exportieren sind 3 Basisfunktionen: ================== // int mps_get_type(); // @101 int mps_get_functionlist(DWORD *mps_dll_id,MPS_fuptr **p_funktionsliste); // @102 void mps_magicinfo(MPS_magicinfo *is); // @103 // // siehe auch mps_base.cpp, mps_base.def #ifdef __cplusplus } #endif Querverweise: MagiC PC-Schnittstelle