Commit Graph

293 Commits

Author SHA1 Message Date
dingusdev
e2a151265e
Remove CBP file
Not needed at this time. I'll be moving over to Visual Studio 2019 for further development. CodeBlocks was nice while it lasted.
2019-12-24 18:06:19 -07:00
Maxim Poliakovski
ad5f3a9435 Move PPC emulation code into /cpu/ppc subdirectory. 2019-12-23 10:38:16 +01:00
Maxim Poliakovski
c220a2e87b Simplify CMakeLists.txt using file wildcards. 2019-12-16 16:31:33 +01:00
dingusdev
202ce280aa
Slight tweak for better placement of binary 2019-12-15 16:24:14 -07:00
dingusdev
71a1b2eb63 Fixed CMakeLists errors and deleted makefile 2019-12-14 12:56:43 -07:00
Maxim Poliakovski
684a8dee8e Move debugger sources into a dedicated subdirectory. 2019-12-14 13:48:54 +01:00
dingusdev
0411a3a10f
Fixed address issues 2019-10-15 21:48:31 -07:00
dingusdev
97e87dea9e
Prevents the non-trivial array initialization error
A touch haphazard, but this allows most compilers to interpret this array.
2019-10-15 21:19:00 -07:00
dingusdev
e7564ab0a5
Fixing compilation files and changed the authorship credits 2019-10-15 21:15:12 -07:00
Maxim Poliakovski
e50f4396db Merge branch 'devices' into 'master'. 2019-10-15 11:41:00 +02:00
Maxim Poliakovski
18b9429233 Fix previous commit. 2019-10-15 11:39:19 +02:00
dingusdev
9ed645951e
Corrected an issue to allow a merge
This was an accidental merge from the cachetest branch
2019-10-14 18:29:01 -07:00
dingusdev
e9a4856849
Fixed an accidental merge from the cachetest branch 2019-10-14 18:27:57 -07:00
Maxim Poliakovski
43b9f47e6a Remove unfinished OpenPIC stub. 2019-10-14 19:40:35 +02:00
Maxim Poliakovski
c5fa279ad4 Remove device stubs (davbus, serial, SWIM etc). 2019-10-14 19:38:08 +02:00
Maxim Poliakovski
ddb303c5c0 Add Machine ID register for the Gossamer architecture. 2019-10-14 17:43:39 +02:00
dingusdev
82d84c3ee9
Merged in opcodes fixes from a branch
A couple optimizations have also been added here.
2019-10-08 18:39:39 -07:00
Maxim Poliakovski
198b918a3c MPC106: allocate RAM after software setup.
Software will setup MPC106 internal registers and
finally set MCCR1[MEMGO] flag. This is the right time
for initializing physical RAM.
2019-10-07 03:21:13 +02:00
Maxim Poliakovski
01c38b7348 VIA-CUDA: hackish support for SPD. 2019-10-07 03:18:37 +02:00
Maxim Poliakovski
cf3f8b6db1 VIA-CUDA: support for I2C related pseudo commands. 2019-09-21 14:57:44 +02:00
Maxim Poliakovski
12eada5bb1 Add VIA-CUDA description. 2019-08-28 02:43:33 +02:00
Maxim Poliakovski
5fc7ca761e Initial implementation for VIA-CUDA device. 2019-08-27 16:20:06 +02:00
Maxim Poliakovski
3131325bff Initial implementation for Heathrow/Mac-io. 2019-08-23 23:36:21 +02:00
Maxim Poliakovski
af5a096532 MPC106: add support for PCI devices. 2019-08-23 23:36:21 +02:00
Maxim Poliakovski
78e8b06cf1 Add interfaces for PCI host and PCI device. 2019-08-23 23:36:21 +02:00
Maxim Poliakovski
2f06623c62 Rewrite MPC106 emualation from scratch.
From now on, ppcmemory delegates physical address translation
to MPC106 on PowerMac Beige G3.
2019-08-21 23:55:21 +02:00
Maxim Poliakovski
ac1f770f92 Create base class for memory controller devices.
Create 'devices' directory for virtual device
sources and move MPC106 source to it.
2019-08-21 23:43:59 +02:00
Maxim Poliakovski
843f010ac6 Simplify top level makefile.
Use standard variable names (CXX, CXXFLAGS) whenever possible.
2019-08-18 19:05:52 +02:00
dingusdev
673485179c
More fixes and re-removed unneeded debug messages 2019-08-13 21:29:14 -07:00
dingusdev
fada84ca3f
More minute opcode fixes 2019-08-13 20:37:27 -07:00
dingusdev
698a761d15
More opcode fixes and adjustments 2019-08-13 20:29:52 -07:00
Maxim Poliakovski
449934e0f3 ppcopcodes: fix cror emulation. 2019-08-13 16:58:47 +02:00
Maxim Poliakovski
eeb1e46889 Fix dispatch map for sync opcode. 2019-08-13 15:59:11 +02:00
dingusdev
0d2fbd4465
Merge pull request #11 from dingusdev/revert-10-master
Revert "Machine-specific address maps and generic MMIO devices."
2019-08-07 18:33:38 -07:00
dingusdev
cee515d864
Revert "Machine-specific address maps and generic MMIO devices." 2019-08-07 18:33:00 -07:00
dingusdev
a57b9c597c
Merge pull request #10 from maximumspatium/master
Machine-specific address maps and generic MMIO devices.

