head	1.6;
access;
symbols
	file-4_20:1.6
	rpm-4_4_8-release:1.2.2.3
	rpm-4_4_7-release:1.2.2.3
	rpm-4_4_6-release:1.2.2.3
	rpm-4_4_5-release:1.2.2.3
	rpm-4_4_4-release:1.2.2.3
	rpm-4_4_3-release:1.2.2.3
	file-4_16:1.5
	jbj_before_tklcpatches:1.2.2.2
	rpm-4_4_2-release:1.2.2.2
	file-4_14:1.4
	pjones-sparse-experiment:1.3.0.2
	rpm-4_4_1-release:1.2.2.1
	file-4_12:1.3
	rpm-4_4-release:1.2
	rpm-4_4:1.2.0.2
	file-4_10:1.2
	file-4_09:1.2
	rpm-file-before:1.1
	rpm42-file-before:1.1
	rpm43-file-before:1.1
	rpm-4_3_1-start:1.1
	rpm-4_3:1.1.0.4
	rpm-4_2:1.1.0.2;
locks; strict;
comment	@# @;


1.6
date	2007.05.09.19.38.34;	author jbj;	state Exp;
branches;
next	1.5;

1.5
date	2005.10.31.19.48.57;	author jbj;	state Exp;
branches;
next	1.4;

1.4
date	2005.07.16.21.06.33;	author jbj;	state Exp;
branches;
next	1.3;

1.3
date	2005.01.02.21.27.19;	author jbj;	state Exp;
branches;
next	1.2;

1.2
date	2004.08.03.20.16.18;	author jbj;	state Exp;
branches
	1.2.2.1;
next	1.1;

1.1
date	2003.04.15.16.58.35;	author jbj;	state Exp;
branches
	1.1.2.1
	1.1.4.1;
next	;

1.2.2.1
date	2005.01.03.02.02.55;	author jbj;	state Exp;
branches;
next	1.2.2.2;

1.2.2.2
date	2005.07.17.14.55.57;	author jbj;	state Exp;
branches;
next	1.2.2.3;

1.2.2.3
date	2005.11.01.00.58.40;	author jbj;	state Exp;
branches;
next	1.2.2.4;

1.2.2.4
date	2007.05.10.17.39.22;	author jbj;	state Exp;
branches;
next	;

1.1.2.1
date	2003.12.01.21.20.02;	author jbj;	state Exp;
branches;
next	;

1.1.4.1
date	2004.12.07.00.57.38;	author jbj;	state Exp;
branches;
next	;


desc
@@


1.6
log
@Virgin file-4.20.
@
text
@#------------------------------------------------------------------------------
# Console game magic
# Toby Deshane <hac@@shoelace.digivill.net>
#    ines:  file(1) magic for Marat's iNES Nintendo Entertainment System
#           ROM dump format

0 string NES\032 iNES ROM dump,
>4 byte  x     %dx16k PRG
>5 byte  x     \b, %dx8k CHR
>6 byte&0x01  =0x1  \b, [Vert.]
>6 byte&0x01  =0x0  \b, [Horiz.]
>6 byte&0x02  =0x2  \b, [SRAM]
>6 byte&0x04  =0x4  \b, [Trainer]
>6 byte&0x04  =0x8  \b, [4-Scr]

