diff --git a/README.md b/README.md index 7f5ee74..176f104 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ ![image](https://dl.dropboxusercontent.com/s/w39fnwop0yypt8a/free.png?dl=1) ![image](https://dl.dropboxusercontent.com/s/94j412n2inh681p/c3378c2cb507ebb.pn?dl=1) # Open Source Cartridge Reader -This project represents a community-driven effort to provide an easy to build and easy to modify cartridge dumper. All the Arduino source code along with the PCB design files and detailed build guides can be found in this Github. Happy making. 🔧🔨😊 +This project represents a community-driven effort to provide an easy to build and easy to modify cartridge dumper. +Happy making. 🔧🔨😊 [![image](https://dl.dropboxusercontent.com/s/0udh1gkl7kem90v/cartbatttop.jpg?dl=1)](https://dl.dropboxusercontent.com/s/p1s0selosoxr86f/1.jpg?dl=1) @@ -43,5 +44,3 @@ And be sure to check the guides in the [Wiki](https://github.com/sanni/cartreade - Reads NeoGeo Pocket cartridges - Programs flashrom chips like AM29F016B/D, AM29F032B, MBM29F033C, MX29F1601, MX29F1610, MX29L3211, MX29LV160, MX29LV320, S29GL032M, MX26L6420, MBM29F800BA, AM29F800BB, LH28F016SUT, AM29F400AB, E28FXXXJ3A and AM29LV033C - Programs M27C322 eproms - -[![](https://dl.dropboxusercontent.com/s/h2e08skmn9pbi2y/savegameyouprev.jpg?dl=1)](https://www.youtube.com/watch?v=r0J9Dplejjg) diff --git a/cartreader.skp b/cartreader.skp deleted file mode 100644 index 6f6e5fd..0000000 Binary files a/cartreader.skp and /dev/null differ diff --git a/pcb/adapters/26L6420_adapter_schematics.png b/pcb/adapters/26L6420_adapter_schematics.png index 6f18a8f..3f5041f 100644 Binary files a/pcb/adapters/26L6420_adapter_schematics.png and b/pcb/adapters/26L6420_adapter_schematics.png differ diff --git a/pcb/adapters/27c322_adapter_schematics.png b/pcb/adapters/27c322_adapter_schematics.png index f63aeec..8d06868 100644 Binary files a/pcb/adapters/27c322_adapter_schematics.png and b/pcb/adapters/27c322_adapter_schematics.png differ diff --git a/pcb/adapters/famicom_adapter_schematics.png b/pcb/adapters/famicom_adapter_schematics.png index eae7980..7031e70 100644 Binary files a/pcb/adapters/famicom_adapter_schematics.png and b/pcb/adapters/famicom_adapter_schematics.png differ diff --git a/pcb/adapters/flash_adapter_schematics.png b/pcb/adapters/flash_adapter_schematics.png index af77ce5..f1a0eda 100644 Binary files a/pcb/adapters/flash_adapter_schematics.png and b/pcb/adapters/flash_adapter_schematics.png differ diff --git a/pcb/adapters/gba_adaper_schematics.png b/pcb/adapters/gba_adapter_schematics.png similarity index 100% rename from pcb/adapters/gba_adaper_schematics.png rename to pcb/adapters/gba_adapter_schematics.png diff --git a/pcb/adapters/nes_adapter_schematics.png b/pcb/adapters/nes_adapter_schematics.png index 4ccfeab..5adecc9 100644 Binary files a/pcb/adapters/nes_adapter_schematics.png and b/pcb/adapters/nes_adapter_schematics.png differ diff --git a/pcb/adapters/ngp_adapter_schematic.png b/pcb/adapters/ngp_adapter_schematic.png index ababbcd..9c34c7a 100644 Binary files a/pcb/adapters/ngp_adapter_schematic.png and b/pcb/adapters/ngp_adapter_schematic.png differ diff --git a/pcb/adapters/sms_adapter_schematics.png b/pcb/adapters/sms_adapter_schematics.png index 9dc4439..1bb93f2 100644 Binary files a/pcb/adapters/sms_adapter_schematics.png and b/pcb/adapters/sms_adapter_schematics.png differ diff --git a/pcb/adapters/wonderswan_adapter_schematics.png b/pcb/adapters/wonderswan_adapter_schematics.png index 3523aa4..70e2029 100644 Binary files a/pcb/adapters/wonderswan_adapter_schematics.png and b/pcb/adapters/wonderswan_adapter_schematics.png differ diff --git a/pcb/cartreader_schematics.png b/pcb/cartreader_schematics.png index 486c039..e9496b9 100644 Binary files a/pcb/cartreader_schematics.png and b/pcb/cartreader_schematics.png differ diff --git a/pcb/pocketsnes/Assembly Instructions.pdf b/pcb/pocketsnes/Assembly Instructions.pdf deleted file mode 100644 index bb30b98..0000000 Binary files a/pcb/pocketsnes/Assembly Instructions.pdf and /dev/null differ diff --git a/pcb/pocketsnes/Pocket SNES Cart-RW.zip b/pcb/pocketsnes/Pocket SNES Cart-RW.zip deleted file mode 100644 index b723184..0000000 Binary files a/pcb/pocketsnes/Pocket SNES Cart-RW.zip and /dev/null differ diff --git a/pcb/pocketsnes/README.md b/pcb/pocketsnes/README.md deleted file mode 100644 index 46f6fb7..0000000 --- a/pcb/pocketsnes/README.md +++ /dev/null @@ -1,5 +0,0 @@ -#### pocketsnes.zip is a smaller variant of the Cart Reader PCB made by Niltonn. To order the PCB please refer to: https://docs.easyeda.com/en/PCB/Order-PCB - -![image](https://dl.dropboxusercontent.com/s/g0bhixbcrzjuye8/pocketsnes.jpg?dl=1) - -More info: https://forum.arduino.cc/index.php?topic=158974.msg4381465#msg4381465 \ No newline at end of file diff --git a/sd/NBAJAMTE.eep b/sd/NBAJAMTE.eep deleted file mode 100644 index d21272c..0000000 Binary files a/sd/NBAJAMTE.eep and /dev/null differ diff --git a/sd/README.md b/sd/README.md index 3db32df..e9f674a 100644 --- a/sd/README.md +++ b/sd/README.md @@ -31,105 +31,18 @@ Savetypes: 5 = 4K Eeprom 6 = 16K Eeprom +#### nes20db.txt +Database for NES cartridges. + +#### PCE_CRC_LIST.txt +Placing this file into the root of the SD card will enable verify and automatic game name identifier. + #### snes.txt This file is needed for odd sized SNES games like Final Fantasy (JAP), Super Metroid(US/JAP) or Tales of Symphonia. Without this file you will get overdumps and the checksum calculation will fail. This list was generated by a simple script and might contain many errors. Example: A172,24,48 -checksum, size in Mbit, number of banks (lorom needs twice as many banks as hirom for the same rom size, lorom: 32kb banks, hirom: 64kb banks) +checksum, size in Mbit, number of banks (lorom needs twice as many banks as hirom for the same rom size, lorom: 32kb banks, hirom: 64kb banks) -#### PCE_CRC_LIST.txt -Placing this file into the root of the SD card will enable verify and automatic game name identifier. - -#### hirom64.map -This is a Nintendo Power SF Memory mapping file that changes the mapping to a single 4MB HiRom game with 64Kbit/8KByte save. The first byte is used to specify the mapping. - -Bit0-1 SRAM Size (0=2K, 1=8K, 2=32K, 3=None) ;ie. 2K SHL (N*2) -Bit2-4 ROM Size (0=512K, 2=1.5M, 5=3M, 7=4M) ;ie. 512K*(N+1) -Bit5 Zero (maybe MSB of ROM Size for carts with three FLASH chips) (set for HIROM:ALL) -Bit6-7 Mode (0=Lorom, 1=Hirom, 2=Forced HIROM:MENU, 3=Forced HIROM:ALL) -More info: http://problemkaputt.de/fullsnes.htm#snescartnintendopowerflashcard - -Example: -0x5d = 0b 01 0 111 01 -01 -> Hirom -0 -111 -> 4M -01 -> 8K - -#### lorom256.map -This is a Nintendo Power SF Memory mapping file that changes the mapping to a single 4MB LoRom game with 256Kbit/32 KByte save. - -Example: -0x1e = 0b 00 0 111 10 -00 -> Lorom -0 -0b111 -> 7 -> 4M -0x10 -> 2 ->32k - -#### mbc5.map -This is a Nintendo Power GB Memory mapping file that changes the mapping to a single 1MB MBC5 game with 32 KByte save. - -GB Mapping Info (by skaman) -Entries start at 0x0 divided into 3 Byte segments - -For example, let's look at the start of the mapping for a multi-game cart: -A8 00 00 71 04 00 48 94 04 separates into -A8 00 00 MENU -71 04 00 GAME 1 -48 94 04 GAME 2 - -Byte 00 of each entry contains the MBC Type, ROM Size, and SRAM Size (start). -SRAM Size is 3 bits across Byte 00 and Byte 01. - MBC SZE SRAM -A8 = 101 010 00 0 MBC5, size 2 = 128KB -71 = 011 100 01 0 MBC3, size 4 = 512KB, SRAM 8KB -48 = 010 010 00 1 MBC2, size 2 = 128KB, SRAM MBC2 - -Byte 00: 1st 3 Bits = MBC Type - 000 = MBC0 - 001 = MBC1 - 010 = MBC2 - 011 = MBC3 - 101 = MBC5 - -Byte 00: 2nd 3 Bits = ROM Size (minimum size is 128KB due to block size) - 010 = Size 2 - 128KB - 011 = Size 3 - 256KB - 100 = Size 4 - 512KB - 101 = Size 5 - 1MB - -Byte 00: Last 2 Bits (bit1..bit0) + Byte 01: 1st Bit (bit7) = SRAM Size - 00 0 = NONE - 00 1 = SRAM MBC2 - 01 0 = SRAM 8KB - 01 1 = SRAM 32KB - -Byte 01 contains the SRAM Size (end) and ROM Block in the Flash. -ROM Blocks are 128KB (8 total) -Byte 01: Last 7 Bits (bit6..bit0) = ROM Block - 00 = ROM Block 0 start offset 0KB - 04 = ROM Block 1 start offset 128KB - 08 = ROM Block 2 start offset 256KB - 0C = ROM Block 3 start offset 384KB - 10 = ROM Block 4 start offset 512KB - 14 = ROM Block 5 start offset 640KB - 18 = ROM Block 6 start offset 768KB - 1C = ROM Block 7 start offset 896KB - -Byte 02 contains the RAM Block in the SRAM. -RAM Blocks are 8KB (16 total) -Byte 02: RAM Block: - 00 = RAM Block 0 start offset 0KB - 04 = RAM Block 1 start offset 8KB - 08 = RAM Block 2 start offset 16KB - 0C = RAM Block 3 start offset 24KB - and so on until RAM Block 15. - -Going back to our example cart: -A8 00 00 MENU: MBC5, size 2 = 128KB, ROM Block 0, RAM Block 0 (Ignored since SRAM is 000) -71 04 00 GAME 1: MBC3, size 4 = 512KB, SRAM 8KB, ROM Block 1, RAM Block 0 -48 94 04 GAME 2: MBC2, size 2 = 128KB, SRAM MBC2, ROM Block 5, RAM Block 1 - -#### NBAJAMTE.eep -NBA Jam T.E. Rev 0 has faulty code that will erase the EEPROM when the cart is played on the console. Solution: Write the included save file to the cart. Play the cart on the console as normal. Create new saves as needed. When done playing, HOLD THE RESET BUTTON DOWN BEFORE TURNING THE CONSOLE OFF. +#### snes_clk.txt +Calibration data for clock generator. \ No newline at end of file diff --git a/sd/hirom64.map b/sd/hirom64.map deleted file mode 100644 index 20382e3..0000000 Binary files a/sd/hirom64.map and /dev/null differ diff --git a/sd/lorom256.map b/sd/lorom256.map deleted file mode 100644 index adce222..0000000 Binary files a/sd/lorom256.map and /dev/null differ diff --git a/sd/mbc5.map b/sd/mbc5.map deleted file mode 100644 index d9efeda..0000000 Binary files a/sd/mbc5.map and /dev/null differ