joevt
fa865a79fc
memctrlbase: Log mirror range.
...
Because it may differ from the range of the region it points to.
2025-04-14 06:06:42 -07:00
joevt
fa7fb5bb1f
hammerhead: Define some bits.
...
From xnu-344/osfmk/ppc/POWERMAC/mp/MPPlugIn.h
2025-04-12 10:20:54 -07:00
joevt
0899d84019
hammerhead: Cleanup.
...
Replace all occurrences of offset >> 1 with bank.
2025-04-12 08:38:38 -07:00
joevt
3e88c161c1
platinum: Fix PAL/NTSC interlaced display.
2025-04-12 08:38:36 -07:00
joevt
2253e6c595
platinum: Remove spaces.
2025-04-12 08:38:35 -07:00
joevt
86a09a9d3c
platinum: Add RAM.
2025-04-12 08:38:33 -07:00
joevt
71990129f3
memctrlbase: Remove region by entry.
2025-04-12 08:38:32 -07:00
joevt
1565d21176
mpc106: Handle overlapping banks.
2025-04-04 06:27:32 -07:00
joevt
986fc22fd4
mpc106: Fix RAM allocation again.
...
For greater than 4 banks.
2025-04-04 06:27:13 -07:00
joevt
1046baf11d
spdram: Add 8 MB DIMMs.
2025-04-03 18:16:44 -07:00
Rairii
c4906d1f15
spdram: Add 16 MB DIMMs.
2025-04-03 18:16:38 -07:00
joevt
c483a9a615
spdram: Add 512 MB DIMMs.
2025-04-03 07:40:20 -07:00
Maxim Poliakovski
2a3e46eab4
memctrlbase: overload add_ram_region()
...
to accept externally allocated memory.
2025-04-01 03:05:46 +02:00
joevt
83066bbf5f
memctrlbase: Return entry instead of bool.
2025-03-24 07:29:31 -07:00
joevt
392f6cdcd3
mpc106: Document flash ROM related registers.
2025-03-21 07:30:18 -07:00
dingusdev
08f67c010c
Add get_type_str + get_entry+str
...
Co-Authored-By: joevt <950609+joevt@users.noreply.github.com>
2025-03-14 10:43:37 -07:00
joevt
cf0d78fe98
debugger: add regions command.
...
To dump the list of memory regions.
2025-03-14 10:31:57 -07:00
joevt
98925a39b9
Code clean-up part 2.
2025-03-13 06:14:35 -07:00
dingusdev
77503df677
Code clean-up
2025-03-12 07:58:32 -07:00
joevt
3da972ddc9
Add missing this.
2025-03-10 06:49:37 -07:00
joevt
394fdd00f0
machinegazelle: Support 160 MB RAM.
2024-12-10 18:22:02 -07:00
joevt
3124b10eaa
Implement DIMM properties.
2024-12-08 12:26:14 -07:00
dingusdev
31323e7bf1
Fix compiling errors for MON_ID_SENSE (platinum)
2024-12-04 07:48:38 -07:00
joevt
05658ad5c5
platinum: Fix MON_ID_SENSE read/write.
2024-12-04 07:38:53 -07:00
joevt
a593a4a73e
platinum: Implement VRAM_REFRESH read.
2024-12-04 07:36:59 -07:00
joevt
99972307dc
platinum: Implement FB_TEST read/write.
2024-12-04 07:36:48 -07:00
joevt
d7fb49166f
platinum: Add comments and enums for registers.
2024-12-04 07:16:47 -07:00
joevt
0bca7bc743
platinum: Make some FB_CONFIG_1 bits read only.
2024-12-04 07:16:45 -07:00
dingusdev
10a3fa5984
Tweak logging for main branch
2024-12-04 07:11:43 -07:00
joevt
d98929f24c
platinum: Registers affect display immediately.
2024-12-04 07:11:07 -07:00
joevt
2ab6a94795
Ignore zero sized DIMM.
2024-12-04 07:10:40 -07:00
Mihai Parparita
4479387580
Remove using namespace std
from remaining header files
...
It's somewhat of an anti-pattern, and can lead to conflicts with
other symbols (e.g. the Windows build failure in https://github.com/dingusdev/dingusppc/actions/runs/11762906342/job/32766290288 ,
I removed `using namespace std` from timermanager.h to fix that one).
2024-11-30 20:01:09 -08:00
joevt
6c093e141b
Add missing override statements.
2024-11-15 10:03:57 -07:00
joevt
e7eb1c8a66
Fix PCI interrupts and add devices.
...
- Use interrupt source instead of IRQ ID in the IrqMap.
- Add a get_interrupt_controller method to mirror the set_interrupt_controller method.
- Have PCI hosts use pcihost_device_postinit to add PCI devices. This was moved from bandit's device_postinit and allows for duplicate devices by appending the slot to the registered device name.
- Fix interrupts of Pippin.
Fix interrupts of cmd646
- Make it work like other PCI devices.
- IntDetails is built into the pcibase base class.
- IntDetails is initialized by calling pci_interrupt.
- pci_interrupt checks the "enable interrupts" flag before doing an interrupt.
2024-11-12 07:04:55 -07:00
joevt
ffc7de4715
platinum: Handle read 4 bytes with offset.
2024-11-10 21:05:05 -07:00
joevt
97339e4ce4
platinum: Add disable_display.
...
To mirror enable_display.
2024-11-10 21:03:53 -07:00
Mihai Parparita
9b49603c72
memctrl: keep address_map sorted by address
...
We do a linear scan in find_range (which is called on all TLB misses) to
find the entries. The largest and most frequently hit entry is the
system memory (which starts at 0). By ensuring that it's the first entry
in the list, we end up only doing one iteration through the loop.
2024-07-28 13:27:48 -07:00
Maxim Poliakovski
5eaff7a8ce
MPC106: break long lines.
2024-06-28 19:52:22 +02:00
Maxim Poliakovski
9d44ac0901
mpc106: fix includes.
2024-06-25 16:53:52 +02:00
kth5
742662e4fc
Fix missing std::find_if and others with GCC 14.1.1
2024-06-24 23:41:55 +02:00
joevt
3036f4676d
Use default window size in constructor.
...
The window size should be changed later by the mon_id property.
2024-04-23 07:27:52 -07:00
Maxim Poliakovski
e722ef3e8a
memctrlbase: add get_region_hostmem_ptr().
2024-04-21 23:04:12 +02:00
joevt
bd63d1dcda
platinum: Validity check before enable display.
2024-04-10 20:56:51 -07:00
Maxim Poliakovski
1c8702d67a
Add missing credits.
2024-04-09 01:51:51 +02:00
Maxim Poliakovski
4c9fe06229
Implement Aspen memory controller.
2024-04-08 00:44:24 +02:00
Maxim Poliakovski
7972a0f2a8
hammerhead: use instance name in logging messages.
2024-04-07 18:48:52 +02:00
joevt
d0a5a1e7be
Add ability to override built-in GPU.
2024-04-04 19:04:06 -07:00
joevt
9ade14e076
memctrlbase: fix possible memory leak.
2024-03-27 14:08:20 +01:00
Maxim Poliakovski
0a97e4e038
hmc: implement extended memory for PDM.
2024-03-26 00:39:33 +01:00
Maxim Poliakovski
8e19164977
memctrlbase: introduce add_mem_mirror_common().
2024-03-26 00:39:33 +01:00