#------------------------------------------------------------------------------
# gameboy:  file(1) magic for the Nintendo (Color) Gameboy raw ROM format
#
0x104 belong 0xCEED6666 Gameboy ROM:
>0x134 string >\0 "%.16s"
>0x146 byte 0x03  \b,[SGB]
>0x147 byte 0x00  \b, [ROM ONLY]
>0x147 byte 0x01  \b, [ROM+MBC1]
>0x147 byte 0x02  \b, [ROM+MBC1+RAM]
>0x147 byte 0x03  \b, [ROM+MBC1+RAM+BATT]
>0x147 byte 0x05  \b, [ROM+MBC2]
>0x147 byte 0x06  \b, [ROM+MBC2+BATTERY]
>0x147 byte 0x08  \b, [ROM+RAM]
>0x147 byte 0x09  \b, [ROM+RAM+BATTERY]
>0x147 byte 0x0B  \b, [ROM+MMM01]
>0x147 byte 0x0C  \b, [ROM+MMM01+SRAM]
>0x147 byte 0x0D  \b, [ROM+MMM01+SRAM+BATT]
>0x147 byte 0x0F  \b, [ROM+MBC3+TIMER+BATT]
>0x147 byte 0x10  \b, [ROM+MBC3+TIMER+RAM+BATT]
>0x147 byte 0x11  \b, [ROM+MBC3]
>0x147 byte 0x12  \b, [ROM+MBC3+RAM]
>0x147 byte 0x13  \b, [ROM+MBC3+RAM+BATT]
>0x147 byte 0x19  \b, [ROM+MBC5]
>0x147 byte 0x1A  \b, [ROM+MBC5+RAM]
>0x147 byte 0x1B  \b, [ROM+MBC5+RAM+BATT]
>0x147 byte 0x1C  \b, [ROM+MBC5+RUMBLE]
>0x147 byte 0x1D  \b, [ROM+MBC5+RUMBLE+SRAM]
>0x147 byte 0x1E  \b, [ROM+MBC5+RUMBLE+SRAM+BATT]
>0x147 byte 0x1F  \b, [Pocket Camera]
>0x147 byte 0xFD  \b, [Bandai TAMA5]
>0x147 byte 0xFE  \b, [Hudson HuC-3]
>0x147 byte 0xFF  \b, [Hudson HuC-1]

>0x148 byte 0     \b, ROM: 256Kbit
>0x148 byte 1     \b, ROM: 512Kbit
>0x148 byte 2     \b, ROM: 1Mbit
>0x148 byte 3     \b, ROM: 2Mbit
>0x148 byte 4     \b, ROM: 4Mbit
>0x148 byte 5     \b, ROM: 8Mbit
>0x148 byte 6     \b, ROM: 16Mbit
>0x148 byte 0x52  \b, ROM: 9Mbit
>0x148 byte 0x53  \b, ROM: 10Mbit
>0x148 byte 0x54  \b, ROM: 12Mbit

>0x149 byte 1     \b, RAM: 16Kbit
>0x149 byte 2     \b, RAM: 64Kbit
>0x149 byte 3     \b, RAM: 128Kbit
>0x149 byte 4     \b, RAM: 1Mbit

#>0x14e long  x     \b, CRC: %x

#------------------------------------------------------------------------------
# genesis:  file(1) magic for the Sega MegaDrive/Genesis raw ROM format
#
0x100 string SEGA  Sega MegaDrive/Genesis raw ROM dump
>0x120 string >\0 Name: "%.16s"
>0x110 string >\0 %.16s
>0x1B0 string RA with SRAM

#------------------------------------------------------------------------------
# genesis:  file(1) magic for the Super MegaDrive ROM dump format
#
0x280 string EAGN  Super MagicDrive ROM dump
>0 byte x %dx16k blocks
>2 byte 0 \b, last in series or standalone
>2 byte >0 \b, split ROM
>8 byte 0xAA
>9 byte 0xBB

#------------------------------------------------------------------------------
# genesis:  file(1) alternate magic for the Super MegaDrive ROM dump format
#
0x280 string EAMG  Super MagicDrive ROM dump
>0 byte x %dx16k blocks
>2 byte x \b, last in series or standalone
>8 byte 0xAA
>9 byte 0xBB

#------------------------------------------------------------------------------
# smsgg:  file(1) magic for Sega Master System and Game Gear ROM dumps
#
# Does not detect all images.  Very preliminary guesswork.  Need more data
# on format.
#
# FIXME: need a little more info...;P
#
#0 byte 0xF3
#>1 byte 0xED  Sega Master System/Game Gear ROM dump
#>1 byte 0x31  Sega Master System/Game Gear ROM dump
#>1 byte 0xDB  Sega Master System/Game Gear ROM dump
#>1 byte 0xAF  Sega Master System/Game Gear ROM dump
#>1 byte 0xC3  Sega Master System/Game Gear ROM dump

#------------------------------------------------------------------------------
# dreamcast:  file(1) uncertain magic for the Sega Dreamcast VMU image format
#
0 belong 0x21068028   Sega Dreamcast VMU game image
0 string LCDi         Dream Animator file

#------------------------------------------------------------------------------
# v64: file(1) uncertain magic for the V64 format N64 ROM dumps
#
0 belong 0x37804012    V64 Nintendo 64 ROM dump

#------------------------------------------------------------------------------
# msx: file(1) magic for MSX game cartridge dumps
# Too simple - MPi
#0 beshort 0x4142 MSX game cartridge dump 

#------------------------------------------------------------------------------
# Sony Playstation executables (Adam Sjoegren <asjo@@diku.dk>) :
0	string	PS-X\ EXE	Sony Playstation executable
#  Area:
>113	string	x		(%s)

#------------------------------------------------------------------------------
# Microsoft Xbox executables .xbe (Esa Hyytiä <ehyytia@@cc.hut.fi>)
0       string          XBEH            XBE, Microsoft Xbox executable
# probabilistic checks whether signed or not
>0x0004 ulelong =0x0
>>&2    ulelong =0x0
>>>&2   ulelong =0x0  \b, not signed
>0x0004 ulelong >0
>>&2    ulelong >0
>>>&2   ulelong >0    \b, signed
# expect base address of 0x10000
>0x0104               ulelong =0x10000
>>(0x0118-0x0FF60)    ulelong&0x80000007  0x80000007 \b, all regions
>>(0x0118-0x0FF60)    ulelong&0x80000007  !0x80000007
>>>(0x0118-0x0FF60)   ulelong >0           (regions:
>>>>(0x0118-0x0FF60)  ulelong &0x00000001  NA
>>>>(0x0118-0x0FF60)  ulelong &0x00000002  Japan
>>>>(0x0118-0x0FF60)  ulelong &0x00000004  Rest_of_World
>>>>(0x0118-0x0FF60)  ulelong &0x80000000  Manufacturer
>>>(0x0118-0x0FF60)   ulelong >0           \b)

# --------------------------------
# Microsoft Xbox data file formats
0       string          XIP0            XIP, Microsoft Xbox data
0       string          XTF0            XTF, Microsoft Xbox data

# Atari Lynx cartridge dump (EXE/BLL header)
# From: "Stefan A. Haubenthal" <polluks@@web.de>

0	beshort		0x8008		Lynx cartridge,
>2	beshort		x		RAM start $%04x
>6	string		BS93

# Opera file system that is used on the 3DO console
# From: Serge van den Boom <svdb@@stack.nl>
0	string		\x01ZZZZZ\x01	3DO "Opera" file system

# From Gürkan Sengün <gurkan@@linuks.mine.nu>, www.linuks.mine.nu
0	string		GBS		Nintendo Gameboy Music/Audio Data
12	string		GameBoy\ Music\ Module	Nintendo Gameboy Music Module
@


1.5
log
@Update to virgin file-4.16.
@
text
@d168 3
@


1.4
log
@Update to virgin file-4.14.
@
text
@d164 3
a166 2


@


1.3
log
@Upgrade to file-4.12.
@
text
@a163 14
#------------------------------------------------------------------------------
# Z-machine:  file(1) magic for Z-machine binaries.
#
# This will match ${TEX_BASE}/texmf/omega/ocp/char2uni/inbig5.ocp which
# appears to be a version-0 Z-machine binary.
#
# The (false match) message is to correct that behavior.  Perhaps it is
# not needed.
#
>16	belong&0xfe00f0f0	0x3030	Infocom game data
>0	ubyte			0	(false match)
>0	ubyte			>0	(Z-machine %d,
>>2	ubeshort		x	Release %d /
>>18	string			>\0	Serial %.6s)
a164 6
#------------------------------------------------------------------------------
# Glulx:  file(1) magic for Glulx binaries.
#
# I haven't checked for false matches yet.
#
0	string			Glul	Glulx game data
a165 11


# These go at the end of the iff rules
#
# I don't see why these might collide with anything else.
#
# Interactive Fiction related formats
#
>8	string		IFRS		\b, Blorb Interactive Fiction
>>24	string		Exec		with executable chunk
>8	string          IFZS		\b, Z-machine or Glulx saved game file (Quetzal)
@


1.2
log
@Upgrade to file-4.09.
@
text
@d156 42
@


1.2.2.1
log
@Upgrade to file-4.12 (with RH patches).
@
text
@a155 42

