uCON64 2.2.2 UNIX (Linux) 1999-2021
Uses code from various people. See 'developers.html' for more!
uCON64 may be freely distributed under the terms of the GNU Public License

Usage: ucon64 [OPTION]... [ROM|IMAGE|SRAM|FILE|DIR|ARCHIVE]...

Options
   -o=DIRECTORY specify output directory
   -r           process subdirectories recursively
  --nbak        prevents backup files (*.BAK)
  --ncol        disable ANSI colors in output
  --port=PORT   specify USB or parallel PORT={USB0,USB1,... 3bc,378,278,...}
                  In order to connect a backup unit to a PC's parallel port
                  you need a standard bidirectional parallel cable
  --xreset      reset parallel port
  --hdn=N       force ROM has backup unit/emulator header with size of N Bytes
  --hd          same as --hdn=512
                  most backup units use a header with a size of 512 Bytes
  --nhd         force ROM has no backup unit/emulator header
  --ns          force ROM is not split
   -e           emulate/run ROM (check ~/.ucon64rc for all Emulator settings)
  --crc         show CRC32 value of ROM
  --sha1        show SHA1 value of ROM
  --md5         show MD5 value of ROM
  --ls          generate ROM list for all recognized ROMs
  --lsv         like --ls but more verbose
  --hex[=O1[:O2]] show ROM as hexdump
                  O1=optional offset (decimal/hexadecimal) of start
                  O2=optional offset (decimal/hexadecimal) of end
  --bit[=O1[:O2]] show ROM as bitdump
  --code[=O1[:O2]] show ROM as code
  --print[=O1[:O2]] show ROM in printable characters
  --find=STRING find STRING in ROM (wildcard: '?')
  --findi=STR   like --find but ignores the case of alpha bytes
  --findr=STR   like --find but looks also for shifted/relative similarities
                  (no wildcard supported)
  --hfind=HEX   find HEX codes in ROM; use quotation --hfind="75 ? 4f 4e"
                  (wildcard: '?')
  --hfindr=HEX  like --hfind but looks also for shifted/relative similarities
                  (no wildcard supported)
  --dfind=DEC   find DEC values in ROM; use quotation --dfind="117 ? 79 78"
                  (wildcard: '?')
  --dfindr=DEC  like --dfind but looks also for shifted/relative similarities
                  (no wildcard supported)
   -c=FILE      compare FILE with ROM for differences
  --cs=FILE     compare FILE with ROM for similarities
  --help[=WHAT] display help and exit
                  WHAT="long"   show long help (default)
                  WHAT="pad"    show help for padding ROMs
                  WHAT="dat"    show help for DAT support
                  WHAT="patch"  show help for patching ROMs
                  WHAT="backup" show help for backup units
                  WHAT="disc"   show help for DISC image support
                  --help --snes would show only SNES related help
  --version     output version information and exit
   -q           be quiet (don't show ROM info)
   -v           be more verbose (show backup unit headers also)

Padding
  --ispad       check if ROM is padded
  --pad         pad ROM to next Mb
   -p           same as --pad
  --padn=N      pad ROM to N Bytes (put Bytes with value 0x00 after end)
  --strip=N     strip N Bytes from end of ROM
  --stpn=N      strip N Bytes from start of ROM
  --stp         same as --stpn=512
                  most backup units use a header with a size of 512 Bytes
  --insn=N      insert N Bytes (0x00) before ROM
  --ins         same as --insn=512
                  most backup units use a header with a size of 512 Bytes
  --split=N     split ROM in parts of N Bytes (including possible header)
                  use -s/--ssize to split for a specific console or backup unit

DATabase (support for DAT files)
  --db          DATabase statistics
  --dbv         like --db but more verbose
  --dbs=CRC32   search ROM with CRC32 value in DATabase
  --scan        generate ROM list for all ROMs using DATabase
                  like: GoodXXXX scan ...
  --lsd         same as --scan
  --mkdat=DATFILE create DAT file; use -o to specify an output directory
  --rdat        rename ROMs to their DATabase names
  --rrom        rename ROMs to their internal names (if any)
  --r83         rename to 8.3 filenames
  --rjoliet     rename to Joliet compatible filenames
  --rl          rename to lowercase
  --ru          rename to uppercase

Patching
  --poke=OFF:V  change byte at file offset OFF to value V (both in hexadecimal)
  --hreplace=S:R find S and copy R to the start of each match; use quotation if
                  S or R contains spaces --hreplace="75 43 4f 4e:4261636b"
                  (wildcard: '?')
  --pattern=FILE change ROM based on patterns specified in FILE
  --patch=PATCH specify the PATCH for the following options
                  use this option or uCON64 expects the last commandline
                  argument to be the name of the PATCH file
   -b           apply Baseline/BSL PATCH to ROM
   -i           apply IPS PATCH to ROM (IPS<=v1.2)
  --mki=ORG_ROM create IPS patch; ROM should be the modified ROM
   -a           apply APS PATCH to ROM (APS<=v1.2)
  --mka=ORG_ROM create APS patch; ROM should be the modified ROM
  --na=DESC     change APS single line DESCRIPTION
  --ppf         apply PPF PATCH to IMAGE (PPF<=v2.0); ROM should be an IMAGE
  --mkppf=ORG_IMG create PPF patch; ROM should be the modified IMAGE
  --nppf=DESC   change PPF single line DESCRIPTION
  --idppf=FILE_ID.DIZ change FILE_ID.DIZ of PPF PATCH (PPF v2.0)
  --gge=CODE    encode and display Game Genie code
                  example: --gge=CODE --sms or --gge=CODE --gb
                  CODE='AAAA:VV' or CODE='AAAA:VV:CC'
                  --gge=CODE --gen
                  CODE='AAAAAA:VVVV'
                  --gge=CODE --nes
                  CODE='AAAA:VV' or CODE='AAAA:VV:CC'
                  --gge=CODE --snes
                  CODE='AAAAAA:VV'
  --ggd=GG_CODE decode Game Genie code
                  example: --ggd=GG_CODE --sms or --ggd=GG_CODE --gb
                  GG_CODE='XXX-XXX' or GG_CODE='XXX-XXX-XXX'
                  --ggd=GG_CODE --gen
                  GG_CODE='XXXX-XXXX'
                  --ggd=GG_CODE --nes
                  GG_CODE='XXXXXX' or GG_CODE='XXXXXXXX'
                  --ggd=GG_CODE --snes
                  GG_CODE='XXXX-XXXX'
  --gg=GG_CODE  apply Game Genie code (permanently)
                  example: like above but a ROM is required
                  supported are:
                  Game Boy/(Super GB)/GB Pocket/Color GB/(GB Advance),
                  Sega Master System(II/III)/Game Gear (Handheld),
                  Genesis/Sega Mega Drive/Sega CD/32X/Nomad,
                  Nintendo Entertainment System/NES/Famicom/Game Axe (Redant),
                  Super Nintendo Entertainment System/SNES/Super Famicom

All disc-based consoles
  --disc        force recognition
  --rip=N       rip/dump track N from IMAGE
  --bin2iso=N   convert track N to ISO (if possible) by resizing
                  sectors to 2048 Bytes
  --isofix=N    fix corrupted track N (if possible)
                  if PVD points to a bad DR offset it will add padding data
                  so actual DR gets located in right absolute address
  --mkcue       generate CUE sheet for IMAGE or existing TOC sheet
  --mktoc       generate TOC sheet for IMAGE or existing CUE sheet

Dreamcast
  --dc          force recognition
  --scr         scramble 1ST_READ.BIN for selfboot CDs
  --unscr       unscramble 1ST_READ.BIN for non-selfboot CDs
  --mkip        generate IP.BIN file with default values
  --parse=TEMPLATE parse TEMPLATE file into a IP.BIN;
                  creates an empty template when TEMPLATE does not exist

Playstation (One)
  --psx         force recognition

Game Boy Advance (SP)
  --gba         force recognition
   -n=NEW_NAME  change internal ROM name to NEW_NAME
  --logo        restore ROM logo character data (offset: 0x04-0x9F)
  --chk         fix ROM header checksum
  --sram        patch ROM for SRAM saving
  --sc          convert to Super Card (CF to GBA Adapter)
                  (creates SAV and SCI templates)
  --crp=WAIT_TIME slow down ROM access ("crash patch");
                  WAIT_TIME=0  default in most crash patches
                  WAIT_TIME=4  faster than 0, slower than 8
                  WAIT_TIME=8  faster than 4, slower than 28
                  WAIT_TIME=12 slowest cartridge access speed
                  WAIT_TIME=16 faster than 28, but slower than 20
                  WAIT_TIME=20 default in most original cartridges
                  WAIT_TIME=24 fastest cartridge access speed
                  WAIT_TIME=28 faster than 8 but slower than 16
  --multi=SIZE  make multi-game file for use with FAL/F2A flash card, truncated
                  to SIZE Mbit; file with loader must be specified first, then
                  all the ROMs, multi-game file to create last
Flash 2 Advance (Ultra)
  --xf2a        send/receive ROM to/from Flash 2 Advance (Ultra); --port=PORT
                  receives automatically (32 Mbits) when ROM does not exist
  --xf2amulti=SIZE send multiple ROMs to Flash 2 Advance (Ultra); specify a
                  loader in the configuration file; --port=PORT
  --xf2ac=N     receive N Mbits of ROM from Flash 2 Advance (Ultra);
                  --port=PORT
  --xf2as       send/receive SRAM to/from Flash 2 Advance (Ultra); --port=PORT
                  receives automatically when SRAM does not exist
  --xf2ab=BANK  send/receive SRAM to/from Flash 2 Advance (Ultra) BANK
                  BANK should be a number >= 1; --port=PORT
                  receives automatically when SRAM does not exist
Flash Advance Linker
  --xfal        send/receive ROM to/from Flash Advance Linker; --port=PORT
                  receives automatically (32 Mbits) when ROM does not exist
  --xfalmulti=SIZE send multiple ROMs to Flash Advance Linker (makes temporary
                  multi-game file truncated to SIZE Mbit); specify a loader in
                  the configuration file; --port=PORT
  --xfalc=N     receive N Mbits of ROM from Flash Advance Linker; --port=PORT
                  N can be 8, 16, 32, 64, 128 or 256
  --xfals       send/receive SRAM to/from Flash Advance Linker; --port=PORT
                  receives automatically when SRAM does not exist
  --xfalb=BANK  send/receive SRAM to/from Flash Advance Linker BANK
                  BANK can be 1, 2, 3 or 4; --port=PORT
                  receives automatically when SRAM does not exist
  --xfalm       use SPP mode, default is EPP mode

Nintendo DS
  --nds         force recognition
   -n=NEW_NAME  change internal ROM name to NEW_NAME
  --logo        restore ROM logo character data
  --chk         fix ROM header checksum

Nintendo 64
  --n64         force recognition
  --int         force ROM is in interleaved format (2143, V64)
  --nint        force ROM is not in interleaved format (1234, Z64)
   -n=NEW_NAME  change internal ROM name to NEW_NAME
  --v64         convert to Doctor V64 (and compatibles/interleaved)
  --z64         convert to Mr. Backup Z64 (not interleaved)
  --dint        convert ROM to (non-)interleaved format (1234 <-> 2143)
  --swap        same as --dint, byte-swap ROM
  --swap2       word-swap ROM (1234 <-> 3412)
  --bot=BOOTCODE replace/extract BOOTCODE (4032 Bytes) in/from ROM;
                  extracts automatically if BOOTCODE does not exist
  --lsram=SRAM  LaC's SRAM upload tool; ROM should be LaC's ROM image
                  the SRAM must have a size of 512 Bytes
                  this option generates a ROM which can be used to transfer
                  SRAMs to your cartridge's SRAM (EEPROM)
  --usms=SMSROM Jos Kwanten's UltraSMS (Sega Master System/Game Gear emulator);
                  ROM should be Jos Kwanten's UltraSMS ROM image
                  works only for SMS ROMs which are <= 4 Mb in size
  --chk         fix ROM checksum
                  supports 6101, 6102, 6103, 6105 and 6106 boot codes
Doctor V64
  --xv64        send/receive ROM to/from Doctor V64; --port=PORT
                  receives automatically when ROM does not exist
Doctor V64 Junior
  --xdjr        send ROM to Doctor V64 Junior; --port=PORT
CD64
  --xcd64       send/receive ROM to/from CD64; --port=PORT
                  receives automatically (64 Mbits) when ROM does not exist
  --xcd64c=N    receive N Mbits of ROM from CD64; --port=PORT
  --xcd64b      send boot emu to CD64; --port=PORT
  --xcd64s      send/receive SRAM to/from CD64; --port=PORT
                  receives automatically when SRAM file does not exist
  --xcd64f      send/receive flash RAM to/from CD64; --port=PORT
                  receives automatically when flash RAM file does not exist
  --xcd64e      send/receive EEPROM data to/from CD64; --port=PORT
                  receives automatically when EEPROM file does not exist
  --xcd64m=INDEX send/receive memory pack data to/from CD64; --port=PORT
                  INDEX is ignored for CD64 BIOS protocol
                  receives automatically when memory pack file does not exist
  --xcd64p=PROT use protocol PROT when communicating with CD64; --port=PORT
                  PROT=0 CD64 BIOS
                  PROT=1 Ghemor
                  PROT=2 UltraLink

Super Nintendo Entertainment System/SNES/Super Famicom
  --snes        force recognition
  --hi          force ROM is HiROM
  --nhi         force ROM is not HiROM
  --erom        force ROM is "Extended" (combine with --hi for Extended HiROM)
  --int         force ROM is in interleaved format (GD3/UFO)
  --int2        force ROM is in interleaved format 2 (SFX)
  --nint        force ROM is not in interleaved format
  --bs          force ROM is a Broadcast Satellaview dump
  --nbs         force ROM is a regular cartridge dump
   -n=NEW_NAME  change internal ROM name to NEW_NAME
  --fig         convert to *Pro Fighter*/FIG
  --figs        convert *.srm (SRAM) file to *Pro Fighter*/FIG
  --gd3         convert to Game Doctor SF3(SF6/SF7)/Professor SF(SF 2)
  --id          force --gd3 to produce a unique filename
  --idnum=NUM   force --gd3 to produce filenames where first file has numerical
                  identifier NUM, next NUM + 1, etc.
  --gd3s        convert *.srm (SRAM) file to GD SF3(SF6/SF7)/Professor SF*
  --mgd         convert to Multi Game Doctor 2/MGD2/RAW
  --mgh         convert to Multi Game Hunter/MGH
  --smc         convert to Super Magicom/SMC
  --swc         convert to Super Wild Card*/SWC
  --swcs        convert *.srm (SRAM) file to Super Wild Card*/SWC
  --ufo         convert to Super UFO Super Drive PRO 7/8
  --ufos        convert *.srm (SRAM) file to Super UFO Super Drive PRO 7/8
  --ufosd       convert to Super UFO Pro 8 SD
  --ufosds      convert *.srm (SRAM) file to Super UFO Pro 8 SD
  --ic2         convert to Super Magicom/SMC IC2
  --sminis=ID   convert *.srm (SRAM) file to SNES/Super Famicom Classic Mini
                  (hakchi2) format for game with identifier ID
  --range=O1:O2 specify range for calculating checksum of SNES/Super Famicom
                  Classic Mini (hakchi2) SRAM data
                  O1=offset (hexadecimal) of first byte of range
                  O2=offset (hexadecimal) of last byte of range
  --smini2srm   convert SNES/Super Famicom Classic Mini (hakchi2) SRAM data to
                  *.srm (SRAM) file
  --ctrl=TYPE   specify type of controller in port 1 for emu when converting
                  TYPE=0 gamepad
                  TYPE=1 mouse
                  TYPE=2 mouse / gamepad
                  TYPE=6 multitap
  --ctrl2=TYPE  specify type of controller in port 2 for emu when converting
                  TYPE=0 gamepad
                  TYPE=1 mouse
                  TYPE=2 mouse / gamepad
                  TYPE=3 super scope
                  TYPE=4 super scope / gamepad
                  TYPE=5 Konami's justifier
                  TYPE=6 multitap
                  TYPE=7 mouse / super scope / gamepad
  --stp         convert SRAM from backup unit for use with an emulator
                  --stp just strips the first 512 bytes
  --dbuh        display (relevant part of) backup unit header and interpret it
  --dint        deinterleave ROM (regardless whether the ROM is interleaved)
  --col=0xCOLOR convert 0xRRGGBB (HTML) <-> 0xXXXX (SNES)
   -j           join split ROM
   -s           split ROM (not for UFO Pro 8 SD); default part size is 8 Mb
  --smgh        split ROM for Multi Game Hunter/MGH
  --ssize=SIZE  specify split part size in Mbit (not for Game Doctor SF3)
   -k           remove protection (crack)
   -f           remove NTSC/PAL protection
   -l           remove SlowROM checks
  --chk         fix ROM checksum
  --multi=SIZE  make multi-game file for use with Super Flash flash card,
                  truncated to SIZE Mbit; file with loader must be specified
                  first, then all the ROMs, multi-game file to create last
  --dmirr       "de-mirror" ROM (strip mirrored block from end of ROM)
  --dnsrt       "de-NSRT" ROM (restore name and checksum from NSRT header)
  --mksrm       create *.srm (SRAM) file with size based on ROM information
Supercom PRO/Super Magicom/SMC/Super Wild Card (1.6XC/2.7CC/2.8CC/DX/DX2)/SWC
  --xswc        send/receive ROM to/from Super Wild Card*/SWC; --port=PORT
                  receives automatically when ROM does not exist
  --xswc2       same as --xswc, but enables Real Time Save mode (SWC only)
  --xswc-io=MODE specify SWC I/O mode; use with --xswc or --xswcc
                  MODE=0x001 force 32 Mbit dump
                  MODE=0x002 use alternative method for determining ROM size
                  MODE=0x004 Super FX
                  MODE=0x008 S-DD1
                  MODE=0x010 SA-1
                  MODE=0x020 SPC7110
                  MODE=0x040 DX2 trick (might work with other SWC models)
                  MODE=0x080 Mega Man X 2
                  MODE=0x100 dump BIOS
                  It is possible to combine flags. MODE=0x44 makes it possible
                  to dump for example Yoshi's Island
  --xswcs       send/receive SRAM to/from Super Wild Card*/SWC; --port=PORT
                  receives automatically when SRAM does not exist
  --xswcc       send/receive SRAM to/from cartridge in Super Wild Card*/SWC;
                  --port=PORT
                  receives automatically when SRAM does not exist
  --xswcr       send/receive RTS data to/from Super Wild Card*/SWC; --port=PORT
                  receives automatically when RTS file does not exist
Game Doctor SF3(SF6/SF7)/Professor SF(SF 2)
  --xgd3        send ROM to Game Doctor SF3/SF6/SF7; --port=PORT
                  this option uses the Game Doctor SF3 protocol
  --xgd6        send/receive ROM to/from Game Doctor SF6/SF7; --port=PORT
                  receives automatically when ROM does not exist
                  this option uses the Game Doctor SF6 protocol
  --xgd3s       send SRAM to Game Doctor SF3/SF6/SF7; --port=PORT
  --xgd6s       send/receive SRAM to/from Game Doctor SF6/SF7; --port=PORT
                  receives automatically when SRAM does not exist
  --xgd3r       send saver (RTS) data to Game Doctor SF3/SF6/SF7;--port=PORT
  --xgd6r       send/receive saver (RTS) data to/from Game Doctor SF6/SF7;
                  --port=PORT
                  receives automatically when saver file does not exist
Super Pro Fighter (Q/Q+)/Pro Fighter X (Turbo 2)/Double Pro Fighter (X Turbo)
  --xfig        send/receive ROM to/from *Pro Fighter*/FIG; --port=PORT
                  receives automatically when ROM does not exist
  --xfigs       send/receive SRAM to/from *Pro Fighter*/FIG; --port=PORT
                  receives automatically when SRAM does not exist
  --xfigc       send/receive SRAM to/from cartridge in *Pro Fighter*/FIG;
                  --port=PORT
                  receives automatically when SRAM does not exist
UFO Super Drive PRO 6 HYPER VERSION/Future Supercom Pro.9/Twin Supercom Pro.5
(Modified) Supercom PRO.1/(Modified) Super Magicom
  --xic2        send ROM to SMC IC2 compatible backup unit; --port=PORT
Super Flash
  --xsf         send/receive ROM to/from Super Flash; --port=PORT
                  receives automatically (64 Mbits) when ROM does not exist
  --xsfs        send/receive SRAM to/from Super Flash; --port=PORT
                  receives automatically when SRAM does not exist
Quickdev16
  --xqd16       send ROM to Quickdev16
Super UFO Pro 8 SD
  --xufosd      send ROM to Super UFO Pro 8 SD

Neo Geo/Neo Geo CD(Z)/MVS
  --ng          force recognition
  --bios=BIOS   convert NeoCD BIOS to work with NeoCD emulator
  --sam=SAMFILE convert SAM/M.A.M.E. sound to WAV

Genesis/Sega Mega Drive/Sega CD/32X/Nomad
  --gen         force recognition
  --int         force ROM is in interleaved format (SMD)
  --int2        force ROM is in interleaved format 2 (MGD2)
  --nint        force ROM is not in interleaved format (BIN/RAW)
   -n=NEW_NAME  change foreign ROM name to NEW_NAME
  --n2=NEW_NAME change Japanese ROM name to NEW_NAME
  --smd         convert to Magic Drive Plus/Super Magic Drive/SMD
  --smds        convert *.srm (SRAM) file to Super Magic Drive/SMD
  --bin         convert to Magicom/BIN/RAW
  --mgd         convert to Multi Game Doctor 2/MGD2
  --mgh         convert to Multi Game Hunter/MGH
  --stp         convert SRAM from backup unit for use with an emulator
                  --stp just strips the first 512 bytes
   -j           join split ROM
   -s           split ROM; default part size is 8 Mb (4 Mb for SMD)
  --smgh        split ROM for Multi Game Hunter/MGH
  --ssize=SIZE  specify split part size in Mbit
   -f           remove NTSC/PAL protection
  --chk         fix ROM checksum
  --1991        fix old third party ROMs to work with consoles build after
                  October 1991 by inserting "(C) SEGA" and "(C)SEGA"
  --multi=SIZE  make multi-game file for use with MD-PRO flash card, truncated
                  to SIZE Mbit; file with loader must be specified first, then
                  all the ROMs, multi-game file to create last
  --region=CODE enable region function; use with --multi
                  CODE=0 force NTSC/Japan for all games
                  CODE=1 force NTSC/U.S.A. for all games
                  CODE=2 force PAL for all games
                  CODE=x use whatever setting games expect
Supercom PRO/Magic Drive Plus/Super Magic Drive/SMD
  --xsmd        send/receive ROM to/from Super Magic Drive/SMD; --port=PORT
                  receives automatically when ROM does not exist
  --xsmds       send/receive SRAM to/from Super Magic Drive/SMD; --port=PORT
                  receives automatically when SRAM does not exist
MD-PRO
  --xmd         send/receive ROM to/from MD-PRO; --port=PORT
                  receives automatically (32/64 Mbits) when ROM does not exist
  --xmds        send/receive SRAM to/from MD-PRO; --port=PORT
                  receives automatically when SRAM does not exist
  --xmdb=BANK   send/receive SRAM to/from MD-PRO BANK
                  BANK can be a number from 1 to 4; --port=PORT
                  receives automatically when SRAM does not exist
Mike Pavone's Genesis/Sega CD transfer cable
  --xmcd        receive ROM from Genesis/Sega CD; --port=PORT
Cyan's Megadrive ROM copier
  --xcmc        receive ROM from Cyan's Megadrive ROM copier; --port=PORT
  --xcmct=TEST  run test TEST
                  TEST=1 burn-in reliability test (specify speed)
                  TEST=2 testbench mode (experts only)
  --xcmcm=SPEED specify transfer speed
                  SPEED=1 slow (debug)
                  SPEED=2 medium
                  SPEED=3 fast (default)
                  SPEED=4 full speed (risky)

Game Boy/(Super GB)/GB Pocket/Color GB
  --gb          force recognition
   -n=NEW_NAME  change internal ROM name to NEW_NAME
  --logo        restore ROM logo character data (offset: 0x104-0x134)
  --mgd         convert to Multi Game*/MGD2/RAW
  --ssc         convert to Super Smart Card/SSC
  --sgb         convert from GB Xchanger/GB/GBC to Super Backup Card/GX/GBX
  --gbx         convert from Super Backup Card/GX/GBX to GB Xchanger/GB/GBC
  --n2gb=NESROM KAMI's FC EMUlator (NES emulator);
                  ROM should be KAMI's FC Emulator ROM image
                  NESROM should contain 16 kB of PRG data and 8 kB of CHR data
  --chk         fix ROM checksum
  --gp2bmp      convert Game Boy Printer data (produced by --xmccl) to BMP
Game Boy Xchanger/GBDoctor
  --xgbx        send/receive ROM to/from GB Xchanger; --port=PORT
                  receives automatically when ROM does not exist
  --xgbxs       send/receive SRAM to/from GB Xchanger; --port=PORT
                  receives automatically when SRAM does not exist
  --xgbxb=BANK  send/receive 64 kbits SRAM to/from GB Xchanger BANK
                  BANK can be a number from 0 to 15; --port=PORT
                  receives automatically when ROM does not exist
  --xgbxm       use SPP mode, default is EPP mode
Mad Catz Camera Link (Game Boy Camera)
  --xmccl       receives from Mad Catz Camera Link; --port=PORT

Handy (prototype)/Lynx/Lynx II
  --lynx        force recognition
  --lyx         convert to LYX/RAW (strip 64 Bytes LNX header)
  --lnx         convert to LNX (uses default values for the header);
                  adjust the LNX header with the following options
   -n=NEW_NAME  change internal ROM name to NEW_NAME (LNX only)
  --nrot        set no rotation (LNX only)
  --rotl        set rotation left (LNX only)
  --rotr        set rotation right (LNX only)
  --b0=N        change Bank0 kBytes size to N={0,64,128,256,512} (LNX only)
  --b1=N        change Bank1 kBytes size to N={0,64,128,256,512} (LNX only)
Lynxit (Lynx cartridge backup board)
  --xlit        receive ROM from Lynxit interface; --port=PORT

PC-Engine (CD Unit/Core Grafx(II)/Shuttle/GT/LT/Super CDROM/DUO(-R(X)))
Super Grafx/Turbo (Grafx(16)/CD/DUO/Express)
  --pce         force recognition
  --int         force ROM is in interleaved (bit-swapped) format
  --nint        force ROM is not in interleaved (bit-swapped) format
  --msg         convert to Magic Super Griffin/MSG
  --mgd         convert to Multi Game Doctor*/MGD2/RAW
  --swap        swap bits of all bytes in file (TurboGrafx-16 <-> PC-Engine)
   -f           fix region protection
  --multi=SIZE  make multi-game file for use with PCE-PRO flash card, truncated
                  to SIZE Mbit; file with loader must be specified first, then
                  all the ROMs, multi-game file to create last
Magic Super Griffin/MSG
  --xmsg        send/receive ROM to/from Magic Super Griffin/MSG; --port=PORT
                  receives automatically when ROM does not exist
PCE-PRO
  --xpce        send/receive ROM to/from PCE-PRO; --port=PORT
                  receives automatically (32 Mbits) when ROM does not exist

Nintendo Entertainment System/NES/Famicom/Game Axe (Redant)
  --nes         force recognition
   -n=NEW_NAME  change internal ROM name to NEW_NAME (UNIF only)
  --unif        convert to UNIF format/UNF (uses default values)
  --ines        convert to iNES format/NES (uses default values)
  --ineshd      extract iNES header from ROM (16 Bytes)
   -j           join Pasofami/PRM/700/PRG/CHR/split ROM (Pasofami -> iNES)
  --pasofami    convert to Pasofami/PRM/700/PRG/CHR
   -s           convert/split to Pasofami/PRM/700/PRG/CHR (iNES -> Pasofami)
  --ffe         convert to FFE format (Super Magic Card)
  --mapr=MAPR   specify board name or mapper number for conversion options
                  MAPR must be a board name for UNIF or a number for Pasofami
                  and iNES
  --dint        deinterleave ROM (regardless whether the ROM is interleaved)
  --ctrl=TYPE   specify controller type (UNIF only)
                  TYPE=0 regular joypad
                  TYPE=1 zapper
                  TYPE=2 R.O.B.
                  TYPE=3 Arkanoid controller
                  TYPE=4 powerpad
                  TYPE=5 four-score adapter
  --ntsc        specify TV standard is NTSC (UNIF/iNES only)
  --pal         specify TV standard is PAL (UNIF/iNES only)
  --bat         specify battery is present
  --nbat        specify battery is not present
  --vram        specify VRAM override (UNIF only)
  --nvram       specify no VRAM override (UNIF only)
  --mirr=MTYPE  specify mirroring type
                  MTYPE=0 horizontal mirroring
                  MTYPE=1 vertical mirroring
                  MTYPE=2 mirror all pages from $2000 (UNIF only)
                  MTYPE=3 mirror all pages from $2400 (UNIF only)
                  MTYPE=4 four screens of VRAM
                  MTYPE=5 mirroring controlled by mapper hardware (UNIF only)
  --cmnt=TEXT   specify that TEXT should be used as comment (UNIF only)
  --dumpinfo=FILE use dumper info from FILE when converting to UNIF
  --fds         convert Famicom Disk System file (diskimage) from FAM to FDS
  --fdsl        list Famicom Disk System/FDS (diskimage) contents
Super Magic Card
  --xsmc        send ROM (in FFE format) to Super Magic Card; --port=PORT
  --xsmcr       send/receive RTS data to/from Super Magic Card; --port=PORT
                  receives automatically when RTS file does not exist

Sega Master System(II/III)/Game Gear (Handheld)
  --sms         force recognition
  --int         force ROM is in interleaved format
  --nint        force ROM is not in interleaved format
  --mgd         convert to Multi Game*/MGD2/MGH/RAW (gives SMS name)
  --mgdgg       same as --mgd, but gives GG name
  --smd         convert to Magic Drive Plus/Super Magic Drive/SMD
  --smds        convert *.srm (SRAM) file to Super Magic Drive/SMD
  --chk         fix ROM checksum (SMS only)
  --multi=SIZE  make multi-game file for use with SMS-PRO/GG-PRO flash card,
                  truncated to SIZE Mbit; file with loader must be specified
                  first, then all the ROMs, multi-game file to create last
SMS-PRO/GG-PRO
  --xgg         send/receive ROM to/from SMS-PRO/GG-PRO; --port=PORT
                  receives automatically (32 Mbits) when ROM does not exist
  --xggs        send/receive SRAM to/from SMS-PRO/GG-PRO; --port=PORT
                  receives automatically when SRAM does not exist
  --xggb=BANK   send/receive SRAM to/from SMS-PRO/GG-PRO BANK
                  BANK can be a number from 1 to 4; --port=PORT
                  receives automatically when SRAM does not exist

WonderSwan/WonderSwan Color/SwanCrystal
  --swan        force recognition
  --chk         fix ROM checksum

Panther(32-bit prototype)/Jaguar64/Jaguar64 CD
  --jag         force recognition

Neo Geo Pocket/Neo Geo Pocket Color
  --ngp         force recognition
Pocket Linker
  --xpl         send/receive ROM to/from Pocket Linker; --port=PORT
                  receives automatically when ROM does not exist
  --xpli        show information about inserted cartridge; --port=PORT
  --xplm        use SPP mode, default is EPP mode

Atari VCS 2600/Atari 5200 SuperSystem/Atari CX7800/Atari 2600 Jr
  --ata         force recognition

Coleco/ColecoVision
  --coleco      force recognition

Nintendo Virtual Boy
  --vboy        force recognition

DATabase: 42773 known ROMs (DAT files: /home/dbjh/.ucon64/dat)

Please report problems, fixes or ideas to ucon64-main@lists.sf.net or visit
https://ucon64.sourceforge.io