tunaでスターソルジャーを吸い出す

 スターソルジャーはna6koさんによると2本ともダイオードが右向きなのでバンク切り替えのデータをwriteするとき、D4とD5は両方ともLowでなければならない。D0とD1は切り替えたいバンクとして、他のビットD2、D3、D6、D7は何でも良いことになる。74161でラッチするときにデータが衝突しないようにwriteするのに都合の良いデータをROMから探します。

/* スターソルジャー */
board <- {
	mappernum = 3,
	cpu_rom = {
		size_base = 0x8000, size_max = 0x8000
		banksize = 0x8000
	},
	ppu_rom= {
		size_base = 0x8000, size_max = 0x8000,
		banksize = 0x2000
	},
	ppu_ramfind = false, vram_mirrorfind = true
};
function cpu_dump(d, pagesize, banksize)
{
	cpu_read(d, 0x8000, 0x4000);
	cpu_read(d, 0xc000, 0x4000);
}
function ppu_dump(d, pagesize, banksize)
{
	cpu_write(d, 0x8011, 0x00);
	ppu_read(d, 0, 0x2000);
	cpu_write(d, 0x8144, 0x01);
	ppu_read(d, 0, 0x2000);
	cpu_write(d, 0x8250, 0x02);
	ppu_read(d, 0, 0x2000);
	cpu_write(d, 0x8100, 0x03);
	ppu_read(d, 0, 0x2000);
}