dingusdev
804bb3da07
Another day, another compile fix
2024-09-25 07:40:17 -07:00
dingusdev
832d669890
Merge branch 'nuterpreterx' of https://github.com/dingusdev/dingusppc into nuterpreterx
2024-09-25 07:14:25 -07:00
dingusdev
262b7ccf68
Continued fix-ups
2024-09-25 07:14:05 -07:00
dingusdev
de61c26484
More fixes
2024-09-25 07:14:05 -07:00
dingusdev
cb39be991f
Continued clean-up
2024-09-25 07:14:05 -07:00
dingusdev
55f9d08c30
Starting Step 2 - Not compiling yet
2024-09-25 07:14:05 -07:00
dingusdev
f1a38e21d3
More fixes
...
4% speedup reported in the benchmark
Co-Authored-By: joevt <950609+joevt@users.noreply.github.com >
2024-09-25 07:14:05 -07:00
dingusdev
90536f79fe
Continued work on polishing up non-globalized code
2024-09-25 07:14:05 -07:00
dingusdev
72308074da
Take 2 of removing ppc_cur_instruction
2024-09-25 07:14:05 -07:00
dingusdev
8c42685e26
Slight compile fix
2024-09-24 21:17:48 -07:00
dingusdev
01ceaef8d7
Slightly delaying a race condition
2024-09-24 21:10:10 -07:00
joevt
55d7c8f09d
bench1 fix 2
2024-09-24 21:07:51 -07:00
joevt
1f59eceacf
bench1 fix
2024-09-24 21:07:42 -07:00
joevt
e14ede2510
bench1: Add benchmark for ppc_exec.
2024-09-24 21:07:35 -07:00
joevt
bc05593dd2
bench1: Changes to reduce variability.
...
Chooses the best time out of 200 times for each of the 5 runs. The number of bytes is 32KB.
Outputs a performance number MiB/s.
2024-09-24 20:45:14 -07:00
dingusdev
b5224ee805
Continued fix-ups
2024-09-24 07:27:52 -07:00
dingusdev
3addc05ec4
More fixes
2024-09-24 06:38:38 -07:00
dingusdev
f0cf315030
Continued clean-up
2024-09-23 08:07:30 -07:00
dingusdev
959e92e372
Starting Step 2 - Not compiling yet
2024-09-21 17:56:18 -07:00
dingusdev
5ae9fcbd38
More fixes
...
4% speedup reported in the benchmark
Co-Authored-By: joevt <950609+joevt@users.noreply.github.com >
2024-09-18 07:15:14 -07:00
dingusdev
e2ed352533
Continued work on polishing up non-globalized code
2024-09-17 21:18:54 -07:00
dingusdev
4644ade362
Take 2 of removing ppc_cur_instruction
2024-09-17 08:08:29 -07:00
joevt
4a71dbe7bb
bench1: Fixes and changes.
...
Change test size from 32KB to 8MB. The benchmark should last about 1 second.
Set power_on to true before running any ppc_exec_* functions.
2024-09-16 18:13:53 -07:00
dingusdev
aed250a64d
Taking benchmark fixes from the nuterpreter2 branch
2024-09-16 06:22:58 -07:00
dingusdev
e2ad753f4a
More clean-up
2024-09-15 18:31:36 -07:00
dingusdev
2ab23546ea
One-line fix-up
2024-09-08 15:22:04 -07:00
dingusdev
9d9e826bb3
More code clean-up
2024-09-08 13:19:07 -07:00
joevt
3c2887f8c3
floppyimg: Add null floppy image converter check.
2024-09-03 06:19:07 -07:00
Rairii
8cc67b09c2
ppcmmu: Different expressions.
2024-09-03 06:09:45 -07:00
joevt
bb3e89e3af
ppcexceptions: Remove unused label.
2024-09-03 06:09:10 -07:00
joevt
172dab7431
Update Open Firmware documentation.
...
Add New World ROM Layout notes.
Add New World Firmware version notes.
Add punctation.
Move mention of OF main fcode image from the Open Firmware kernel description section to the boot process section.
2024-09-02 19:16:18 -07:00
joevt
78da2457e8
ppcexec: Simplify next event time calculation.
2024-09-02 19:00:33 -07:00
joevt
7e70432495
ppcexec: Remove unused g_icycles_base.
2024-09-02 18:58:07 -07:00
joevt
c6060ad812
timermanager: Use decimal ints, not floats or hex.
2024-08-31 18:09:15 -07:00
joevt
f09710a5f7
viacuda: Do shutdown.
...
Shutdown will enter the debugger or quit depending on the execution mode.
Quit is different from shutdown since it is triggered outside the guest by using the host Quit menu item.
2024-08-31 18:09:12 -07:00
Maxim Poliakovski
de727db4c6
machineyosemite: use PCI slot names that better match device tree properties.
2024-08-29 13:19:00 +02:00
Maxim Poliakovski
671cd0c5da
machineyosemite: set PCI IRQ maps.
2024-08-29 00:16:59 +02:00
Maxim Poliakovski
ef62e8b965
New API for registering PCI interrupts.
2024-08-29 00:16:59 +02:00
dingusdev
8c44da655c
Documentation additions
2024-08-26 06:48:55 -07:00
dingusdev
b5850f1cd2
Slight clean-up to ppcexec
2024-08-26 06:48:40 -07:00
dingusdev
0a61970b29
Merge pull request #116 from mihaip/upstream-log
...
main: add more control over logging
2024-08-25 17:15:39 -07:00
Mihai Parparita
91a8e83f21
main: add more control over logging
...
Allow the verbosity to be adjusted.
Allow logging to be sent to stderr even when running in interpreter mode.
Allow uptime (time since program start) to be disabled. This makes it
easier to compare logs across successive runs.
2024-08-25 17:05:46 -07:00
Maxim Poliakovski
825314c869
atahd: clean up READ_MULTIPLE/WRITE_MULTIPLE.
2024-08-26 00:20:53 +02:00
dingusdev
8d9bc66a82
Merge pull request #115 from mihaip/upstream-multiple
...
Fixes for READ_MULTIPLE and WRITE_MULTIPLE commands
2024-08-25 06:38:15 -07:00
Mihai Parparita
52f4d847dd
Fixes for READ_MULTIPLE and WRITE_MULTIPLE commands
...
We may be transferring less data than can fit in a chunk, so we need
to ensure that xfer_cnt is clamped to 0 when transferring the last
chunk (otherwise it remains negative, and has_data() will return true).
It's also possible that the transfer size is bigger than a chunk but not
an even multiple of the chunk size, so we need to ensure that we don't
try to transfer a whole chunk in the last iteration.
More correctly initialize the device identification struct, to report
the maximum (word 47) and current (word 59) number of blocks that can be
transferred with READ_MULTIPLE and WRITE_MULTIPLE commands.
Fix post_xfer_action to write the actual data size that was written,
as opposed to an entire chunk (which may be larger).
2024-08-24 22:51:07 -07:00
dingusdev
ebf4b0e969
minor ATA tweaks
...
From @Wack0's branch
2024-08-24 12:58:19 -07:00
Maxim Poliakovski
47237ff87b
Merge pull request #114 from mihaip/upstream-atahd-fix
...
Fix ATA HD initialization on Beige G3 when booting 9.2
2024-08-23 12:59:51 +02:00
Mihai Parparita
8d95aa5ed3
Fix ATA HD initialization on Beige G3 when booting 9.2
...
1f2256ec81a/7ee8b9b2 were referencing a multiple_sector_count field,
but it was never set. This was resulting in an error being returned
(`READ MULTIPLE with SET MULTIPLE==0`).` We actually should use
`sec_per_block``, which bd16b7c69e
introduced.
2024-08-22 22:38:48 -07:00
dingusdev
7ee8b9b2f0
Add missing variable
2024-08-22 20:49:11 -07:00
dingusdev
1f2256ec81
Additional ATA commands
...
Mostly from Wack0's NT4 fork.
Co-Authored-By: Rairii <2650838+Wack0@users.noreply.github.com >
2024-08-22 20:42:43 -07:00