Getting rid of most of the includes from Supermodel.h; each file now explicitly includes the header files it needs.

Making changes to a header file should no longer force the entire project to recompile.
This commit is contained in:
Matthew Daniels 2021-11-22 17:15:06 +00:00
parent 50465f9a5a
commit 9ffce8b92a
77 changed files with 1024 additions and 915 deletions

View file

@ -26,6 +26,8 @@
* class. * class.
*/ */
#include "BlockFile.h"
#include <cstdio> #include <cstdio>
#include <cstring> #include <cstring>
#include <cstdint> #include <cstdint>

View file

@ -33,9 +33,11 @@
* accesses (interrupts pending, halted status, etc.) * accesses (interrupts pending, halted status, etc.)
*/ */
#include "68K.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Musashi/m68k.h" // Musashi 68K core #include "Musashi/m68k.h" // Musashi 68K core
#include "Debugger/CPU/Musashi68KDebug.h"
/****************************************************************************** /******************************************************************************
Internal Context Internal Context

View file

@ -37,6 +37,7 @@
#include "Musashi/m68k.h" #include "Musashi/m68k.h"
#include "Musashi/m68kctx.h" #include "Musashi/m68kctx.h"
#include "CPU/Bus.h" #include "CPU/Bus.h"
#include "BlockFile.h"
// This doesn't work for now (needs to be added to the prototypes in m68k.h for m68k_read_memory*) // This doesn't work for now (needs to be added to the prototypes in m68k.h for m68k_read_memory*)
//#ifndef FASTCALL //#ifndef FASTCALL

View file

@ -28,6 +28,7 @@
#ifndef INCLUDED_BUS_H #ifndef INCLUDED_BUS_H
#define INCLUDED_BUS_H #define INCLUDED_BUS_H
#include "Types.h"
/* /*
* IBus: * IBus:

View file

@ -28,16 +28,15 @@
/* IBM/Motorola PowerPC 4xx/6xx Emulator */ /* IBM/Motorola PowerPC 4xx/6xx Emulator */
#include "ppc.h"
#include <cstring> // memset() #include <cstring> // memset()
#include "Supermodel.h" #include "Supermodel.h"
#include "ppc.h" #include "CPU/Bus.h"
// Typedefs that Supermodel no longer provides // Typedefs that Supermodel no longer provides
typedef unsigned int UINT; typedef unsigned int UINT;
// C++ should allow this...
#define INLINE inline
// Model 3 context provides read/write handlers // Model 3 context provides read/write handlers
static class IBus *Bus = NULL; // pointer to Model 3 bus object (for access handlers) static class IBus *Bus = NULL; // pointer to Model 3 bus object (for access handlers)
@ -318,42 +317,42 @@ static void ppc_change_pc(UINT32 newpc)
ppc.fatalError = true; ppc.fatalError = true;
} }
INLINE UINT8 READ8(UINT32 address) inline UINT8 READ8(UINT32 address)
{ {
return Bus->Read8(address); return Bus->Read8(address);
} }
INLINE UINT16 READ16(UINT32 address) inline UINT16 READ16(UINT32 address)
{ {
return Bus->Read16(address); return Bus->Read16(address);
} }
INLINE UINT32 READ32(UINT32 address) inline UINT32 READ32(UINT32 address)
{ {
return Bus->Read32(address); return Bus->Read32(address);
} }
INLINE UINT64 READ64(UINT32 address) inline UINT64 READ64(UINT32 address)
{ {
return Bus->Read64(address); return Bus->Read64(address);
} }
INLINE void WRITE8(UINT32 address, UINT8 data) inline void WRITE8(UINT32 address, UINT8 data)
{ {
Bus->Write8(address,data); Bus->Write8(address,data);
} }
INLINE void WRITE16(UINT32 address, UINT16 data) inline void WRITE16(UINT32 address, UINT16 data)
{ {
Bus->Write16(address,data); Bus->Write16(address,data);
} }
INLINE void WRITE32(UINT32 address, UINT32 data) inline void WRITE32(UINT32 address, UINT32 data)
{ {
Bus->Write32(address,data); Bus->Write32(address,data);
} }
INLINE void WRITE64(UINT32 address, UINT64 data) inline void WRITE64(UINT32 address, UINT64 data)
{ {
Bus->Write64(address,data); Bus->Write64(address,data);
} }
@ -362,7 +361,7 @@ INLINE void WRITE64(UINT32 address, UINT64 data)
/*********************************************************************/ /*********************************************************************/
INLINE void SET_CR0(INT32 rd) inline void SET_CR0(INT32 rd)
{ {
if( rd < 0 ) { if( rd < 0 ) {
CR(0) = 0x8; CR(0) = 0x8;
@ -376,12 +375,12 @@ INLINE void SET_CR0(INT32 rd)
CR(0) |= 0x1; CR(0) |= 0x1;
} }
INLINE void SET_CR1(void) inline void SET_CR1(void)
{ {
CR(1) = (ppc.fpscr >> 28) & 0xf; CR(1) = (ppc.fpscr >> 28) & 0xf;
} }
INLINE void SET_ADD_OV(UINT32 rd, UINT32 ra, UINT32 rb) inline void SET_ADD_OV(UINT32 rd, UINT32 ra, UINT32 rb)
{ {
if( ADD_OV(rd, ra, rb) ) if( ADD_OV(rd, ra, rb) )
XER |= XER_SO | XER_OV; XER |= XER_SO | XER_OV;
@ -389,7 +388,7 @@ INLINE void SET_ADD_OV(UINT32 rd, UINT32 ra, UINT32 rb)
XER &= ~XER_OV; XER &= ~XER_OV;
} }
INLINE void SET_SUB_OV(UINT32 rd, UINT32 ra, UINT32 rb) inline void SET_SUB_OV(UINT32 rd, UINT32 ra, UINT32 rb)
{ {
if( SUB_OV(rd, ra, rb) ) if( SUB_OV(rd, ra, rb) )
XER |= XER_SO | XER_OV; XER |= XER_SO | XER_OV;
@ -397,7 +396,7 @@ INLINE void SET_SUB_OV(UINT32 rd, UINT32 ra, UINT32 rb)
XER &= ~XER_OV; XER &= ~XER_OV;
} }
INLINE void SET_ADD_CA(UINT32 rd, UINT32 ra, UINT32 rb) inline void SET_ADD_CA(UINT32 rd, UINT32 ra, UINT32 rb)
{ {
if( ADD_CA(rd, ra, rb) ) if( ADD_CA(rd, ra, rb) )
XER |= XER_CA; XER |= XER_CA;
@ -405,7 +404,7 @@ INLINE void SET_ADD_CA(UINT32 rd, UINT32 ra, UINT32 rb)
XER &= ~XER_CA; XER &= ~XER_CA;
} }
INLINE void SET_SUB_CA(UINT32 rd, UINT32 ra, UINT32 rb) inline void SET_SUB_CA(UINT32 rd, UINT32 ra, UINT32 rb)
{ {
if( SUB_CA(rd, ra, rb) ) if( SUB_CA(rd, ra, rb) )
XER |= XER_CA; XER |= XER_CA;
@ -413,7 +412,7 @@ INLINE void SET_SUB_CA(UINT32 rd, UINT32 ra, UINT32 rb)
XER &= ~XER_CA; XER &= ~XER_CA;
} }
INLINE UINT32 check_condition_code(UINT32 bo, UINT32 bi) inline UINT32 check_condition_code(UINT32 bo, UINT32 bi)
{ {
UINT32 ctr_ok; UINT32 ctr_ok;
UINT32 condition_ok; UINT32 condition_ok;
@ -431,7 +430,7 @@ INLINE UINT32 check_condition_code(UINT32 bo, UINT32 bi)
return ctr_ok && condition_ok; return ctr_ok && condition_ok;
} }
INLINE UINT64 ppc_read_timebase(void) inline UINT64 ppc_read_timebase(void)
{ {
int cycles = ppc.tb_base_icount - ppc.icount; int cycles = ppc.tb_base_icount - ppc.icount;
@ -439,7 +438,7 @@ INLINE UINT64 ppc_read_timebase(void)
return ppc.tb + (cycles / ppc.timer_ratio); return ppc.tb + (cycles / ppc.timer_ratio);
} }
INLINE void ppc_write_timebase_l(UINT32 tbl) inline void ppc_write_timebase_l(UINT32 tbl)
{ {
UINT64 tb = ppc_read_timebase(); UINT64 tb = ppc_read_timebase();
@ -448,7 +447,7 @@ INLINE void ppc_write_timebase_l(UINT32 tbl)
ppc.tb = (tb&~0xffffffff)|tbl; ppc.tb = (tb&~0xffffffff)|tbl;
} }
INLINE void ppc_write_timebase_h(UINT32 tbh) inline void ppc_write_timebase_h(UINT32 tbh)
{ {
UINT64 tb = ppc_read_timebase(); UINT64 tb = ppc_read_timebase();
@ -457,7 +456,7 @@ INLINE void ppc_write_timebase_h(UINT32 tbh)
ppc.tb = (tb&0xffffffff)|((UINT64)(tbh) << 32); ppc.tb = (tb&0xffffffff)|((UINT64)(tbh) << 32);
} }
INLINE UINT32 read_decrementer(void) inline UINT32 read_decrementer(void)
{ {
int cycles = ppc.dec_base_icount - ppc.icount; int cycles = ppc.dec_base_icount - ppc.icount;
@ -465,7 +464,7 @@ INLINE UINT32 read_decrementer(void)
return DEC - (cycles / ppc.timer_ratio); return DEC - (cycles / ppc.timer_ratio);
} }
INLINE void write_decrementer(UINT32 value) inline void write_decrementer(UINT32 value)
{ {
if (((value&0x80000000) && !(read_decrementer()&0x80000000))) if (((value&0x80000000) && !(read_decrementer()&0x80000000)))
{ {
@ -488,7 +487,7 @@ INLINE void write_decrementer(UINT32 value)
/*********************************************************************/ /*********************************************************************/
INLINE void ppc_set_spr(int spr, UINT32 value) inline void ppc_set_spr(int spr, UINT32 value)
{ {
switch (spr) switch (spr)
{ {
@ -561,7 +560,7 @@ INLINE void ppc_set_spr(int spr, UINT32 value)
ppc.fatalError = true; ppc.fatalError = true;
} }
INLINE UINT32 ppc_get_spr(int spr) inline UINT32 ppc_get_spr(int spr)
{ {
switch(spr) switch(spr)
{ {
@ -624,7 +623,7 @@ INLINE UINT32 ppc_get_spr(int spr)
return 0; return 0;
} }
INLINE void ppc_set_msr(UINT32 value) inline void ppc_set_msr(UINT32 value)
{ {
if( value & (MSR_ILE | MSR_LE) ) if( value & (MSR_ILE | MSR_LE) )
{ {
@ -638,12 +637,12 @@ INLINE void ppc_set_msr(UINT32 value)
ppc603_check_interrupts(); ppc603_check_interrupts();
} }
INLINE UINT32 ppc_get_msr(void) inline UINT32 ppc_get_msr(void)
{ {
return MSR; return MSR;
} }
INLINE void ppc_set_cr(UINT32 value) inline void ppc_set_cr(UINT32 value)
{ {
CR(0) = (value >> 28) & 0xf; CR(0) = (value >> 28) & 0xf;
CR(1) = (value >> 24) & 0xf; CR(1) = (value >> 24) & 0xf;
@ -655,7 +654,7 @@ INLINE void ppc_set_cr(UINT32 value)
CR(7) = (value >> 0) & 0xf; CR(7) = (value >> 0) & 0xf;
} }
INLINE UINT32 ppc_get_cr(void) inline UINT32 ppc_get_cr(void)
{ {
return CR(0) << 28 | CR(1) << 24 | CR(2) << 20 | CR(3) << 16 | CR(4) << 12 | CR(5) << 8 | CR(6) << 4 | CR(7); return CR(0) << 28 | CR(1) << 24 | CR(2) << 20 | CR(3) << 16 | CR(4) << 12 | CR(5) << 8 | CR(6) << 4 | CR(7);
} }

View file

@ -28,6 +28,9 @@
#ifndef INCLUDED_PPC_H #ifndef INCLUDED_PPC_H
#define INCLUDED_PPC_H #define INCLUDED_PPC_H
#include "BlockFile.h"
#include "Types.h"
#include "Debugger/CPU/PPCDebug.h"
/****************************************************************************** /******************************************************************************
Definitions Definitions

View file

@ -1568,33 +1568,33 @@ static void ppc_invalid(UINT32 op)
*/ */
/*************************OLD /*************************OLD
INLINE int is_nan_double(FPR x) inline int is_nan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) );
} }
INLINE int is_qnan_double(FPR x) inline int is_qnan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & 0x0007fffffffffff) == 0x000000000000000) && ((x.id & 0x0007fffffffffff) == 0x000000000000000) &&
((x.id & 0x000800000000000) == 0x000800000000000) ); ((x.id & 0x000800000000000) == 0x000800000000000) );
} }
INLINE int is_snan_double(FPR x) inline int is_snan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) && ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) &&
((x.id & 0x0008000000000000) == DOUBLE_ZERO) ); ((x.id & 0x0008000000000000) == DOUBLE_ZERO) );
} }
INLINE int is_infinity_double(FPR x) inline int is_infinity_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) == DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) == DOUBLE_ZERO) );
} }
INLINE int is_normalized_double(FPR x) inline int is_normalized_double(FPR x)
{ {
UINT64 exp; UINT64 exp;
@ -1603,18 +1603,18 @@ INLINE int is_normalized_double(FPR x)
return (exp >= 1) && (exp <= 2046); return (exp >= 1) && (exp <= 2046);
} }
INLINE int is_denormalized_double(FPR x) inline int is_denormalized_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == 0) && return( ((x.id & DOUBLE_EXP) == 0) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) );
} }
INLINE int sign_double(FPR x) inline int sign_double(FPR x)
{ {
return ((x.id & DOUBLE_SIGN) != 0); return ((x.id & DOUBLE_SIGN) != 0);
} }
INLINE INT64 round_to_nearest(FPR f) inline INT64 round_to_nearest(FPR f)
{ {
//return (INT64)(f.fd + 0.5); //return (INT64)(f.fd + 0.5);
if (f.fd >= 0) if (f.fd >= 0)
@ -1627,18 +1627,18 @@ INLINE INT64 round_to_nearest(FPR f)
} }
} }
INLINE INT64 round_toward_zero(FPR f) inline INT64 round_toward_zero(FPR f)
{ {
return (INT64)(f.fd); return (INT64)(f.fd);
} }
INLINE INT64 round_toward_positive_infinity(FPR f) inline INT64 round_toward_positive_infinity(FPR f)
{ {
double r = ceil(f.fd); double r = ceil(f.fd);
return (INT64)(r); return (INT64)(r);
} }
INLINE INT64 round_toward_negative_infinity(FPR f) inline INT64 round_toward_negative_infinity(FPR f)
{ {
double r = floor(f.fd); double r = floor(f.fd);
return (INT64)(r); return (INT64)(r);
@ -1647,33 +1647,33 @@ INLINE INT64 round_toward_negative_infinity(FPR f)
// New below, based on changes in MAME // New below, based on changes in MAME
INLINE int is_nan_double(FPR x) inline int is_nan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) );
} }
INLINE int is_qnan_double(FPR x) inline int is_qnan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & 0x0007fffffffffffULL) == 0x000000000000000ULL) && ((x.id & 0x0007fffffffffffULL) == 0x000000000000000ULL) &&
((x.id & 0x000800000000000ULL) == 0x000800000000000ULL) ); ((x.id & 0x000800000000000ULL) == 0x000800000000000ULL) );
} }
INLINE int is_snan_double(FPR x) inline int is_snan_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) && ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) &&
((x.id & (0x0008000000000000ULL)) == DOUBLE_ZERO) ); ((x.id & (0x0008000000000000ULL)) == DOUBLE_ZERO) );
} }
INLINE int is_infinity_double(FPR x) inline int is_infinity_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) && return( ((x.id & DOUBLE_EXP) == DOUBLE_EXP) &&
((x.id & DOUBLE_FRAC) == DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) == DOUBLE_ZERO) );
} }
INLINE int is_normalized_double(FPR x) inline int is_normalized_double(FPR x)
{ {
UINT64 exp; UINT64 exp;
@ -1682,18 +1682,18 @@ INLINE int is_normalized_double(FPR x)
return (exp >= 1) && (exp <= 2046); return (exp >= 1) && (exp <= 2046);
} }
INLINE int is_denormalized_double(FPR x) inline int is_denormalized_double(FPR x)
{ {
return( ((x.id & DOUBLE_EXP) == 0) && return( ((x.id & DOUBLE_EXP) == 0) &&
((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) ); ((x.id & DOUBLE_FRAC) != DOUBLE_ZERO) );
} }
INLINE int sign_double(FPR x) inline int sign_double(FPR x)
{ {
return ((x.id & DOUBLE_SIGN) != 0); return ((x.id & DOUBLE_SIGN) != 0);
} }
INLINE INT64 smround_to_nearest(FPR f) inline INT64 smround_to_nearest(FPR f)
{ {
if (f.fd >= 0) if (f.fd >= 0)
{ {
@ -1705,18 +1705,18 @@ INLINE INT64 smround_to_nearest(FPR f)
} }
} }
INLINE INT64 smround_toward_zero(FPR f) inline INT64 smround_toward_zero(FPR f)
{ {
return (INT64)(f.fd); return (INT64)(f.fd);
} }
INLINE INT64 round_toward_positive_infinity(FPR f) inline INT64 round_toward_positive_infinity(FPR f)
{ {
double r = ceil(f.fd); double r = ceil(f.fd);
return (INT64)(r); return (INT64)(r);
} }
INLINE INT64 round_toward_negative_infinity(FPR f) inline INT64 round_toward_negative_infinity(FPR f)
{ {
double r = floor(f.fd); double r = floor(f.fd);
return (INT64)(r); return (INT64)(r);
@ -1725,7 +1725,7 @@ INLINE INT64 round_toward_negative_infinity(FPR f)
#define SET_VXSNAN(a, b) if (is_snan_double(a) || is_snan_double(b)) ppc.fpscr |= 0x80000000 #define SET_VXSNAN(a, b) if (is_snan_double(a) || is_snan_double(b)) ppc.fpscr |= 0x80000000
#define SET_VXSNAN_1(c) if (is_snan_double(c)) ppc.fpscr |= 0x80000000 #define SET_VXSNAN_1(c) if (is_snan_double(c)) ppc.fpscr |= 0x80000000
INLINE void set_fprf(FPR f) inline void set_fprf(FPR f)
{ {
UINT32 fprf; UINT32 fprf;

View file

@ -29,10 +29,12 @@
* Please see Z80.h for a discussion of known inaccuracies. * Please see Z80.h for a discussion of known inaccuracies.
*/ */
#include <cstdio> // for NULL
#include "Supermodel.h"
#include "Z80.h" // must include this first to define CZ80 #include "Z80.h" // must include this first to define CZ80
#include <cstdio> // for NULL
#include "Supermodel.h"
#include "Debugger/CPU/Z80Debug.h"
/****************************************************************************** /******************************************************************************
Internal Helper Macros Internal Helper Macros

View file

@ -25,14 +25,23 @@
#ifdef SUPERMODEL_DEBUGGER #ifdef SUPERMODEL_DEBUGGER
#include "Supermodel.h" #include "SupermodelDebugger.h"
#include "Supermodel.h"
#include "BlockFile.h"
#include "ConsoleDebugger.h" #include "ConsoleDebugger.h"
#include "CPUDebug.h" #include "CPUDebug.h"
#include "Label.h" #include "Label.h"
#ifdef NET_BOARD #ifdef NET_BOARD
#include "Network/NetBoard.h" #include "Network/NetBoard.h"
#endif // NET_BOARD #endif // NET_BOARD
#include "CPU/Musashi68KDebug.h"
#include "CPU/PPCDebug.h"
#include "CPU/Z80Debug.h"
#include "Inputs/Input.h"
#include "Inputs/InputSystem.h"
#include "Model3/SoundBoard.h"
#include "OSD/Audio.h"
#include <cstdio> #include <cstdio>
#include <string> #include <string>

View file

@ -28,12 +28,12 @@
#define INCLUDED_SUPERMODELDEBUGGER_H #define INCLUDED_SUPERMODELDEBUGGER_H
#include "ConsoleDebugger.h" #include "ConsoleDebugger.h"
#include "Model3/Model3.h"
#include <stdarg.h> #include <stdarg.h>
#define MODEL3_STATEFILE_VERSION 0 #define MODEL3_STATEFILE_VERSION 0
class CModel3;
class CInputs; class CInputs;
class CInput; class CInput;

View file

@ -32,6 +32,7 @@
*/ */
#include "Supermodel.h" #include "Supermodel.h"
#include "Legacy3D.h"
namespace Legacy3D { namespace Legacy3D {

View file

@ -156,8 +156,12 @@
* - Can some of the floating point flag attribs be replaced with ints? * - Can some of the floating point flag attribs be replaced with ints?
*/ */
#include "Legacy3D.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Graphics/Legacy3D/Shaders3D.h" // fragment and vertex shaders #include "Shaders3D.h" // fragment and vertex shaders
#include "Graphics/Shader.h"
#include <algorithm> #include <algorithm>
#include <cmath> #include <cmath>
#include <cstdint> #include <cstdint>

View file

@ -29,9 +29,11 @@
#ifndef INCLUDED_LEGACY3D_H #ifndef INCLUDED_LEGACY3D_H
#define INCLUDED_LEGACY3D_H #define INCLUDED_LEGACY3D_H
#include "TextureRefs.h"
#include "Graphics/IRender3D.h" #include "Graphics/IRender3D.h"
#include <GL/glew.h> #include <GL/glew.h>
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include "Types.h"
namespace Legacy3D { namespace Legacy3D {

View file

@ -106,6 +106,7 @@
#include <cmath> #include <cmath>
#include <cstring> #include <cstring>
#include "Supermodel.h" #include "Supermodel.h"
#include "Legacy3D.h"
#ifdef DEBUG #ifdef DEBUG
extern int g_testPolyHeaderIdx; extern int g_testPolyHeaderIdx;

View file

@ -30,7 +30,10 @@
* to using a hashset to store the texture references, but this requires extra memory allocation. * to using a hashset to store the texture references, but this requires extra memory allocation.
*/ */
#include "TextureRefs.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Legacy3D.h"
namespace Legacy3D { namespace Legacy3D {

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_TEXTUREREFS_H #ifndef INCLUDED_TEXTUREREFS_H
#define INCLUDED_TEXTUREREFS_H #define INCLUDED_TEXTUREREFS_H
namespace Legacy3D { namespace Legacy3D {
#define TEXREFS_ARRAY_SIZE 12 #define TEXREFS_ARRAY_SIZE 12
@ -38,7 +40,7 @@ struct HashEntry
const unsigned texRef; // Texture reference as a bitfield const unsigned texRef; // Texture reference as a bitfield
HashEntry *nextEntry; // Next entry with the same hash HashEntry *nextEntry; // Next entry with the same hash
HashEntry(unsigned theTexRef) : texRef(theTexRef), nextEntry(NULL) { } HashEntry(unsigned theTexRef) : texRef(theTexRef), nextEntry(nullptr) { }
}; };
class CLegacy3D; class CLegacy3D;

View file

@ -5,7 +5,7 @@ namespace New3D {
PolyHeader::PolyHeader() PolyHeader::PolyHeader()
{ {
header = NULL; header = nullptr;
} }
PolyHeader::PolyHeader(UINT32* h) PolyHeader::PolyHeader(UINT32* h)

View file

@ -1,6 +1,8 @@
#ifndef _POLY_HEADER_H_ #ifndef _POLY_HEADER_H_
#define _POLY_HEADER_H_ #define _POLY_HEADER_H_
#include "Types.h"
namespace New3D { namespace New3D {
/* /*

View file

@ -274,10 +274,14 @@
* -- one for A/A' and another for B/B'. These are passed to the renderer. * -- one for A/A' and another for B/B'. These are passed to the renderer.
*/ */
#include "Render2D.h"
#include "Supermodel.h"
#include "Shader.h"
#include "Shaders2D.h" // fragment and vertex shaders
#include <cstring> #include <cstring>
#include <GL/glew.h> #include <GL/glew.h>
#include "Supermodel.h"
#include "Graphics/Shaders2D.h" // fragment and vertex shaders
/****************************************************************************** /******************************************************************************

View file

@ -26,7 +26,10 @@
* from this. * from this.
*/ */
#include "Input.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "InputSystem.h"
CInput::CInput(const char *inputId, const char *inputLabel, unsigned inputFlags, unsigned inputGameFlags, const char *defaultMapping, UINT16 initValue) : CInput::CInput(const char *inputId, const char *inputLabel, unsigned inputFlags, unsigned inputGameFlags, const char *defaultMapping, UINT16 initValue) :
id(inputId), label(inputLabel), flags(inputFlags), gameFlags(inputGameFlags), m_defaultMapping(defaultMapping), value(initValue), prevValue(initValue), id(inputId), label(inputLabel), flags(inputFlags), gameFlags(inputGameFlags), m_defaultMapping(defaultMapping), value(initValue), prevValue(initValue),

View file

@ -29,11 +29,11 @@
#ifndef INCLUDED_INPUT_H #ifndef INCLUDED_INPUT_H
#define INCLUDED_INPUT_H #define INCLUDED_INPUT_H
#include "InputSource.h"
#include "Types.h" #include "Types.h"
#include "Game.h" #include "Game.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
class CInputSource;
class CInputSystem; class CInputSystem;
// Flags for inputs // Flags for inputs

View file

@ -27,7 +27,10 @@
* values for analog inputs. * values for analog inputs.
*/ */
#include "InputSource.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Input.h"
#include <vector> #include <vector>
using namespace std; using namespace std;

View file

@ -32,7 +32,11 @@
// - open up API to allow direct access to keyboard, mouse and joystick values // - open up API to allow direct access to keyboard, mouse and joystick values
// - add GetKey method that is easier to use than reading keyboard with ReadMapping // - add GetKey method that is easier to use than reading keyboard with ReadMapping
#include "InputSystem.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Input.h"
#include "OSD/Thread.h"
#include <cmath> #include <cmath>
#include <string> #include <string>

View file

@ -26,6 +26,8 @@
* all very simple classes. * all very simple classes.
*/ */
#include "InputTypes.h"
#include "Supermodel.h" #include "Supermodel.h"
/* /*

View file

@ -27,7 +27,11 @@
* maintains all individual inputs. * maintains all individual inputs.
*/ */
#include "Inputs.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "InputSystem.h"
#include "InputTypes.h"
#include "Game.h" #include "Game.h"
#include <stdarg.h> #include <stdarg.h>
#include <vector> #include <vector>

View file

@ -28,17 +28,13 @@
#ifndef INCLUDED_INPUTS_H #ifndef INCLUDED_INPUTS_H
#define INCLUDED_INPUTS_H #define INCLUDED_INPUTS_H
#include "InputTypes.h"
#include "Types.h" #include "Types.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include <vector> #include <vector>
class CInputSystem; class CInputSystem;
class CInput; class CInput;
class CAnalogInput;
class CAxisInput;
class CSwitchInput;
class CGearShift4Input;
class CTriggerInput;
struct Game; struct Game;
/* /*

View file

@ -25,7 +25,10 @@
* Implementation of CMultiInputSource. * Implementation of CMultiInputSource.
*/ */
#include "MultiInputSource.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Input.h"
#include <vector> #include <vector>
using namespace std; using namespace std;

View file

@ -43,9 +43,11 @@
* *
*/ */
#include "53C810.h"
#include <cstring> #include <cstring>
#include "Supermodel.h" #include "Supermodel.h"
#include "CPU/PowerPC/ppc.h"
/****************************************************************************** /******************************************************************************
Save States Save States

View file

@ -28,6 +28,10 @@
#ifndef INCLUDED_53C810_H #ifndef INCLUDED_53C810_H
#define INCLUDED_53C810_H #define INCLUDED_53C810_H
#include "IRQ.h"
#include "PCI.h"
#include "BlockFile.h"
#include "CPU/Bus.h"
/* /*
* struct NCR53C810Context: * struct NCR53C810Context:

View file

@ -31,6 +31,8 @@
* should just be set to 0? * should just be set to 0?
*/ */
#include "93C46.h"
#include <string.h> #include <string.h>
#include "Supermodel.h" #include "Supermodel.h"

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_93C46_H #ifndef INCLUDED_93C46_H
#define INCLUDED_93C46_H #define INCLUDED_93C46_H
#include "BlockFile.h"
#include "Types.h"
/* /*
* C93C46: * C93C46:

View file

@ -37,6 +37,8 @@
* - Should we do some bounds checking on the MPEG start/end points? * - Should we do some bounds checking on the MPEG start/end points?
*/ */
#include "DSB.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Sound/MPEG/MpegAudio.h" #include "Sound/MPEG/MpegAudio.h"
#include <algorithm> #include <algorithm>

View file

@ -34,6 +34,8 @@
#include "Types.h" #include "Types.h"
#include "CPU/Bus.h" #include "CPU/Bus.h"
#include "CPU/68K/68K.h"
#include "CPU/Z80/Z80.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"

View file

@ -57,6 +57,8 @@
** **
**/ **/
#include "BillBoard.h"
#include "Supermodel.h" #include "Supermodel.h"
#include <cstdio> #include <cstdio>

View file

@ -29,6 +29,7 @@
#ifndef INCLUDED_BILLBOARD_H #ifndef INCLUDED_BILLBOARD_H
#define INCLUDED_BILLBOARD_H #define INCLUDED_BILLBOARD_H
#include "DriveBoard.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
/* /*

View file

@ -52,6 +52,8 @@
* CDriveBoard::Disable() to update the disabled flag. * CDriveBoard::Disable() to update the disabled flag.
*/ */
#include "DriveBoard.h"
#include "Supermodel.h" #include "Supermodel.h"
#include <cstdio> #include <cstdio>

View file

@ -30,6 +30,10 @@
#ifndef INCLUDED_DRIVEBOARD_H #ifndef INCLUDED_DRIVEBOARD_H
#define INCLUDED_DRIVEBOARD_H #define INCLUDED_DRIVEBOARD_H
#include "CPU/Bus.h"
#include "CPU/Z80/Z80.h"
#include "Inputs/Inputs.h"
#include "OSD/Outputs.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include "Game.h" #include "Game.h"

View file

@ -33,6 +33,8 @@
* NOTE: Simulation does not yet work. Drive board ROMs are required. * NOTE: Simulation does not yet work. Drive board ROMs are required.
*/ */
#include "JoystickBoard.h"
#include "Supermodel.h" #include "Supermodel.h"
#include <cstdio> #include <cstdio>

View file

@ -29,6 +29,7 @@
#ifndef INCLUDED_JOYBOARD_H #ifndef INCLUDED_JOYBOARD_H
#define INCLUDED_JOYBOARD_H #define INCLUDED_JOYBOARD_H
#include "DriveBoard.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include "Game.h" #include "Game.h"

View file

@ -29,7 +29,10 @@
* NOTE: Simulation does not yet work. Drive board ROMs are required. * NOTE: Simulation does not yet work. Drive board ROMs are required.
*/ */
#include "SkiBoard.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Inputs/Input.h"
#include <cstdio> #include <cstdio>
#include <cmath> #include <cmath>

View file

@ -29,6 +29,7 @@
#ifndef INCLUDED_SKIBOARD_H #ifndef INCLUDED_SKIBOARD_H
#define INCLUDED_SKIBOARD_H #define INCLUDED_SKIBOARD_H
#include "DriveBoard.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include "Game.h" #include "Game.h"

View file

@ -29,8 +29,9 @@
* NOTE: Simulation does not yet work. Drive board ROMs are required. * NOTE: Simulation does not yet work. Drive board ROMs are required.
*/ */
#include "Supermodel.h" #include "WheelBoard.h"
#include "Supermodel.h"
#include <cstdio> #include <cstdio>
#include <cmath> #include <cmath>
#include <algorithm> #include <algorithm>

View file

@ -29,6 +29,7 @@
#ifndef INCLUDED_WHEELBOARD_H #ifndef INCLUDED_WHEELBOARD_H
#define INCLUDED_WHEELBOARD_H #define INCLUDED_WHEELBOARD_H
#include "DriveBoard.h"
#include "Util/NewConfig.h" #include "Util/NewConfig.h"
#include "Game.h" #include "Game.h"

View file

@ -31,7 +31,10 @@
* call the PPC core directly, which should not happen in proper OO code. * call the PPC core directly, which should not happen in proper OO code.
*/ */
#include "IRQ.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "CPU/PowerPC/ppc.h"
/****************************************************************************** /******************************************************************************

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_IRQ_H #ifndef INCLUDED_IRQ_H
#define INCLUDED_IRQ_H #define INCLUDED_IRQ_H
#include "BlockFile.h"
#include "Types.h"
/* /*
* CIRQ: * CIRQ:

View file

@ -30,8 +30,11 @@
* probably doesn't matter), so we assume IEEE 1149.1-1990 here. * probably doesn't matter), so we assume IEEE 1149.1-1990 here.
*/ */
#include "JTAG.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Model3/JTAG.h" #include "Real3D.h"
#include <iostream> #include <iostream>
// Finite state machine. Each state has two possible next states. // Finite state machine. Each state has two possible next states.

View file

@ -28,6 +28,7 @@
#ifndef INCLUDED_JTAG_H #ifndef INCLUDED_JTAG_H
#define INCLUDED_JTAG_H #define INCLUDED_JTAG_H
#include "BlockFile.h"
#include "Util/BitRegister.h" #include "Util/BitRegister.h"
class CReal3D; class CReal3D;

View file

@ -66,6 +66,8 @@
* endian, pushing the responsibility onto the caller. * endian, pushing the responsibility onto the caller.
*/ */
#include "MPC10x.h"
#include <cstring> #include <cstring>
#include "Supermodel.h" #include "Supermodel.h"

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_MPC10X_H #ifndef INCLUDED_MPC10X_H
#define INCLUDED_MPC10X_H #define INCLUDED_MPC10X_H
#include "PCI.h"
#include "BlockFile.h"
/* /*
* CMPC10x: * CMPC10x:

View file

@ -210,17 +210,25 @@
* *
*/ */
#include "Model3.h"
#include <new> #include <new>
#include <cstdio> #include <cstdio>
#include <cstdlib> #include <cstdlib>
#include <cstring> #include <cstring>
#include "Supermodel.h" #include "Supermodel.h"
#include "DriveBoard/BillBoard.h"
#include "DriveBoard/JoystickBoard.h"
#include "DriveBoard/SkiBoard.h"
#include "DriveBoard/WheelBoard.h"
#include "Game.h" #include "Game.h"
#include "ROMSet.h" #include "ROMSet.h"
#ifdef NET_BOARD #ifdef NET_BOARD
#include "Network/NetBoard.h" #include "Network/NetBoard.h"
#include "Network/SimNetBoard.h" #include "Network/SimNetBoard.h"
#endif // NET_BOARD #endif // NET_BOARD
#include "OSD/Audio.h"
#include "OSD/Video.h"
#include "Util/Format.h" #include "Util/Format.h"
#include "Util/ByteSwap.h" #include "Util/ByteSwap.h"
#include <functional> #include <functional>

View file

@ -29,9 +29,18 @@
#ifndef INCLUDED_MODEL3_H #ifndef INCLUDED_MODEL3_H
#define INCLUDED_MODEL3_H #define INCLUDED_MODEL3_H
#include "Model3/IEmulator.h" #include "53C810.h"
#include "Model3/JTAG.h" #include "93C46.h"
#include "Model3/Crypto.h" #include "Crypto.h"
#include "IEmulator.h"
#include "JTAG.h"
#include "MPC10x.h"
#include "Real3D.h"
#include "RTC72421.h"
#include "SoundBoard.h"
#include "TileGen.h"
#include "DriveBoard/DriveBoard.h"
#include "CPU/PowerPC/ppc.h"
#ifdef NET_BOARD #ifdef NET_BOARD
#include "Network/INetBoard.h" #include "Network/INetBoard.h"
#endif // NET_BOARD #endif // NET_BOARD

View file

@ -33,6 +33,8 @@
* the vectors do not run out of memory because so few PCI devices exist. * the vectors do not run out of memory because so few PCI devices exist.
*/ */
#include "PCI.h"
#include "Supermodel.h" #include "Supermodel.h"

View file

@ -35,6 +35,8 @@
#ifndef INCLUDED_PCI_H #ifndef INCLUDED_PCI_H
#define INCLUDED_PCI_H #define INCLUDED_PCI_H
#include "Types.h"
#include <vector> #include <vector>
/* /*

View file

@ -31,6 +31,8 @@
* - Writes do nothing yet. * - Writes do nothing yet.
*/ */
#include "RTC72421.h"
#include <time.h> #include <time.h>
#include "Supermodel.h" #include "Supermodel.h"

View file

@ -28,6 +28,7 @@
#ifndef INCLUDED_RTC72421_H #ifndef INCLUDED_RTC72421_H
#define INCLUDED_RTC72421_H #define INCLUDED_RTC72421_H
#include "Types.h"
/* /*
* CRTC72421: * CRTC72421:

View file

@ -41,8 +41,11 @@
* The render currently cannot cope with this. * The render currently cannot cope with this.
*/ */
#include "Real3D.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Model3/JTAG.h" #include "JTAG.h"
#include "CPU/PowerPC/ppc.h"
#include "Util/BMPFile.h" #include "Util/BMPFile.h"
#include <cstring> #include <cstring>
#include <algorithm> #include <algorithm>

View file

@ -29,6 +29,12 @@
#ifndef INCLUDED_REAL3D_H #ifndef INCLUDED_REAL3D_H
#define INCLUDED_REAL3D_H #define INCLUDED_REAL3D_H
#include "IRQ.h"
#include "PCI.h"
#include "CPU/Bus.h"
#include "Graphics/IRender3D.h"
#include "Util/NewConfig.h"
#include <cstdint> #include <cstdint>
#include <map> #include <map>

View file

@ -54,7 +54,11 @@
* ROM 600000-7FFFFF -> E00000-FFFFFF * ROM 600000-7FFFFF -> E00000-FFFFFF
*/ */
#include "SoundBoard.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "OSD/Audio.h"
#include "Sound/SCSP.h"
// DEBUG // DEBUG
//#define SUPERMODEL_LOG_AUDIO // define this to log all audio to sound.bin //#define SUPERMODEL_LOG_AUDIO // define this to log all audio to sound.bin

View file

@ -50,6 +50,8 @@
* manually reverse the data. This keeps with the convention for VRAM. * manually reverse the data. This keeps with the convention for VRAM.
*/ */
#include "TileGen.h"
#include <cstring> #include <cstring>
#include "Supermodel.h" #include "Supermodel.h"

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_TILEGEN_H #ifndef INCLUDED_TILEGEN_H
#define INCLUDED_TILEGEN_H #define INCLUDED_TILEGEN_H
#include "IRQ.h"
#include "Graphics/Render2D.h"
/* /*
* CTileGen: * CTileGen:

View file

@ -25,6 +25,7 @@
#include "Types.h" #include "Types.h"
#include "CPU/Bus.h" #include "CPU/Bus.h"
#include "CPU/68K/68K.h"
#include "OSD/Thread.h" #include "OSD/Thread.h"
#include <memory> #include <memory>
#include "INetBoard.h" #include "INetBoard.h"

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_AUDIO_H #ifndef INCLUDED_AUDIO_H
#define INCLUDED_AUDIO_H #define INCLUDED_AUDIO_H
#include "Types.h"
typedef void (*AudioCallbackFPtr)(void *data); typedef void (*AudioCallbackFPtr)(void *data);
extern void SetAudioCallback(AudioCallbackFPtr callback, void *data); extern void SetAudioCallback(AudioCallbackFPtr callback, void *data);

View file

@ -23,6 +23,8 @@
* Outputs.cpp * Outputs.cpp
*/ */
#include "Outputs.h"
#include "Supermodel.h" #include "Supermodel.h"
const char *COutputs::s_outputNames[] = const char *COutputs::s_outputNames[] =

View file

@ -29,6 +29,7 @@
#define INCLUDED_OUTPUTS_H #define INCLUDED_OUTPUTS_H
#include "Game.h" #include "Game.h"
#include "Types.h"
/* /*
* EOutputs enumeration of all available outputs. * EOutputs enumeration of all available outputs.

View file

@ -30,6 +30,8 @@
* initial set up of the buffer is correct. * initial set up of the buffer is correct.
*/ */
#include "Audio.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "SDLIncludes.h" #include "SDLIncludes.h"

View file

@ -69,6 +69,12 @@
#include "WinOutputs.h" #include "WinOutputs.h"
#endif #endif
#include "SDLIncludes.h" #include "SDLIncludes.h"
#include "Debugger/SupermodelDebugger.h"
#include "Graphics/Legacy3D/Legacy3D.h"
#include "Graphics/New3D/New3D.h"
#include "Model3/IEmulator.h"
#include "Model3/Model3.h"
#include "OSD/Audio.h"
#include <iostream> #include <iostream>
#include "Util/BMPFile.h" #include "Util/BMPFile.h"

View file

@ -29,9 +29,11 @@
* - Implement multiple keyboard and mouse support. * - Implement multiple keyboard and mouse support.
*/ */
#include "Supermodel.h"
#include "SDLInputSystem.h" #include "SDLInputSystem.h"
#include "Supermodel.h"
#include "Inputs/Input.h"
#include <vector> #include <vector>
using namespace std; using namespace std;

View file

@ -25,6 +25,8 @@
* SDL-based implementation of threading primitives. * SDL-based implementation of threading primitives.
*/ */
#include "Thread.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "SDLIncludes.h" #include "SDLIncludes.h"

View file

@ -28,6 +28,8 @@
#ifndef INCLUDED_THREADS_H #ifndef INCLUDED_THREADS_H
#define INCLUDED_THREADS_H #define INCLUDED_THREADS_H
#include "Types.h"
#include <string> #include <string>
class CSemaphore; class CSemaphore;

View file

@ -63,13 +63,18 @@ It doesn't sound good at all.
Anyways credit to R. Belmont and ElSemi for the code, and for being awesome emulation Gods. Anyways credit to R. Belmont and ElSemi for the code, and for being awesome emulation Gods.
*/ */
#include "SCSP.h"
#include "Supermodel.h" #include "Supermodel.h"
#include "Sound/SCSP.h" #include "SCSPDSP.h"
#include "OSD/Thread.h"
#include <cstdio> #include <cstdio>
#include <cstdlib> #include <cstdlib>
#include <cstring> #include <cstring>
#include <cmath> #include <cmath>
#include "Sound/SCSPDSP.h"
static const Util::Config::Node *s_config = 0; static const Util::Config::Node *s_config = 0;
static bool s_multiThreaded = false; static bool s_multiThreaded = false;

View file

@ -28,6 +28,9 @@
#ifndef INCLUDED_SCSP_H #ifndef INCLUDED_SCSP_H
#define INCLUDED_SCSP_H #define INCLUDED_SCSP_H
#include "BlockFile.h"
#include "Types.h"
#include "Util/NewConfig.h"
void SCSP_w8(UINT32 addr,UINT8 val); void SCSP_w8(UINT32 addr,UINT8 val);
void SCSP_w16(UINT32 addr,UINT16 val); void SCSP_w16(UINT32 addr,UINT16 val);

View file

@ -29,6 +29,8 @@
#ifndef INCLUDED_SCSPDSP_H #ifndef INCLUDED_SCSPDSP_H
#define INCLUDED_SCSPDSP_H #define INCLUDED_SCSPDSP_H
#include "Types.h"
//#define DYNDSP //#define DYNDSP
#define DYNOPT 1 //set to 1 to enable optimization of recompiler #define DYNOPT 1 //set to 1 to enable optimization of recompiler

View file

@ -125,7 +125,7 @@ void LFO_Init(void)
} }
} }
signed int INLINE PLFO_Step(struct _LFO *LFO) signed int inline PLFO_Step(struct _LFO *LFO)
{ {
int p; int p;
LFO->phase += LFO->phase_step; LFO->phase += LFO->phase_step;
@ -137,7 +137,7 @@ signed int INLINE PLFO_Step(struct _LFO *LFO)
return p << (SHIFT - LFO_SHIFT); return p << (SHIFT - LFO_SHIFT);
} }
signed int INLINE ALFO_Step(struct _LFO *LFO) signed int inline ALFO_Step(struct _LFO *LFO)
{ {
int p; int p;
LFO->phase += LFO->phase_step; LFO->phase += LFO->phase_step;

View file

@ -27,9 +27,7 @@
#ifndef INCLUDED_SUPERMODEL_H #ifndef INCLUDED_SUPERMODEL_H
#define INCLUDED_SUPERMODEL_H #define INCLUDED_SUPERMODEL_H
#if (defined NET_BOARD && defined _WIN32)
#include "Winsock2.h" // force include winsock2 before windows.h because conflict with winsock1
#endif
// Used throughout Supermodel // Used throughout Supermodel
#include <cstdio> #include <cstdio>
#include <cstdlib> #include <cstdlib>
@ -92,68 +90,10 @@
*/ */
#include "Types.h" // located in OSD/<port>/ directory #include "Types.h" // located in OSD/<port>/ directory
/*
* OSD Header Files
*/
// Error logging interface // Error logging interface
#include "OSD/Logger.h" #include "OSD/Logger.h"
// OSD Interfaces
#include "OSD/Thread.h"
#include "OSD/Audio.h"
#include "OSD/Video.h"
#include "OSD/Outputs.h"
/******************************************************************************
Header Files
All primary header files for modules used throughout Supermodel are included
here, except for external packages and APIs.
******************************************************************************/
#include "BlockFile.h"
#include "Graphics/New3D/New3D.h"
#include "Graphics/Render2D.h"
#include "Graphics/Legacy3D/TextureRefs.h"
#include "Graphics/Legacy3D/Legacy3D.h"
#include "Graphics/Shader.h"
#ifdef SUPERMODEL_DEBUGGER
#include "Debugger/SupermodelDebugger.h"
#include "Debugger/CPU/PPCDebug.h"
#include "Debugger/CPU/Musashi68KDebug.h"
#include "Debugger/CPU/Z80Debug.h"
#endif // SUPERMODEL_DEBUGGER
#include "CPU/Bus.h"
#include "CPU/PowerPC/PPCDisasm.h"
#include "CPU/PowerPC/ppc.h"
#include "CPU/68K/68K.h"
#include "CPU/Z80/Z80.h"
#include "Inputs/Input.h"
#include "Inputs/Inputs.h"
#include "Inputs/InputSource.h"
#include "Inputs/InputSystem.h"
#include "Inputs/InputTypes.h"
#include "Inputs/MultiInputSource.h"
#include "Model3/IRQ.h"
#include "Model3/PCI.h"
#include "Model3/53C810.h"
#include "Model3/MPC10x.h"
#include "Model3/RTC72421.h"
#include "Model3/93C46.h"
#include "Model3/TileGen.h"
#include "Model3/Real3D.h"
#include "Sound/SCSP.h"
#include "Model3/SoundBoard.h"
#include "Model3/DSB.h"
#include "Model3/DriveBoard/DriveBoard.h"
#include "Model3/DriveBoard/WheelBoard.h"
#include "Model3/DriveBoard/JoystickBoard.h"
#include "Model3/DriveBoard/SkiBoard.h"
#include "Model3/DriveBoard/BillBoard.h"
#include "Model3/Model3.h"
/****************************************************************************** /******************************************************************************
Helpful Macros and Inlines Helpful Macros and Inlines