138 Commits

Author SHA1 Message Date
Godzil
330cba592d Cosmetic, and add missing files to the CMakeLists. 2022-06-27 22:33:36 +01:00
Godzil
e48f7a76a7 Merge the latest changes. 2022-06-27 22:14:47 +01:00
Godzil
4800cf0823 Commented some code to let it build. 2022-06-27 18:20:11 +01:00
Godzil
a37414b079 Cleanup memory and added file_access. 2022-06-27 18:19:51 +01:00
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
5f61fb612a Merge branch 'master' into rewrite 2022-06-25 21:23:05 +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
Manoël Trapier
01ffa3a834
Add apt update. part 2 2022-03-12 12:04:45 +00:00
Manoël Trapier
fce2815300
Add apt update. 2022-03-12 12:04:18 +00:00
Manoël Trapier
662a45d02f Create codeql-analysis.yml 2022-02-28 15:32:33 +00:00
Manoël Trapier
bb324dc12e
Remplace travis build badge with github's one. 2022-02-28 12:33:51 +00:00
Godzil
017983f692 Trying to make the google action to work. 2022-02-28 12:31:43 +00:00
Godzil
b4b1bd83d0 Fix a typo 2022-02-25 18:19:00 +00:00
Manoël Trapier
a85e1ff083
Need to checkout with submodule silly! 2022-02-23 18:02:31 +00:00
Manoël Trapier
4c9ba704ea
Testing github action
Travis is no longer free. So need to test alternatives.
2022-02-23 17:59:53 +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