Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff -up mess-0.143/src/mess/drivers/apple1.c.apple1-mc6800 mess-0.143/src/mess/drivers/apple1.c
- --- mess-0.143/src/mess/drivers/apple1.c.apple1-mc6800 2011-07-18 01:50:07.000000000 -0600
- +++ mess-0.143/src/mess/drivers/apple1.c 2011-07-18 01:58:58.000000000 -0600
- @@ -69,6 +69,7 @@ $F000-$FFFF: ROM address space
- #include "emu.h"
- #include "cpu/m6502/m6502.h"
- +#include "cpu/m6800/m6800.h"
- #include "machine/6821pia.h"
- #include "includes/apple1.h"
- #include "imagedev/snapquik.h"
- @@ -268,6 +269,59 @@ static MACHINE_CONFIG_START( apple1, app
- MACHINE_CONFIG_END
- +static MACHINE_CONFIG_START( apple1_mc6800, apple1_state )
- + /* basic machine hardware */
- + /* Actual CPU speed is 1.023 MHz, but RAM refresh effectively
- + slows it to 960 kHz. */
- + MCFG_CPU_ADD("maincpu", M6800, 960000) /* 1.023 MHz */
- + MCFG_CPU_PROGRAM_MAP(apple1_map)
- +
- + MCFG_MACHINE_RESET( apple1 )
- + MCFG_QUANTUM_TIME(attotime::from_hz(60))
- +
- + MCFG_SCREEN_ADD("screen", RASTER)
- + MCFG_SCREEN_REFRESH_RATE(60)
- + /* Video is blanked for 70 out of 262 scanlines per refresh cycle.
- + Each scanline is composed of 65 character times, 40 of which
- + are visible, and each character time is 7 dot times; a dot time
- + is 2 cycles of the fundamental 14.31818 MHz oscillator. The
- + total blanking time is about 4450 microseconds. */
- + MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC((int) (70 * 65 * 7 * 2 / 14.31818)))
- + MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
- + /* It would be nice if we could implement some sort of display
- + overscan here. */
- + MCFG_SCREEN_SIZE(40 * 7, 24 * 8)
- + MCFG_SCREEN_VISIBLE_AREA(0, 40 * 7 - 1, 0, 24 * 8 - 1)
- + MCFG_SCREEN_UPDATE(apple1)
- +
- +
- + MCFG_GFXDECODE(apple1)
- + MCFG_PALETTE_LENGTH(2)
- + MCFG_PALETTE_INIT(black_and_white)
- +
- + MCFG_VIDEO_START(apple1)
- +
- + MCFG_PIA6821_ADD( "pia", apple1_pia0 )
- +
- + /* snapshot */
- + MCFG_SNAPSHOT_ADD("snapshot", apple1, "snp", 0)
- +
- + MCFG_CASSETTE_ADD( CASSETTE_TAG, apple1_cassette_interface )
- +
- + /* Note that because we always include 4K of RAM at $E000-$EFFF,
- + the RAM amounts listed here will be 4K below the actual RAM
- + total. */
- + /* internal ram */
- + MCFG_RAM_ADD(RAM_TAG)
- + MCFG_RAM_DEFAULT_SIZE("48K")
- + MCFG_RAM_EXTRA_OPTIONS("4K,8K,12K,16K,20K,24K,28K,32K,36K,40K,44K")
- +
- +MACHINE_CONFIG_END
- +
- +//static MACHINE_CONFIG_DERIVED( apple1_mc6800, apple1 )
- +// MCFG_CPU_REPLACE("maincpu", M6800, 960000)
- +//MACHINE_CONFIG_END
- +
- ROM_START(apple1)
- ROM_REGION(0x10000, "maincpu",0)
- /* 256-byte main monitor ROM, in two 82s129 or mmi6301 256x4 proms at A1 and A2 called APPLE-A1(bits D3-D0) and APPLE-A2(bits D7-D4) */
- @@ -281,6 +335,17 @@ ROM_START(apple1)
- ROM_LOAD("s2513.d2", 0x0000, 0x0200, CRC(a7e567fc) SHA1(b18aae0a2d4f92f5a7e22640719bbc4652f3f4ee)) // apple1.vid
- ROM_END
- +ROM_START(apple1_mc6800)
- + ROM_REGION(0x10000, "maincpu",0)
- + /* 256-byte main monitor ROM, in two 82s129 or mmi6301 256x4 proms at A1 and A2 called APPLE-A1(bits D3-D0) and APPLE-A2(bits D7-D4) */
- + ROM_LOAD_NIB_HIGH( "a1m68hi.a2", 0xff00, 0x0100, CRC(30554641) SHA1(d75b053ed9cc7f7081654cd65b2ca588509c1e80))
- + ROM_LOAD_NIB_LOW( "a1m68lo.a1", 0xff00, 0x0100, CRC(f90aaa96) SHA1(80edc7508da317efe93375dd4416536b99378f2f))
- + // No MC6800 cassette ROM yet
- + /* 512-byte Signetics 2513 character generator ROM at location D2-D3 */
- + ROM_REGION(0x0200, "gfx1",0)
- + ROM_LOAD("s2513.d2", 0x0000, 0x0200, CRC(a7e567fc) SHA1(b18aae0a2d4f92f5a7e22640719bbc4652f3f4ee)) // apple1.vid
- +ROM_END
- -/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */
- -COMP( 1976, apple1, 0, 0, apple1, apple1, apple1, "Apple Computer", "Apple I" , GAME_NO_SOUND )
- +/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS */
- +COMP( 1976, apple1, 0, 0, apple1, apple1, apple1, "Apple Computer", "Apple I", GAME_NO_SOUND )
- +COMP( 1976, apple1_mc6800, apple1, 0, apple1_mc6800, apple1, apple1, "Apple Computer", "Apple I w/ MC6800 CPU", GAME_NO_SOUND )
- diff -up mess-0.143/src/mess/machine/apple1.c.apple1-mc6800 mess-0.143/src/mess/machine/apple1.c
- --- mess-0.143/src/mess/machine/apple1.c.apple1-mc6800 2011-07-18 01:50:09.000000000 -0600
- +++ mess-0.143/src/mess/machine/apple1.c 2011-07-18 01:50:14.000000000 -0600
- @@ -47,7 +47,6 @@
- #include "emu.h"
- #include "includes/apple1.h"
- #include "machine/6821pia.h"
- -#include "cpu/m6502/m6502.h"
- #include "image.h"
- #include "imagedev/cassette.h"
- #include "machine/ram.h"
- diff -up mess-0.143/src/mess/mess.lst.apple1-mc6800 mess-0.143/src/mess/mess.lst
- --- mess-0.143/src/mess/mess.lst.apple1-mc6800 2011-07-18 01:50:06.000000000 -0600
- +++ mess-0.143/src/mess/mess.lst 2011-07-18 01:50:14.000000000 -0600
- @@ -367,6 +367,7 @@ nc200 // 1993 NC200
- // Apple
- apple1 // Jul 1976 Apple 1
- +apple1_mc6800 // Apple 1 with MC6800 CPU
- apple2 // Apr 1977 Apple ][
- apple2p // Jun 1979 Apple ][+
- prav82 // Pravetz 82
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement