/[pcsx2_0.9.7]/trunk/pcsx2/MemoryTypes.h
ViewVC logotype

Diff of /trunk/pcsx2/MemoryTypes.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 273 by william, Fri Nov 12 01:10:22 2010 UTC revision 280 by william, Thu Dec 23 12:02:12 2010 UTC
# Line 17  Line 17 
17    
18  namespace Ps2MemSize  namespace Ps2MemSize
19  {  {
20          static const uint Base  = 0x02000000;           // 32 MB main memory!          static const uint MainRam       = _32mb;                        // 32 MB main memory!
21          static const uint Rom   = 0x00400000;           // 4 MB main rom          static const uint Rom           = _1mb * 4;                     // 4 MB main rom
22          static const uint Rom1  = 0x00040000;           // DVD player          static const uint Rom1          = 0x00040000;           // DVD player
23          static const uint Rom2  = 0x00080000;           // Chinese rom extension (?)          static const uint Rom2          = 0x00080000;           // Chinese rom extension (?)
24          static const uint ERom  = 0x001C0000;           // DVD player extensions (?)          static const uint ERom          = 0x001C0000;           // DVD player extensions (?)
25          static const uint Hardware = 0x00010000;          static const uint Hardware      = _64kb;
26          static const uint Scratch = 0x00004000;          static const uint Scratch       = _16kb;
27    
28          static const uint IopRam = 0x00200000;          // 2MB main ram on the IOP.          static const uint IopRam        = _1mb * 2;                     // 2MB main ram on the IOP.
29          static const uint IopHardware = 0x00010000;          static const uint IopHardware = _64kb;
30    
31          static const uint GSregs = 0x00002000;          // 8k for the GS registers and stuff.          static const uint GSregs = 0x00002000;                  // 8k for the GS registers and stuff.
32  }  }
33    
34  typedef u8 mem8_t;  typedef u8 mem8_t;
# Line 53  typedef u128 mem128_t; Line 53  typedef u128 mem128_t;
53  // memory, such as hardware registers or scratchpad, the access will generate a page fault, the  // memory, such as hardware registers or scratchpad, the access will generate a page fault, the
54  // compiled block will be cleared and re-compiled using "full" VTLB translation logic.  // compiled block will be cleared and re-compiled using "full" VTLB translation logic.
55  //  //
56    // Note that support for this feature may not be doable under x86/32 platforms, due to the
57    // 2gb/3gb limit of Windows XP (the 3gb feature will make it slightly more feasible at least).
58    //
59  #define VTLB_UsePageFaulting 0  #define VTLB_UsePageFaulting 0
60    
61  #if VTLB_UsePageFaulting  #if VTLB_UsePageFaulting
# Line 61  typedef u128 mem128_t; Line 64  typedef u128 mem128_t;
64  // full breadth of PS2 RAM and ROM mappings are directly supported.  // full breadth of PS2 RAM and ROM mappings are directly supported.
65  struct EEVM_MemoryAllocMess  struct EEVM_MemoryAllocMess
66  {  {
67          u8 (&Main)[Ps2MemSize::Base];                           // Main memory (hard-wired to 32MB)          u8 (&Main)[Ps2MemSize::MainRam];                                // Main memory (hard-wired to 32MB)
68    
69          u8 _padding1[0x1e000000-Ps2MemSize::Base]          u8 _padding1[0x1e000000-Ps2MemSize::MainRam]
70          u8 (&ROM1)[Ps2MemSize::Rom1];                           // DVD player          u8 (&ROM1)[Ps2MemSize::Rom1];                           // DVD player
71    
72          u8 _padding2[0x1e040000-(0x1e000000+Ps2MemSize::Rom1)]          u8 _padding2[0x1e040000-(0x1e000000+Ps2MemSize::Rom1)]
# Line 80  struct EEVM_MemoryAllocMess Line 83  struct EEVM_MemoryAllocMess
83    
84  struct EEVM_MemoryAllocMess  struct EEVM_MemoryAllocMess
85  {  {
86            u8 Main[Ps2MemSize::MainRam];                   // Main memory (hard-wired to 32MB)
87          u8 Scratch[Ps2MemSize::Scratch];                // Scratchpad!          u8 Scratch[Ps2MemSize::Scratch];                // Scratchpad!
         u8 Main[Ps2MemSize::Base];                              // Main memory (hard-wired to 32MB)  
88          u8 ROM[Ps2MemSize::Rom];                                // Boot rom (4MB)          u8 ROM[Ps2MemSize::Rom];                                // Boot rom (4MB)
89          u8 ROM1[Ps2MemSize::Rom1];                              // DVD player          u8 ROM1[Ps2MemSize::Rom1];                              // DVD player
90          u8 ROM2[Ps2MemSize::Rom2];                              // Chinese extensions          u8 ROM2[Ps2MemSize::Rom2];                              // Chinese extensions
# Line 101  struct EEVM_MemoryAllocMess Line 104  struct EEVM_MemoryAllocMess
104  struct IopVM_MemoryAllocMess  struct IopVM_MemoryAllocMess
105  {  {
106          u8 Main[Ps2MemSize::IopRam];                    // Main memory (hard-wired to 2MB)          u8 Main[Ps2MemSize::IopRam];                    // Main memory (hard-wired to 2MB)
107          u8 P[0x00010000];                                               // I really have no idea what this is... --air          u8 P[_64kb];                                                    // I really have no idea what this is... --air
108          u8 Sif[0x100];                                                  // a few special SIF/SBUS registers (likely not needed)          u8 Sif[0x100];                                                  // a few special SIF/SBUS registers (likely not needed)
109  };  };
110    

Legend:
Removed from v.273  
changed lines
  Added in v.280

  ViewVC Help
Powered by ViewVC 1.1.22