# Atari Lynx cartridge dump (EXE/BLL header)
# From: "Stefan A. Haubenthal" <polluks@@web.de>

0	beshort		0x8008		Lynx cartridge,
>2	beshort		x		RAM start $%04x
>6	string		BS93

#------------------------------------------------------------------------------
# Z-machine:  file(1) magic for Z-machine binaries.
#
# This will match ${TEX_BASE}/texmf/omega/ocp/char2uni/inbig5.ocp which
# appears to be a version-0 Z-machine binary.
#
# The (false match) message is to correct that behavior.  Perhaps it is
# not needed.
#
>16	belong&0xfe00f0f0	0x3030	Infocom game data
>0	ubyte			0	(false match)
>0	ubyte			>0	(Z-machine %d,
>>2	ubeshort		x	Release %d /
>>18	string			>\0	Serial %.6s)

#------------------------------------------------------------------------------
# Glulx:  file(1) magic for Glulx binaries.
#
# I haven't checked for false matches yet.
#
0	string			Glul	Glulx game data



# These go at the end of the iff rules
#
# I don't see why these might collide with anything else.
#
# Interactive Fiction related formats
#
>8	string		IFRS		\b, Blorb Interactive Fiction
>>24	string		Exec		with executable chunk
>8	string          IFZS		\b, Z-machine or Glulx saved game file (Quetzal)

@


1.2.2.2
log
@- upgrade to file-4.14 internal.
@
text
@d164 14
d179 6
d186 11
@


1.2.2.3
log
@- update to file-4.16 internal.
@
text
@d164 2
a165 3
# Opera file system that is used on the 3DO console
# From: Serge van den Boom <svdb@@stack.nl>
0	string		\x01ZZZZZ\x01	3DO "Opera" file system
@


1.2.2.4
log
@Upgrade to file-4.20 internal.
@
text
@a167 3
# From Gürkan Sengün <gurkan@@linuks.mine.nu>, www.linuks.mine.nu
0	string		GBS		Nintendo Gameboy Music/Audio Data
12	string		GameBoy\ Music\ Module	Nintendo Gameboy Music Module
@


1.1
log
@Move magic creation to sub-directory.
@
text
@d122 34
a155 1
0 beshort 0x4142 MSX game cartridge dump 
@


1.1.4.1
log
@- port to internal file-4.10 libmagic rather than libfmagic.
@
text
@d122 1
a122 34
# Too simple - MPi
#0 beshort 0x4142 MSX game cartridge dump 

#------------------------------------------------------------------------------
# Sony Playstation executables (Adam Sjoegren <asjo@@diku.dk>) :
0	string	PS-X\ EXE	Sony Playstation executable
#  Area:
>113	string	x		(%s)

#------------------------------------------------------------------------------
# Microsoft Xbox executables .xbe (Esa Hyytiä <ehyytia@@cc.hut.fi>)
0       string          XBEH            XBE, Microsoft Xbox executable
# probabilistic checks whether signed or not
>0x0004 ulelong =0x0
>>&2    ulelong =0x0
>>>&2   ulelong =0x0  \b, not signed
>0x0004 ulelong >0
>>&2    ulelong >0
>>>&2   ulelong >0    \b, signed
# expect base address of 0x10000
>0x0104               ulelong =0x10000
>>(0x0118-0x0FF60)    ulelong&0x80000007  0x80000007 \b, all regions
>>(0x0118-0x0FF60)    ulelong&0x80000007  !0x80000007
>>>(0x0118-0x0FF60)   ulelong >0           (regions:
>>>>(0x0118-0x0FF60)  ulelong &0x00000001  NA
>>>>(0x0118-0x0FF60)  ulelong &0x00000002  Japan
>>>>(0x0118-0x0FF60)  ulelong &0x00000004  Rest_of_World
>>>>(0x0118-0x0FF60)  ulelong &0x80000000  Manufacturer
>>>(0x0118-0x0FF60)   ulelong >0           \b)

# --------------------------------
# Microsoft Xbox data file formats
0       string          XIP0            XIP, Microsoft Xbox data
0       string          XTF0            XTF, Microsoft Xbox data
@


1.1.2.1
log
@Merge from top-of-stack.
@
text
@@