This now allows the start-up chime to play on a PowerMac 6100 setup.
2019-08-07 18:27:30 -07:00
Maxim Poliakovski
1c360841f6 Define and connect basic PowerMac 6100 hardware. 2019-08-07 20:26:30 +02:00
Maxim Poliakovski
6ad38c9142 ppcmemory now uses machine's physical address map.
Hardcoded addresses haven't been completely removed yet. It can be
done after creating proper MMIO devices they're bound to.
2019-08-07 20:26:30 +02:00
Maxim Poliakovski
aec95254a8 Add AddressMap class for defining physical maps. 2019-08-07 20:26:30 +02:00
Maxim Poliakovski
a469bcf900 Add base class for memory-mapped I/O devices. 2019-08-07 20:26:30 +02:00
Maxim Poliakovski
91c56a3465 ppcopcodes: switch off a couple of debug messages. 2019-08-07 20:26:29 +02:00
dingusdev
521bdc6720
Merge pull request #9 from maximumspatium/master
Fix and factor out mask generator for rotate&shift instructions.
2019-08-06 21:15:25 -07:00
Maxim Poliakovski
9b8b567804 Fix mask generator for rotate&shift if mb > me.
Factor out mask generator and convert rot_sh, rot_mb
and rot_me to local variables.
2019-08-06 01:42:07 +02:00
dingusdev
a4be7b8e0f
Fix the warnings for good
Prevents the tautological compare warning from ever popping up.
2019-08-04 08:43:20 -07:00
dingusdev
53cb4206d0
Merge pull request #8 from maximumspatium/master
Fix for conditional branches and some more cleanup.
2019-08-03 06:59:35 -07:00
Maxim Poliakovski
d6fa66174e ppcmemory: temporarily fix Nubus ROM mirror reading. 2019-08-03 07:16:24 +02:00
Maxim Poliakovski
911edec94c ppcopcodes: fix conditional branches. 2019-08-03 07:01:09 +02:00
Maxim Poliakovski
377a5eb89c Add conditionally compiled checks for invalid CMP forms. 2019-08-03 07:01:09 +02:00
dingusdev
5b3e844296
Merge pull request #7 from maximumspatium/master
BAT Translation refactored
2019-08-02 19:34:58 -07:00
Maxim Poliakovski
ca277e82f9 ppcmemory: refactor memory reads/writes. 2019-08-03 02:59:42 +02:00