{
	"type":"DMG",
	"names":[
		"GB-M968 with M29W160EB",
		"GB-M968 with 29LV160DB"
	],
	"flash_ids":[
		[ 0x20, 0x20, 0x49, 0x49 ],
		[ 0xC2, 0xC2, 0xC4, 0xC4 ]
	],
	"voltage":3.3,
	"flash_size":0x200000,
	"start_addr":0,
	"first_bank":1,
	"write_pin":"WR",
	"sector_size":[
		[0x4000, 1],
		[0x2000, 2],
		[0x8000, 1],
		[0x10000, 31]
	],
	"chip_erase_timeout":30,
	"command_set":"AMD",
	"commands":{
		"reset":[
			[ 0, 0xF0 ]
		],
		"read_cfi":[
			[ 0xAA, 0x98 ]
		],
		"read_identifier":[
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ 0xAAA, 0x90 ]
		],
		"chip_erase":[
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ 0xAAA, 0x80 ],
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ 0xAAA, 0x10 ]
		],
		"chip_erase_wait_for":[
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ 0, 0xFF, 0xFF ]
		],
		"sector_erase":[
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ 0xAAA, 0x80 ],
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ "SA", 0x30 ]
		],
		"sector_erase_wait_for":[
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ "SA", 0xFF, 0xFF ]
		],
		"single_write":[
			[ 0xAAA, 0xAA ],
			[ 0x555, 0x55 ],
			[ 0xAAA, 0xA0 ],
			[ "PA", "PD" ]
		],
		"single_write_wait_for":[
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ],
			[ null, null, null ]
		]
	}
}
