Presenting: emulators/ucon64, the multipurpose game backup utility
2013-08-05 20:08uCON64 is a multipurpose video game backup utility now available in FreeBSD Ports as emulators/ucon64.
It can, for example, toggle region flags on a Sega Saturn disc image, convert images for use on flash carts and classic HK copiers, pad ROM images, check ROM images against your DATabase, or apply fan-made fix and translation patches in IPS, APS, PPF.
To demonstrate, I applied J2s’s Final Fantasy IV translation patch to a Japanese Final Fantasy IV ROM image and converted it for play on my copier:
- Archive: ff4ev321.zip
- inflating: FF4EV321.IPS
- inflating: ff4ev321.txt
- uCON64 2.0.0 Unix (FreeBSD) 1999-2005
- Uses code from various people. See 'developers.html' for more!
- This may be freely redistributed under the terms of the GNU Public License
-
- Wrote backup to: Final Fantasy IV.bak
- Applying IPS patch...
- Patching complete
-
- Wrote output to: Final Fantasy IV.smc
-
- NOTE: Sometimes you have to add/strip a 512 bytes header when you patch a ROM
- This means you must modify for example a SNES ROM with -swc or -stp or
- the patch will not work
Fixed the header checksum:
- uCON64 2.0.0 Unix (FreeBSD) 1999-2005
- Uses code from various people. See 'developers.html' for more!
- This may be freely redistributed under the terms of the GNU Public License
-
- /usr/home/nicole/ff4/Final Fantasy IV.smc
-
- Super Com Pro/Super Magicom/SMC/Super Wild Card (1.6XC/2.7CC/2.8CC/DX/DX2)/SWC
-
- 000081b0 20 bc fe 60 ad e3 0f 20 bc fe 60 ff 20 f0 94 6b ..`... ..`. ..k
- 000081c0 46 69 6e 61 6c 20 46 61 6e 74 61 73 79 20 34 20 Final Fantasy 4
- 000081d0 28 4a 32 65 29 20 02 0a 03 00 c3 01 33 53 cc ac (J2e) ......3S..
-
- Super Nintendo Entertainment System/SNES/Super Famicom
- Final Fantasy 4 (J2e)
- Square
- Japan
- 1572864 Bytes (12.0000 Mb)
-
- Padded: Maybe, 16 Bytes (0.0001 Mb)
- Interleaved/Swapped: No
- Backup unit/emulator header: Yes, 512 Bytes
- HiROM: No
- Internal size: 8 Mb
- ROM type: (2) ROM + SRAM + Battery
- ROM speed: 200 ns (SlowROM)
- SRAM: Yes, 8 kBytes
- Version: 1.1
- Checksum: Bad, 0xcdef (calculated) != 0xaccc (internal)
- Inverse checksum: Bad, 0x3210 (calculated) != 0x5333 (internal)
- Checksum (CRC32): 0x3b97b364
-
- Wrote backup to: Final Fantasy IV.bak
- 000081dc 10 32 ef cd .2..
- Wrote output to: Final Fantasy IV.smc
Converted it to Game Doctor format for my GD-SFIII:
- uCON64 2.0.0 Unix (FreeBSD) 1999-2005
- Uses code from various people. See 'developers.html' for more!
- This may be freely redistributed under the terms of the GNU Public License
-
- Wrote backup to: ./sf12Fin.bak
- Wrote output to: ./sf12Fin
Split the image to fit on 1.4MB diskettes:
- uCON64 2.0.0 Unix (FreeBSD) 1999-2005
- Uses code from various people. See 'developers.html' for more!
- This may be freely redistributed under the terms of the GNU Public License
-
- /usr/home/nicole/ff4/sf12Fin
-
- Game Doctor SF3(SF6/SF7)/Professor SF(SF II)
-
- 000081b0 20 bc fe 60 ad e3 0f 20 bc fe 60 ff 20 f0 94 6b ..`... ..`. ..k
- 000081c0 46 69 6e 61 6c 20 46 61 6e 74 61 73 79 20 34 20 Final Fantasy 4
- 000081d0 28 4a 32 65 29 20 02 0a 03 00 c3 01 10 32 ef cd (J2e) .......2..
-
- Super Nintendo Entertainment System/SNES/Super Famicom
- Final Fantasy 4 (J2e)
- Square
- Japan
- 1572864 Bytes (12.0000 Mb)
-
- Padded: Maybe, 16 Bytes (0.0001 Mb)
- Interleaved/Swapped: No
- Backup unit/emulator header: Yes, 512 Bytes
- HiROM: No
- Internal size: 8 Mb
- ROM type: (2) ROM + SRAM + Battery
- ROM speed: 200 ns (SlowROM)
- SRAM: Yes, 8 kBytes
- Version: 1.1
- Checksum: Ok, 0xcdef (calculated) == 0xcdef (internal)
- Inverse checksum: Ok, 0x3210 (calculated) == 0x3210 (internal)
- Checksum (CRC32): 0x857d14c8
-
- Wrote output to: ./SF12FINA.078
- Wrote output to: ./SF12FINB.078
Then, copied over to two 3.5” diskettes:
Loaded it:
And played!