--- hatari/src/includes/ioMem.h 2019/04/01 07:13:43 1.1.1.3 +++ hatari/src/includes/ioMem.h 2019/04/09 08:53:16 1.1.1.6 @@ -1,8 +1,8 @@ /* Hatari - ioMem.h - This file is distributed under the GNU Public License, version 2 or at - your option any later version. Read the file gpl.txt for details. + This file is distributed under the GNU General Public License, version 2 + or at your option any later version. Read the file gpl.txt for details. */ #ifndef HATARI_IOMEM_H @@ -27,32 +27,31 @@ extern Uint32 IoAccessCurrentAddress; extern int nIoMemAccessSize; -/*-----------------------------------------------------------------------*/ -/* - Read 32-bit word from IO memory space without interception. - NOTE - value will be converted to PC endian. -*/ +/** + * Read 32-bit word from IO memory space without interception. + * NOTE - value will be converted to PC endian. + */ static inline Uint32 IoMem_ReadLong(Uint32 Address) { Address &= 0x0ffffff; return do_get_mem_long(&IoMem[Address]); } -/*-----------------------------------------------------------------------*/ -/* - Read 16-bit word from IO memory space without interception. - NOTE - value will be converted to PC endian. -*/ + +/** + * Read 16-bit word from IO memory space without interception. + * NOTE - value will be converted to PC endian. + */ static inline Uint16 IoMem_ReadWord(Uint32 Address) { Address &= 0x0ffffff; return do_get_mem_word(&IoMem[Address]); } -/*-----------------------------------------------------------------------*/ -/* - Read 8-bit byte from IO memory space without interception. -*/ + +/** + * Read 8-bit byte from IO memory space without interception. + */ static inline Uint8 IoMem_ReadByte(Uint32 Address) { Address &= 0x0ffffff; @@ -60,32 +59,31 @@ static inline Uint8 IoMem_ReadByte(Uint3 } -/*-----------------------------------------------------------------------*/ -/* - Write 32-bit word into IO memory space without interception. - NOTE - value will be convert to 68000 endian -*/ +/** + * Write 32-bit word into IO memory space without interception. + * NOTE - value will be convert to 68000 endian + */ static inline void IoMem_WriteLong(Uint32 Address, Uint32 Var) { Address &= 0x0ffffff; do_put_mem_long(&IoMem[Address], Var); } -/*-----------------------------------------------------------------------*/ -/* - Write 16-bit word into IO memory space without interception. - NOTE - value will be convert to 68000 endian. -*/ + +/** + * Write 16-bit word into IO memory space without interception. + * NOTE - value will be convert to 68000 endian. + */ static inline void IoMem_WriteWord(Uint32 Address, Uint16 Var) { Address &= 0xffffff; do_put_mem_word(&IoMem[Address], Var); } -/*-----------------------------------------------------------------------*/ -/* - Write 8-bit byte into IO memory space without interception. -*/ + +/** + * Write 8-bit byte into IO memory space without interception. + */ static inline void IoMem_WriteByte(Uint32 Address, Uint8 Var) { Address &= 0x0ffffff; @@ -95,6 +93,8 @@ static inline void IoMem_WriteByte(Uint3 extern void IoMem_Init(void); extern void IoMem_UnInit(void); +extern void IoMem_Init_FalconInSTeBuscompatibilityMode(Uint8 value); + extern uae_u32 IoMem_bget(uaecptr addr); extern uae_u32 IoMem_wget(uaecptr addr); @@ -109,8 +109,11 @@ extern void IoMem_BusErrorOddReadAccess( extern void IoMem_BusErrorEvenWriteAccess(void); extern void IoMem_BusErrorOddWriteAccess(void); extern void IoMem_VoidRead(void); +extern void IoMem_VoidRead_00(void); extern void IoMem_VoidWrite(void); extern void IoMem_WriteWithoutInterception(void); extern void IoMem_ReadWithoutInterception(void); +extern void IoMem_MemorySnapShot_Capture(bool bSave); + #endif