smesgr9000
52fc5be7ad
reuse command sequence for GB
2024-06-03 18:51:51 +02:00
smesgr9000
ccbb5447d3
reuse GB common functions
2024-06-03 17:56:46 +02:00
Ancyker
2b01f7fc4d
Add checks for unsafe configurations
...
* Fixes #929
* Updated `ci.yml` to define `GITHUB_CI`
* Compilation will now error if VSELECT is enabled on hardware versions that don't support it (any version other than HW5).
* HW4 and SERIAL might work but are untested. The error message for these versions reflects this.
* Erroring when unsafe configurations are defined can be overridden by defining `ALLOW_UNSAFE_CONFIG` which will throw a warning instead.
* This should only be done if trying to implement or test on a currently unsupported platform.
* If both `GITHUB_CI` and `ALLOW_UNSAFE_CONFIG` are defined an error will be thrown causing the CI tests to fail. This is just in case someone makes a commit with it defined.
2024-06-02 11:56:08 -04:00
Ancyker
740c2698bc
Fix compilation errors and warnings
...
Fixing issues when only ENABLE_GBX was enabled or when compiling for a serial-only firmware.
2024-06-02 11:15:50 -04:00
smesgr9000
ad69abdf57
use common function to create file/folder and increment foldern counter
2024-06-01 09:58:23 +02:00
smesgr9000
22e06d8ec1
reuse n64 flashrom Xplorer command sequence
2024-05-30 18:52:38 +02:00
smesgr9000
fb78a1fce5
reuse n64 flashrom command sequence
2024-05-30 18:18:53 +02:00
smesgr9000
86059ae070
reuse code to write NES maker command
2024-05-30 08:15:22 +02:00
smesgr9000
5b43a162b8
reuse common strings, remove duplicate
2024-05-30 08:00:13 +02:00
smesgr9000
d039c590cc
define more commonly used string in OSCR and reuse them
2024-05-28 21:11:48 +02:00
smesgr9000
0d9596eb70
replace custom FLASH saving code with common function
2024-05-28 20:20:29 +02:00
smesgr9000
cb111077f8
replace NES defines with rgbLed function calls
2024-05-26 22:43:41 +02:00
smesgr9000
363d18b542
add common function to open create folder, print message and open file. Remove duplicate code
2024-05-26 22:20:47 +02:00
smesgr9000
78bf1462d0
replace custom folder creation function with common
2024-05-26 21:48:57 +02:00
smesgr9000
41182a7eb0
add option to clear display and remove duplicate code
2024-05-25 14:25:35 +02:00
smesgr9000
6abe29fcd9
remove duplicate code to print saving and increment of folder id
2024-05-25 14:07:08 +02:00
smesgr9000
d1d83bbd10
remove local variables which are only used in function context
2024-05-25 09:57:46 +02:00
smesgr9000
73700e2886
support mapper > 255, implement mapper 446 submapper 0&1 - thanks to NewRisingSun for support, fix iNES2.0 mapper parsing of byte 8
2024-05-24 23:54:13 +02:00
smesgr9000
1aaa90af97
remove custom code to print 0 prefixes in sprintf
2024-05-20 13:17:44 +02:00
smesgr9000
4d000418a8
remove duplicate code to write Flash Command
2024-05-20 12:54:33 +02:00
smesgr9000
aaaa6ea3cd
reuse menu item strings
2024-05-20 12:27:53 +02:00
smesgr9000
a32c6b3bff
define PROGMEM string for Attention 3.3V
2024-05-20 12:07:28 +02:00
smesgr9000
f82be2d5db
remove duplicate code to open file for verfication
2024-05-20 11:57:32 +02:00
smesgr9000
d7e795fbed
remove duplicate code to open file to write on flash
2024-05-20 11:39:35 +02:00
smesgr9000
ea0b47de57
use constant for "Saving to" instead declare the string several times
2024-05-12 15:54:49 +02:00
smesgr9000
9f0aa09197
remove duplicate code to create folder
2024-05-12 15:37:11 +02:00
smesgr9000
38b2b2476b
remove duplicate GB Flash reading function
2024-05-12 14:33:21 +02:00
smesgr9000
dc47202c4d
remove duplicate code for 2600 3E & 3F mapper
2024-05-12 14:03:34 +02:00
smesgr9000
a8cd9c52a6
reduce duplicate code in bank 7800 switching code
2024-05-12 12:09:59 +02:00
smesgr9000
32f6b4151b
reduce duplicate code by parameterise ROML/ROMH
2024-05-12 11:40:34 +02:00
smesgr9000
c09e772299
replace hardcoded bank maps with power of 2
2024-05-12 08:15:03 +02:00
smesgr9000
7ba32d24fc
remove duplicate code for checking pin number
2024-05-11 23:44:40 +02:00
smesgr9000
74352c6e31
define "File doesn't exist" in OSCR.cpp/h
2024-05-11 23:32:06 +02:00
smesgr9000
ab03ab879c
pass onyl 16bit parameter where only 16bit address is used
2024-05-11 23:18:31 +02:00
smesgr9000
90fa37c491
add serial printing to print instructions
2024-05-10 19:15:24 +02:00
smesgr9000
9e2ef3580c
reuse print instructions function, more efficiant read code
2024-05-10 19:13:19 +02:00
smesgr9000
94c6bd460a
add c64 function to read 16k segments. Remove duplicate code for C64
2024-05-10 18:14:54 +02:00
Ancyker
40238b18a1
Fixed (added) missing FS() macro on some FSTRING constants
...
This was causing two symptoms/bugs:
* OSCR_LOG.txt was being spammed with random data.
* The size of OSCR_LOG.txt would get so big that copying the log would take a long time, possibly minutes. Oftentimes this caused the display to appear to hang after searching for the CRC (after "->") but before displaying the result.
If using the global log and a version of master since e61ac414d8
you should delete OSCR_LOG.txt from your SD card as it will likely be very large and continue to cause dumping to be slow.
2024-05-07 17:16:51 -04:00
smesgr9000
8bd6d7dfdc
remove duplicate code for F4,F6 & F8 mapper
2024-05-07 20:30:02 +02:00
smesgr9000
53b71f9108
fix 2600 mapper selection for Serial
2024-05-07 19:38:31 +02:00
JWS
2c72652671
Add support for X07 mapper (Stella's Stockings)
2024-05-03 20:34:26 -05:00
JWS
f4ba8d7af8
Add support for mapper 3E, 32K ROM 32K RAM Tigervision
2024-05-03 18:52:37 -05:00
smesgr9000
2134c9f58b
move PRG/CHR dumping code to own function
2024-05-03 23:42:06 +02:00
smesgr9000
4b70766094
remove duplicate code to store NES games with and without header
2024-05-03 21:56:22 +02:00
smesgr9000
5f3d63a123
fix signed/unsigned warning
2024-05-03 20:47:48 +02:00
smesgr9000
990b61ca3a
make cast in read function explicit and reduce duplicate read functions
2024-05-03 19:12:48 +02:00
smesgr9000
e8e6d15a72
remove duplicate string literals
2024-05-03 17:12:31 +02:00
smesgr9000
6c05709871
fix compiler warnings
2024-05-03 17:11:55 +02:00
smesgr9000
330e615b8c
remove duplicate code to select mapper, rom and ram configurations
2024-05-01 21:27:45 +02:00
smesgr9000
2826ded431
remove duplicate code in printing CRC
2024-05-01 18:59:00 +02:00
smesgr9000
d233387acc
fix issue #939 . Remove duplicate write of laster buffer. Also add Berzerk Enhanced
2024-05-01 18:50:35 +02:00
smesgr9000
254982cbe7
remove duplicate CRC printing and calculation function
2024-05-01 10:48:58 +02:00
smesgr9000
ccc06ef4e4
fix reading mapper > 9 from database
2024-05-01 09:35:00 +02:00
smesgr9000
bb12c99fac
replace FAIRCHILD, ODY2, MSX and VECTREX cart selection code with code used in NES, COLV & INTV. Define "Database not found" in OSCR.cpp
2024-05-01 09:06:23 +02:00
sanni
ecc937bab3
Fix romType for Yuyu no Quiz de GO!GO!
...
https://github.com/sanni/cartreader/issues/922
2024-04-30 12:25:58 +02:00
smesgr9000
9909fdafb3
replace 5200 and ARC cart selection code with code used in NES, COLV & INTV
2024-04-29 19:09:50 +02:00
smesgr9000
06d5f28d0c
port NES fast forward selection to other systems
2024-04-28 13:35:21 +02:00
smesgr9000
394dcdcf1f
replace C64 cart selection code with code used in NES, COLV & INTV
2024-04-28 09:50:48 +02:00
sakman55
254c824292
Update 7800.ino
...
Update checkStatus_7800() to account for the added Bankset mapper (#7 ).
2024-04-27 18:33:27 -10:00
sakman55
43e18fce80
Update C64.ino
...
Fix Issue #902 Handling of GAME and EXROM lines of C64 cartridges is wrong. Requires updated c64cart.txt on SD card.
2024-04-27 12:49:34 -10:00
smesgr9000
57bf121c06
replace 2600 cart selection code with code used in NES, COLV & INTV
2024-04-27 09:59:36 +02:00
smesgr9000
3ff99bfe48
Merge remote-tracking branch 'origin/master' into a7800database
2024-04-24 20:28:42 +02:00
smesgr9000
4502d1e56e
revert accidently committed Config.h
2024-04-24 20:17:10 +02:00
smesgr9000
d8809b198d
revert accidently committed Config.h
2024-04-24 20:13:45 +02:00
smesgr9000
3ce23a57ad
replace cart select code with code used in NES, COLV, INTV
2024-04-24 20:07:44 +02:00
smesgr9000
3441cedfd4
remove duplicate code of seeking database files for letter
2024-04-24 19:55:43 +02:00
smesgr9000
e7e0da80b0
remove some duplicate printing code and declare more global text strings
2024-04-22 18:51:01 +02:00
sanni
5d0ae986c9
Merge pull request #932 from PsychoFox11/master
...
Fix Slaughter Sport title, two CRC32s
2024-04-22 12:42:08 +02:00
Don Jones
dc1e776b19
Update MD.ino
...
Fix Slaughter Sport's title and folder name
2024-04-21 02:08:30 -04:00
smesgr9000
4c8f8266a1
support CLOCKGEN for C64
2024-04-18 18:09:19 +02:00
smesgr9000
e1716d48bb
fix reading mapping > 5 causes crc32 0x0000000
2024-04-12 20:15:16 +02:00
smesgr9000
cf1d01855d
reduce memory footprint for 7800.ino
2024-04-12 19:07:00 +02:00
smesgr9000
9ad338a821
support for F4SC, F6SC & F8SC
2024-03-24 14:06:06 +01:00
smesgr9000
a2924e4f58
create a merge request for https://github.com/sanni/cartreader/issues/916
2024-03-23 23:30:17 +01:00
PsyK0p4T
281639370f
CRC check added
...
CRC check added for SFC Sufami Turbo sub-carts
2024-03-11 16:38:10 +01:00
PsyK0p4T
6d89a279f2
Update MD.ino
...
Thanks to psychofox :
- Fix Madden NFL 98 (USA)
- More aftermarket games added
2024-03-07 11:13:09 +01:00
Ancyker
a86f140198
Follow up to/fix for e61ac414d8
2024-03-02 11:30:44 -05:00
Ancyker
e61ac414d8
Code optimization, cleanup, and stylization
...
* Reduced PROGMEM / DRAM usage slightly (Using defaults w/HW5: Before -> 214,668 bytes / 5,757 bytes; After -> 213,414 bytes / 5,751 bytes)
* Optimized some menu options and calls
* Added more string constants and implemented them where found.
* Fixed some stylization
* Constants should always be uppercase.
* Features should use the `ENABLE_<feature name>` format.
* Options for features should use the `OPTION_<feature name>_<option name>` format.
* Added ENUMs for more clarity and better type checking.
* Moved some defines over to `constexpr` and `const` types. These are preferred over preprocessor constants when not intended for use with `#if` and other preprocessor language.
2024-03-02 11:26:35 -05:00
Ancyker
3468703a51
Added ability to use config file for some options.
...
A sample `config.txt` is in the SD folder. Currently the option is disabled by default and must be enabled.
Also:
* Eliminated the 5V spike at boot when VSELECT is installed and enabled. See discussion #906
* Fixed a warning in `MD.ino`
* Did some code cleanup, more cleanup to come.
2024-02-29 17:52:04 -05:00
PsyK0p4T
35eca2a9f4
Update 7800.ino
...
Add clock generator usage to fix timing issues (thanks to @smesgr9000)
2024-02-29 23:17:41 +01:00
sanni
f947fb4e3f
Add support for MBC30 flash cart by HDR (thx to ManCloud)
...
Two issues were resolved:
- this flashcart uses the Audio-In pin instead of the WR pin
- Writing 4MB gets stuck after bank 170 and needed the SRAM to be mapped (same as MBC5)
2024-02-29 09:36:23 +01:00
PsyK0p4T
417e88d7d1
Update MD.ino
...
Force saveType to 0 for some aftermarket games not using SRAM
2024-02-25 13:58:06 +01:00
LuigiBlood
bbe37d9839
SNES: Add Game Processor RAM Cassette Read/Write support
2024-02-09 23:02:59 +01:00
PsyK0p4T
e4e4c7f1f5
Update PCE.ino
...
Add compatibility for "Games Express CD Card (Japan) (Green Version)"
2024-02-02 00:12:39 +01:00
PsyK0p4T
d556e5a4af
Update Cart_Reader.ino
...
Standardize all Atari codes
2023-12-26 23:13:51 +01:00
PsyK0p4T
a8b493026e
Update Config.h
...
Standardize all Atari codes
2023-12-26 23:12:11 +01:00
PsyK0p4T
a9bccaf8f7
Update 5200.ino
...
Standardize all Atari codes
2023-12-26 23:10:23 +01:00
PsyK0p4T
2bdba9c8bd
Update 7800.ino
...
Standardize all Atari codes
2023-12-26 23:09:38 +01:00
PsyK0p4T
c06f1c4e95
Update 2600.ino
...
Modify Atari 2600 code to follow 5200/7800 model.
2023-12-26 23:08:10 +01:00
PsyK0p4T
319d110339
Update VECTREX.ino
...
Allows to manually select and dump carts up to 64 KB.
2023-12-26 21:53:39 +01:00
PsyK0p4T
d0fe5c8ca1
Update Cart_Reader.ino
...
Add Sufami Turbo support
2023-11-25 00:34:13 +01:00
PsyK0p4T
70d52636d7
Update SNES.ino
...
Add Sufami Turbo support
2023-11-25 00:32:51 +01:00
PsyK0p4T
0287ea8ed2
Update Config.h
...
add Sufami Turbo support
2023-11-25 00:29:55 +01:00
PsyK0p4T
f86a861628
Add Sufami Turbo module
2023-11-25 00:26:38 +01:00
sanni
1eac83ef79
Update OSCR.cpp
2023-11-21 09:55:10 +01:00
sanni
ad294f651f
Update Cart_Reader.ino
2023-11-21 09:54:54 +01:00
sanni
5176a15199
Update ARC.ino
...
Fix compilation error in combination with ENABLE_UPDATER
2023-11-21 09:43:00 +01:00
PsyK0p4T
a55aa7bbff
Update SNES.ino
...
Avoids a compilation warning
2023-11-20 21:46:44 +01:00
sanni
654686cf15
Update Cart_Reader.ino
2023-11-20 12:23:34 +01:00
sanni
a06d9ee87b
Update version
2023-11-20 12:19:32 +01:00
qufb
ac1c6db12d
Fix PH3 pin typo
2023-11-16 22:27:01 +00:00
PsyK0p4T
8fdd93f293
Update PCW.ino
...
- Added : size detection for Multi-pack cartridges
- Modified : dump function for Multi-pack cartridges
- Added : timing fixes needed for recent HW revisions
2023-11-02 17:21:52 +01:00
sanni
029c33dfb9
N64: Add error message if eeprom does not return data
...
Should prevent problem as described in discussion #857
2023-10-17 22:07:51 +02:00
sanni
2e72842bb1
Fix Clock Gen Calibration Menu
...
Function didn't display negative calibration factors correctly.
Also added option to use the calibration factor without enabling the calibration menu to save some space.
2023-10-17 18:41:14 +02:00
sakman55
a257fc2ee5
Update MD.ino
...
Add John Madden Football '93 (U) (EA Sports) to EEPROM list.
2023-10-14 20:06:08 -10:00
Richard Weick
0e04c1c1a1
Update GB.ino
...
This updates the GBC Gameshark functions to check the Chip ID before performing any other functions, which ensures a good connection with the Gameshark cartridge and prevents erroneous dumps or writes due to poor connection.
2023-10-01 12:46:10 -05:00
sanni
c873d3cf9d
Update Cart_Reader.ino
2023-09-25 18:32:44 +02:00
PsyK0p4T
b270f0c30e
Update Cart_Reader.ino
...
compilation fix
2023-09-25 16:23:43 +02:00
PsyK0p4T
4ddd867f87
Update OSCR.cpp
...
update app version
2023-09-25 16:16:07 +02:00
PsyK0p4T
b2415c0287
Update Cart_Reader.ino
...
Add the possibility to hide Self Test from menu
2023-09-25 16:12:04 +02:00
sakman55
603a22116c
Update 7800.ino
...
Removed "[UNTESTED]" from Karateka (PAL) entries.
2023-09-23 07:36:05 -10:00
sanni
559010079c
Add support for Atari 5200/7800, C64, Vectrex (thx to skaman)
2023-09-23 00:11:08 +02:00
But Thou Must
c88978f5ea
SNES.ino: Fix dumping Sound Novel Tsukuru (Japan) with same fix as for Derby Stallion '96 (Japan)
2023-09-21 18:39:18 -04:00
Ancyker
74fba5e29d
N64.ino: Handle reused global from FLASH.ino
2023-09-14 12:00:58 -04:00
Ancyker
4f8ef61355
Remove unused variables in N64.ino
2023-09-13 10:32:48 -04:00
Richard Weick
e92e42c581
Update N64.ino
...
Update Xplorer64 functions in N64.ino to fix a potential issue for some hardware.
2023-09-12 19:31:55 -05:00
Richard Weick
bc62414c59
Update N64.ino
...
This adds full support for the Xplorer 64, including backup and writing of new firmware to the device. Firmware must be unscrambled (not dumped directly from the chips in a chip reader) in order to work with this program. Firmware dumped via the Sanni Cart Reader with this function work perfectly when written back.
2023-09-10 21:49:11 -05:00
Richard Weick
61bfc81ce4
Update N64.ino
...
This updates the N64 Gameshark function description, adds progress bars for the writing and verification functions, and updates the Chip ID function to report an unknown chip.
2023-09-08 10:06:27 -05:00
Richard Weick
b748faecde
Update N64.ino
...
This completes the N64 Gameshark functions. It adds the command to enable CPLD address ranges of 0x1EEx_xxxx, 0x1EFx_xxxx, and 0x1ECx_xxxx which are necessary to program the SST 28LF040 eeprom. This also adds full support for the SST 28LF040 eeproms.
2023-09-07 21:50:06 -05:00
sakman55
7cf03d3542
Update FAIRCHILD.ino
...
Modifications for reading 4K carts
2023-09-04 12:38:32 -10:00
Ancyker
749d60de3f
Fixed warnings in GB.ino
2023-09-04 16:29:00 -04:00
Ancyker
03bef214ec
Add some clarification to Config.h
2023-08-25 03:57:15 -04:00
Ancyker
d99e2d4040
Update MD.ino
...
Add "Dynamite Headdy (USA, Europe)", "NHL 98 (USA)", "Gain Ground (USA)", "Wonder Boy III - Monster Lair (Japan, Europe) (En)"
2023-08-25 03:54:38 -04:00
Ancyker
ec3d048172
Update MD.ino
...
Add "NHL 98 (USA)"
Fixes #841
2023-08-24 01:52:45 -04:00
Richard Weick
b2c5999380
Update GB.ino
...
Add GBC to Gameshark menu labels
2023-08-19 22:24:28 -05:00
Richard Weick
2143fe71af
Update GB.ino
...
Add Datel Device menu
2023-08-19 22:23:30 -05:00
Richard Weick
8aee244bd0
Update GB.ino
...
Add support for Gameboy Gameshark and Mega Memory Card
2023-08-19 22:17:22 -05:00
PsyK0p4T
8d7fc3a486
Fix Xplorer_N64 dump
2023-08-18 20:37:15 +02:00
sanni
a969a93281
Add Xplorer 64 dump option to N64
...
Thx to [RWeick](https://github.com/RWeick/FCD-0003.1S-Xplorer64 ) for finding the address the firmware is mapped to.
2023-08-18 11:01:14 +02:00
PsyK0p4T
74aaaa4d0e
Add a progressbar to Pokemon Mini
...
Add a progressbar to Pokemon Mini
2023-08-14 15:30:29 +02:00
Richard Weick
1bc74f055d
Update GB.ino
...
Removed unnecessary VSelect Option that may cause issues during compilation.
2023-08-13 19:13:43 -05:00
Richard Weick
5b554bc6e3
Update GB.ino
2023-08-13 19:05:57 -05:00
Ancyker
6733c9f57c
Add note to self-test on HW3 that the EEP switch should be set to on.
...
Unable to actually test this myself because I do not have a HW3 to test on. However, looking at the schematic, if the EEP switch is set to the off position then the pin will be floating and the result of the 1K resistor test will be random.
2023-08-01 18:26:20 -04:00
sanni
fee5c867aa
Update INTV.ino for 12K carts (thx to skaman)
2023-07-29 12:39:21 +02:00
PsyK0p4T
42c409baf2
Add Pokémon Mini CRC check
2023-07-28 15:32:54 +02:00
sanni
63aeb335a4
Add support for DS1307 RTC module
...
DS1307 does not seem to have the lost lostPower function. So the time does not get set on upload and needs to be set manually as described in the [wiki](https://github.com/sanni/cartreader/wiki/Real%E2%80%90Time-Clock#setting-the-time ).
In Config.h set like this:
````
#define RTC_installed
//#define DS3231
#define DS1307
````
Connect "Tiny RTC I2C module" or similar to the SDA/SCL/VCC/GND pins.
2023-07-22 15:21:02 +02:00
sanni
97eada64e7
Fix Serial Monitor menu
2023-07-19 16:32:34 +02:00
sanni
829408c655
Unify HW3 and HW5 menues
2023-07-19 15:13:06 +02:00
sanni
b4d6b4e637
E7/F4/F6/F8 mapper changes and new mapper for Time Pilot (thx to skaman)
2023-07-18 22:54:28 +02:00
nsx0r
66dfc8b4e9
[NES] fix mapper 148
2023-07-18 07:17:17 +02:00
Roger Braunstein
a334129e2a
Fixes Loopy SRAM dumping
2023-07-15 23:15:19 -07:00
Ancyker
ff62f494eb
Firmware Updates for RTC
...
Also minor edits to `setVoltage()`
2023-07-16 01:01:58 -04:00
sanni
95f4f44786
Update OSCR.cpp
2023-07-13 10:32:02 +02:00
sanni
ac03c4bede
Update Cart_Reader.ino
2023-07-13 10:31:15 +02:00
sanni
74e46f4322
Merge pull request #824 from partlyhuman/support-casio-loopy
...
Casio Loopy Adapter
2023-07-11 09:53:04 +02:00
Roger Braunstein
1d147828f6
PR ready?
2023-07-10 16:01:23 -07:00
Roger Braunstein
0d7b51806a
Moves loopy db into loopy.ino, adds format sram option
2023-07-10 15:52:02 -07:00
PsyK0p4T
eb50a94473
Update MD.ino
...
Add "Technoptimistic (Aftermarket)"
2023-07-10 00:51:55 +02:00
Roger Braunstein
2b5168f144
SRAM operations working, some minor optimizations
2023-07-06 16:34:06 -07:00
Roger Braunstein
7f005e3f0e
Fixes issue with SRAM where writing to shared address port set control pins
2023-07-06 15:52:30 -07:00