Godzil
e9d7f1aa04
Add base address for IO ports to easily allow multiple instance of the same device.
2022-06-27 17:57:03 +01:00
Godzil
37e4b219d4
Add a skeleton for the interrupt controller
2022-06-27 17:04:55 +01:00
Godzil
d6a2a77303
Add the possibility to pass parameter to device_init
...
and add a device_type_t used to know what parameter to pass to init
when needed.
2022-06-27 17:04:37 +01:00
Godzil
f45995167e
Add some temporary disabled code for each peripheral
...
(copied from io.c)
2022-06-27 17:02:35 +01:00
Godzil
83e4b8d5d9
Some more cosmetics.
2022-06-27 17:01:07 +01:00
Godzil
4d345079ae
Fix building
...
Most patches are temporary and there just to let the code to build. It will not work in the current state.
Also now force the use of paged memory. It was not working properly because of the way the old GPU code is working.
2022-06-27 16:59:11 +01:00
Godzil
2305ce975b
Mostly cosmetic changes
...
Update headers year
Remove useless /// headers that eat lines for no reasons
Fixed build issues because of stupid me doing stupid stuff in prototypes.
Added color and mono GPU stub.
Also a tad of code cleaning.
2022-03-14 14:50:41 +00:00
Godzil
6f56a8efda
Starting a rewrite of how the IO works.
...
Currently 100% broken, also going to change how devices are selected
for each system so no more if/else everywhere and system should be more accurate.
2021-12-20 19:12:33 +00:00
Godzil
8fa2ef06ab
Rename some functions and a tad of cleanup.
2021-12-20 19:12:33 +00:00
Godzil
4fc5193bc7
Add testserial part of the build.
2021-12-20 19:12:30 +00:00
Godzil
1df15b0192
Uniformise copyright headers.
2021-12-20 19:12:12 +00:00
Godzil
6f539fff1e
Not sure how I missed the R_RM8 and R_RM16 decoder.
2021-04-16 00:39:26 +01:00
Godzil
c90b99d650
Fix table size.
2021-04-16 00:33:48 +01:00
Godzil
49a1943cda
Add proper support for indirect call/jmp
2021-04-16 00:32:56 +01:00
Godzil
4082d37cb0
Add missing mov cs, rm and mov rm, cs opcode.
2021-04-16 00:32:08 +01:00
Godzil
146e2b2c1d
Fix some headers (code is original here) and some cosmetics
v0.9
2021-04-15 23:17:38 +01:00
Godzil
698d960bed
Add some useful GPU debug logs
2021-04-15 23:17:01 +01:00
Godzil
62c5812b34
Add #ifdef around EEPROM debug prints
2021-04-15 23:08:03 +01:00
Godzil
7f7410c8f8
First step to get a debugger:
...
Decode instructions.
I now have an headache.
A couple of instruction are still not properly decoded.
I need to find proper documentation on them.
2021-04-15 23:07:13 +01:00
Godzil
0e02ee829f
I'm constantly amazed by how poorly coded this emulator was.
...
SRAM and EEPROM were inverted and not all known value was in there.
Also fixed the rom metadata header that was missing one byte.
2021-04-09 23:55:58 +01:00
Godzil
4512def23a
Change how SRAM/EEPROM mask are calculated
2021-04-09 23:19:23 +01:00
Godzil
46e90dcca1
Remove useless variable
2021-04-09 23:18:53 +01:00
Godzil
2e9685215b
Starting work on making memory access more straigforward with less branching code.
2021-04-09 23:18:31 +01:00
Godzil
bddcaddf1f
Fix a signed/unsigned warning
2021-04-09 23:11:25 +01:00
Godzil
5559269387
Use stdbool instead of non standard ifdefs
2021-04-09 23:11:10 +01:00
Godzil
b3c0a39d00
Init the memory after everything is loaded
2021-04-09 23:09:55 +01:00
Godzil
8ab6b20815
Fix a mistake in loading SRAM/EEP file name
2021-04-09 23:09:22 +01:00
Godzil
dd53d5bfd9
Update the stub boot rom to "enable" the 16bit cart access mode.
...
(the emulator do not care about that but it is just to be more accurate)
2021-04-09 23:08:29 +01:00
Godzil
5ba3560378
Let's use double instead of integer to the ticks.
2021-04-09 23:07:46 +01:00
Godzil
ac3779e640
Add a way to pretend displaying while actualy not displayint
...
to go around some weirdness with Valgrind that crashwhen using OpenGL.
2021-04-06 23:11:30 +01:00
Godzil
da26704390
Oops. Stupid memset..
...
(always blame the tools)
2021-04-06 23:10:30 +01:00
Godzil
2ced18d151
Change the log to my good old trusty log framework.
2021-04-06 23:08:22 +01:00
Godzil
359b05a518
Add a link to Mesen
2021-04-05 15:16:17 +01:00
Godzil
3771c65f2c
Add a nifty travis badge to show how great the build it!
2021-04-05 15:01:48 +01:00
Godzil
4f4e4d148a
Add a fancy README.
...
(ok not so fancy, but there are images!)
2021-04-05 14:59:38 +01:00
Godzil
cc1060775c
Major code cleanup and code reformating
2021-04-05 14:19:35 +01:00
Godzil
4e5f796d6a
Remove the "color schemes".
2021-04-05 13:40:29 +01:00
Godzil
3818e03e55
Now that we have system, let's also load the Swan Crystal irom.
2021-04-05 13:37:31 +01:00
Godzil
94dc2fc463
Missed some changes for the color/b&w logic changes
2021-04-05 13:36:02 +01:00
Godzil
d45d838378
Remove all the unused "statistics" code.
2021-04-05 13:33:13 +01:00
Godzil
18d9038639
Update .gitignore
2021-04-05 13:23:59 +01:00
Godzil
925bfd3b65
Change the way the system type is managed
...
and changed the logic on how the GPU use "color".
Now IO register tell properly the selected system, and B&W swan does not allow to switch to color. Also the Swan do not start in color mode as it should.
2021-04-05 13:23:44 +01:00
Godzil
330262b55c
Remove the "initial IO" table as most values are wrong anyway.
...
If there are some initial value that need to be set, it is per system, not globally like that.
2021-04-05 12:24:12 +01:00
Godzil
357d4e4ede
Deleted the makefile as it is no longer supported
2021-04-05 00:20:22 +01:00
Godzil
d45822951f
As this is C project, rename all source file to .c
2021-04-05 00:18:55 +01:00
Godzil
864fda651d
Update travis file.
2021-04-04 23:35:13 +01:00
Godzil
065849cf68
Add stdint.h into headers that (may) need it.
2021-04-04 23:28:36 +01:00
Godzil
dbc7d6e940
Update splash string to show "NewOswan"
2021-04-04 23:19:04 +01:00
Godzil
432844304e
Add a simple boot rom stub
...
so we can start the emulated console without need for special case in the code, and not adding any copyrighted material in the project.
Also automatically copy the stub rom in the build folder.
2021-04-04 23:18:51 +01:00
Godzil
e28317d29e
Disable the IO Dump by default.
2021-04-04 21:17:34 +01:00