Maxim Poliakovski
|
f194887d34
|
viacuda: properly initialize VIA registers.
|
2021-10-18 16:38:12 +02:00 |
|
Maxim Poliakovski
|
46549d68a2
|
viacuda: remove superfluous newlines and casts from messages.
|
2021-10-18 16:38:12 +02:00 |
|
Maxim Poliakovski
|
c7544d9c2f
|
amic: reorganize registers in blocks.
|
2021-10-16 15:07:53 +02:00 |
|
Maxim Poliakovski
|
2f725fe3e4
|
viacuda: fix PRAM reading and writing.
|
2021-10-14 00:01:30 +02:00 |
|
Maxim Poliakovski
|
7c47b9c1e7
|
amic: implement AMIC2 identification.
|
2021-10-13 09:06:16 +02:00 |
|
Maxim Poliakovski
|
9caef55c19
|
amic: implement diagnostics register.
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
89e79d05cb
|
Load bootrom code to primary ROM region.
|
2021-10-10 22:01:02 +02:00 |
|
Maxim Poliakovski
|
c313a9c8bb
|
Use std::bind() based callbacks.
|
2021-10-05 00:29:27 +02:00 |
|
Maxim Poliakovski
|
03e58dac35
|
Overhaul AWACs and implement PDM sound HW.
|
2021-10-05 00:29:27 +02:00 |
|
Maxim Poliakovski
|
3ca7a78a37
|
AWAC-PDM control and status registers.
|
2021-10-01 01:02:43 +02:00 |
|
Maxim Poliakovski
|
0f55877137
|
Add basic PDM I/O emulation.
|
2021-09-30 23:01:56 +02:00 |
|
Maxim Poliakovski
|
b4d399ffa2
|
Improve three logging messages.
|
2021-09-30 23:01:56 +02:00 |
|
Maxim Poliakovski
|
8c9f23daf4
|
Fix memory controller interface for PDM.
|
2021-09-30 22:55:10 +02:00 |
|
Maxim Poliakovski
|
e9fcc51b93
|
Debugger fixes for PDM.
|
2021-09-26 14:21:31 +02:00 |
|
Maxim Poliakovski
|
e052eb4a87
|
Merge branch 'atirage-hacks'.
|
2021-09-25 23:16:38 +02:00 |
|
Maxim Poliakovski
|
d2cd43fcb1
|
Merge branch 'machine-pdm'.
|
2021-09-25 22:30:31 +02:00 |
|
Maxim Poliakovski
|
84e111290f
|
Fix includes for loguru and SDL.
|
2021-09-16 00:46:38 +02:00 |
|
dingusdev
|
1c77057860
|
Fixed building through CMake
|
2021-09-12 08:08:22 -07:00 |
|
dingusdev
|
738e2d3bd1
|
Fixed compiling for Visual Studio 2019
|
2021-09-11 22:55:24 -07:00 |
|
Maxim Poliakovski
|
ea5b0d9f52
|
atirage: framebuffer rendering and various improvements.
|
2021-09-11 21:02:46 +02:00 |
|
Maxim Poliakovski
|
16d9e6c681
|
Basic MESH emulation skeleton with events logging.
|
2021-08-23 00:20:28 +02:00 |
|
Maxim Poliakovski
|
05330bc942
|
memctrlbase: allocate address map entries with new().
|
2021-05-16 00:50:44 +02:00 |
|
Maxim Poliakovski
|
baa7f8b211
|
atirage: use standard names for common pixel formats.
|
2021-02-08 22:25:36 +01:00 |
|
Maxim Poliakovski
|
2f4a3b955e
|
atirage: calculation of display parameters.
|
2021-02-08 02:20:55 +01:00 |
|
Maxim Poliakovski
|
a4eb658309
|
atirage: increase PLL registers count to 64.
|
2021-02-05 02:01:31 +01:00 |
|
Maxim Poliakovski
|
508ef2eaa9
|
atirage: increase registers array and add boundary checks.
|
2021-02-05 01:23:04 +01:00 |
|
Maxim Poliakovski
|
a5ef814ec4
|
atirage: add reading and writing of PLL registers.
|
2021-02-05 01:23:04 +01:00 |
|
Maxim Poliakovski
|
ace19c0bdf
|
atirage: clean up register names.
|
2021-02-05 01:11:23 +01:00 |
|
Maxim Poliakovski
|
3a9ed2671c
|
atirage: remove obsolete memaccess code.
|
2021-02-04 19:05:39 +01:00 |
|
Maxim Poliakovski
|
3c787a87cd
|
atirage: add ASIC ID for Rage Pro.
|
2021-02-04 19:01:55 +01:00 |
|
Maxim Poliakovski
|
a0b43754a7
|
atirage: fix and clean up PCI interface.
|
2021-02-04 01:03:23 +01:00 |
|
Maxim Poliakovski
|
1adbf90e21
|
MPC106: use memaccess thoroughly.
|
2021-02-03 23:39:19 +01:00 |
|
Maxim Poliakovski
|
478ca1065f
|
MPC106: fix RAM size calculation.
|
2021-02-03 23:29:48 +01:00 |
|
Maxim Poliakovski
|
7628ec92c0
|
Rename memreadwrite.h to memaccess.h
|
2021-02-03 12:19:18 +01:00 |
|
dingusdev
|
2bac606365
|
Added to Heathrow
Plus some debugging stuff to help figure out what register 0x34 is responsible for.
|
2021-01-08 15:29:43 -07:00 |
|
dingusdev
|
9210244c0c
|
Further ATI Rage registers
|
2021-01-08 14:32:06 -07:00 |
|
dingusdev
|
14d3874382
|
More ATI Rage register names added
|
2021-01-08 13:12:06 -07:00 |
|
Maxim Poliakovski
|
18a19cd52f
|
Add an implementation for the Highspeed Memory Controller.
|
2020-12-19 09:56:39 +01:00 |
|
Maxim Poliakovski
|
282940e580
|
memctrlbase: fix range bug in add_mem_mirror.
|
2020-12-19 08:24:04 +01:00 |
|
Maxim Poliakovski
|
81b3c3c4a0
|
Default initialization of Heathrow registers.
|
2020-11-26 03:03:52 +01:00 |
|
Maxim Poliakovski
|
3b29ff9514
|
atirage: fix monitor identification.
|
2020-10-14 16:55:38 +02:00 |
|
dingusdev
|
14ef7564cd
|
CLI fixes - RAM and GFXMEM work better
|
2020-08-25 20:07:02 -07:00 |
|
Maxim Poliakovski
|
8094fb30f6
|
atirage: add access to internal DAC palette.
|
2020-06-11 01:30:10 +02:00 |
|
Maxim Poliakovski
|
f753bb1911
|
atirage: replace magic numbers with named constants.
|
2020-06-11 00:49:00 +02:00 |
|
Maxim Poliakovski
|
5d57086795
|
Add one more missing include.
|
2020-06-03 20:28:57 +02:00 |
|
Maxim Poliakovski
|
3be46aa44d
|
Add missing includes.
|
2020-06-03 20:21:52 +02:00 |
|
Maxim Poliakovski
|
39a643aff6
|
Merge branch 'machines'
Also disable SDL for now because it produces build errors.
|
2020-06-03 18:21:51 +02:00 |
|
Maxim Poliakovski
|
07340d82dd
|
atirage: add video RAM.
|
2020-05-28 23:47:20 +02:00 |
|
Maxim Poliakovski
|
55a14ca28f
|
atirage: fix big memory aperture registration.
|
2020-05-28 22:36:55 +02:00 |
|
Maxim Poliakovski
|
bcc0e38e9f
|
More sound fixes and cleanups.
|
2020-05-18 20:45:37 +02:00 |
|
Maxim Poliakovski
|
ae78a1f04f
|
Fix AWACs sound playback with WASAPI.
|
2020-05-18 03:02:30 +02:00 |
|
Maxim Poliakovski
|
e59939541e
|
WIP: initial Cubeb integration.
|
2020-05-15 02:44:00 +02:00 |
|
Waqar Ahmed
|
0ab9380be3
|
clang-format everything
|
2020-05-12 23:55:45 +05:00 |
|
Waqar Ahmed
|
286897398c
|
Fix build on linux
|
2020-05-12 21:20:57 +05:00 |
|
Maxim Poliakovski
|
d4c39f13af
|
Changes related to Windows build.
|
2020-05-09 14:29:37 +02:00 |
|
Maxim Poliakovski
|
f7d67a91e0
|
New AWAC and sound server implementation.
|
2020-05-08 23:12:04 +02:00 |
|
Maxim Poliakovski
|
a5c63c1b09
|
viacuda: fix autopoll control commands.
|
2020-04-27 02:50:53 +02:00 |
|
dingusdev
|
d24a71528b
|
Slightly readjusted key mappings
|
2020-04-25 11:02:47 -07:00 |
|
Maxim Poliakovski
|
3b98dee232
|
adb.cpp: fix indentation.
|
2020-04-25 03:01:16 +02:00 |
|
dingusdev
|
f2ab933884
|
Slightly clean-up and expansion for future uses
|
2020-04-23 18:22:47 -07:00 |
|
dingusdev
|
c0d0187190
|
ADB Refactoring, Pt. 2
|
2020-04-23 18:08:27 -07:00 |
|
dingusdev
|
d0f03f722e
|
ADB Refactoring Pt. 1
|
2020-04-22 14:14:49 -07:00 |
|
dingusdev
|
a5b740eafc
|
Slightly reworked ADB work so far
|
2020-04-21 19:45:59 -07:00 |
|
dingusdev
|
70f5b45e71
|
Started work on ADB input
|
2020-04-21 15:23:55 -07:00 |
|
dingusdev
|
add11ecc62
|
Adding further Heathrow registers
|
2020-04-19 11:28:51 -07:00 |
|
dingusdev
|
8fb2e851d7
|
Started work for ADB polling
|
2020-04-17 17:23:50 -07:00 |
|
Maxim Poliakovski
|
3461f2e353
|
displayid.cpp: fix indentation.
|
2020-04-14 13:03:43 +02:00 |
|
Maxim Poliakovski
|
54a86972cd
|
Basic support for display identification.
|
2020-04-14 01:04:37 +02:00 |
|
dingusdev
|
925bcdfe9f
|
Getting most I/O Space registers in.
|
2020-04-01 22:31:29 -07:00 |
|
Maxim Poliakovski
|
9f95fde279
|
ATI Rage: partial register access implemented.
|
2020-04-01 03:24:39 +02:00 |
|
Maxim Poliakovski
|
b6fcd289a3
|
ATI Rage: basic register access via PCI I/O space.
|
2020-03-31 21:19:10 +02:00 |
|
Maxim Poliakovski
|
a243c79d0f
|
Add support for PCI I/O space.
|
2020-03-31 21:12:06 +02:00 |
|
Maxim Poliakovski
|
a8c6298545
|
devices: skeleton for ATI Rage emulation.
|
2020-03-31 18:48:04 +02:00 |
|
Maxim Poliakovski
|
695044cf0e
|
Support more than one I/O region per device.
|
2020-03-31 18:48:04 +02:00 |
|
dingusdev
|
1744f13fb4
|
Fixed build issues
|
2020-03-27 12:52:48 -07:00 |
|
dingusdev
|
f50f719b02
|
Started connecting ATI Rage
|
2020-03-27 12:43:29 -07:00 |
|
dingusdev
|
17200d5f35
|
Started work on ATI Rage
|
2020-03-27 10:54:25 -07:00 |
|
Maxim Poliakovski
|
35d6a2e011
|
Reduce logging when playing back audio.
|
2020-03-26 03:02:33 +01:00 |
|
Maxim Poliakovski
|
0d2301c006
|
Implement DMA pull method for sound output.
|
2020-03-26 02:07:43 +01:00 |
|
dingusdev
|
60ffa5bfac
|
Initial attempt at fixing SDL2 building for Windows
|
2020-03-22 20:15:12 -07:00 |
|
Maxim Poliakovski
|
945e63bdb2
|
Implement DMA push method for sound.
|
2020-03-19 15:09:24 +01:00 |
|
Maxim Poliakovski
|
8e34c1657c
|
Mock up DBDMA channel execution for sound.
|
2020-03-19 02:00:18 +01:00 |
|
Maxim Poliakovski
|
787ebfaff1
|
Implement DBDMA channel registers.
|
2020-03-18 17:34:03 +01:00 |
|
Maxim Poliakovski
|
751efb4cd6
|
Initial AWACS sound device emulation.
|
2020-03-15 20:08:53 +01:00 |
|
Maxim Poliakovski
|
0044610038
|
Add SPD SDRAM emulation.
|
2020-03-15 14:44:33 +01:00 |
|
Maxim Poliakovski
|
9c8548c238
|
Finish I2C bus emulation.
This commit also cleans up and improve I2C commands
in Cuda. Also removes some related hacks.
|
2020-03-15 13:28:42 +01:00 |
|
Maxim Poliakovski
|
753e445b4b
|
Initial I2C bus implementation.
|
2020-03-14 21:38:18 +01:00 |
|
Maxim Poliakovski
|
75f0e09f5a
|
viacuda: cleanup print messages.
|
2020-03-14 19:30:05 +01:00 |
|
Maxim Poliakovski
|
14156dd32b
|
Introduce subdevices interface.
|
2020-03-14 15:39:34 +01:00 |
|
Maxim Poliakovski
|
d53400ebae
|
Introduce base class HWComponent.
|
2020-03-14 14:26:30 +01:00 |
|
Maxim Poliakovski
|
94cf232b5e
|
viacuda: add receiving of ADB packets.
|
2020-03-05 01:12:41 +01:00 |
|
Maxim Poliakovski
|
71d6966a03
|
viacuda: remove cuda prefix from method names.
|
2020-03-05 01:12:41 +01:00 |
|
dingusdev
|
354409812e
|
Updating files with proper licensing header
|
2020-02-28 09:04:28 -07:00 |
|
dingusdev
|
51739520b5
|
Small formatting + logging fixes
|
2020-02-27 18:41:02 -07:00 |
|
dingusdev
|
eef82649f7
|
Modest logging system revamp
Logging messages now go to dingusppc.log (if in realtime) or the console (if in debug)
|
2020-02-26 19:51:07 -07:00 |
|
dingusdev
|
e3a1c3501a
|
Another small fix
|
2020-02-24 19:56:02 -07:00 |
|
dingusdev
|
8bf902d945
|
Small fix
|
2020-02-24 19:55:33 -07:00 |
|
dingusdev
|
6c1dc8aaf0
|
Further logging work
|
2020-02-24 19:50:52 -07:00 |
|
dingusdev
|
baef838f7c
|
Further integration with loguru
|
2020-02-24 07:54:29 -07:00 |
|
dingusdev
|
d91950e582
|
Further logging code.
|
2020-02-23 22:36:31 -07:00 |
|
dingusdev
|
e9a616ffeb
|
Started working on incorporating loguru
|
2020-02-23 20:59:10 -07:00 |
|
Maxim Poliakovski
|
4e4d0370be
|
Modularize build system.
This way object files can be shared accross multiple executables.
|
2020-02-03 14:36:37 +01:00 |
|
Maxim Poliakovski
|
a3601f224c
|
Fix NVRAM->Heathrow connection.
|
2020-01-24 16:20:20 +01:00 |
|
Maxim Poliakovski
|
1a44d8e16c
|
ViaCuda: allocate PRAM object dinamically.
|
2020-01-15 18:23:15 +01:00 |
|
dingusdev
|
3650b655d7
|
Proper NVRAM deletion
And slowly preparing for a response method from the Cuda to the host
|
2020-01-13 20:43:09 -07:00 |
|
dingusdev
|
5b8a787e9a
|
Simplified PRAM emulation
|
2020-01-13 19:48:29 -07:00 |
|
dingusdev
|
1cff216e82
|
Quick Cuda PRAM implementation
|
2020-01-12 20:31:10 -07:00 |
|
Maxim Poliakovski
|
0b0c00b653
|
Add aligned macros for reading ints from memory.
|
2020-01-13 03:05:50 +01:00 |
|
Maxim Poliakovski
|
add0d5877c
|
Add missing includes to fix GCC compilation.
|
2020-01-08 00:24:31 +01:00 |
|
Maxim Poliakovski
|
6dbd9f1c99
|
Remove superfluous asserts.
Operator new will throw std::bad_alloc
when running out of memory.
|
2020-01-07 12:46:32 +01:00 |
|
Maxim Poliakovski
|
c2bbdc4144
|
Finish NVRAM implementation.
|
2020-01-07 12:08:38 +01:00 |
|
dingusdev
|
f51e479e5c
|
Quick fix for NVRAM
|
2020-01-05 10:44:50 -07:00 |
|
dingusdev
|
b92fe60fad
|
Header updates + NVRAM Fix
|
2020-01-05 10:38:32 -07:00 |
|
dingusdev
|
b5074e4ce1
|
Started work on NVRAM
Tried to also fix some issued with MSVC
|
2020-01-05 09:52:46 -07:00 |
|
Maxim Poliakovski
|
241031dfe7
|
Move big-endian memory access to memreadwrite.h.
|
2020-01-03 16:08:00 +01:00 |
|
Maxim Poliakovski
|
14e203f528
|
Add missing includes.
|
2019-12-29 13:53:26 +01:00 |
|
Maxim Poliakovski
|
134eda8c12
|
Clean up some comments and messages.
|
2019-12-27 00:42:02 +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 |
|
Maxim Poliakovski
|
ddb303c5c0
|
Add Machine ID register for the Gossamer architecture.
|
2019-10-14 17:43:39 +02: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 |
|