00001 #ifndef _VICEREMOTE_H
00002 #define _VICEREMOTE_H
00003
00004 typedef
00005 struct REMOTECONTROL_REGS {
00006 UINT AC;
00007 UINT XR;
00008 UINT YR;
00009 UINT SP;
00010 UINT FLAGS;
00011 UINT PC;
00012 } REMOTECONTROL_REGS;
00013
00014 typedef
00015 struct REMOTECONTROL_ONEREGBUFFER {
00016 REMOTECONTROL_REGS InRegs;
00017 REMOTECONTROL_REGS InRegsValid;
00018 REMOTECONTROL_REGS OutRegs;
00019 } REMOTECONTROL_ONEREGBUFFER;
00020
00021 typedef
00022 struct REMOTECONTROL_MEMBUFFER {
00023 UINT perform;
00024 UINT address;
00025 UINT size;
00026 } REMOTECONTROL_MEMBUFFER;
00027
00028 typedef
00029 struct REMOTECONTROL_ONEMEMBUFFER {
00030 REMOTECONTROL_MEMBUFFER read;
00031 REMOTECONTROL_MEMBUFFER write;
00032 } REMOTECONTROL_ONEMEMBUFFER;
00033
00034 typedef
00035 struct REMOTECONTROL {
00036 UINT version;
00037 UINT viceAvailable;
00038 UINT controllerAvailable;
00039
00040 UINT vicebuffer;
00041 UINT viceackbuffer;
00042 UINT remotecontrollerbuffer;
00043
00044 INT trapaddress;
00045 UINT reset;
00046
00047 INT regupdateaddress;
00048
00049 REMOTECONTROL_ONEMEMBUFFER memorybuffer[2];
00050 REMOTECONTROL_ONEREGBUFFER regbuffer[2];
00051
00052 unsigned char data[2048];
00053
00054 } REMOTECONTROL;
00055
00056 #endif