diff --git a/hash/apple2_flop_misc.xml b/hash/apple2_flop_misc.xml index f7a0b9fcf04..b030248391f 100644 --- a/hash/apple2_flop_misc.xml +++ b/hash/apple2_flop_misc.xml @@ -49,6 +49,25 @@ Generated by SLIST 0.2.1 + + Apple II Diagnostic Disk (version 3.1)(800K 3.5") + 1991 + Apple Computer + + + + + + + + + + AppleWorks (Version 1.2, USA) 1983 diff --git a/src/mame/apple/apple2gs.cpp b/src/mame/apple/apple2gs.cpp index f22e1552c14..e9f4b85c73b 100644 --- a/src/mame/apple/apple2gs.cpp +++ b/src/mame/apple/apple2gs.cpp @@ -1591,6 +1591,9 @@ u8 apple2gs_state::c000_r(offs_t offset) case 0x29: // NEWVIDEO return m_video->get_newvideo(); + case 0x2b: // LANGSEL + return m_video->get_GS_langsel(); + case 0x2d: // SLOTROMSEL return m_slotromsel; @@ -1946,6 +1949,10 @@ void apple2gs_state::c000_w(offs_t offset, u8 data) m_video->set_newvideo(data); break; + case 0x2b: // LANGSEL + m_video->set_GS_langsel(data); + break; + case 0x2d: // SLOTROMSEL m_slotromsel = data; break; @@ -3931,8 +3938,8 @@ ROM_START(apple2gs) ROM_REGION(0x1000, "adbmicro", 0) ROM_LOAD( "341s0632-2.bin", 0x000000, 0x001000, CRC(e1c11fb0) SHA1(141d18c36a617ab9dce668445440d34354be0672) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) /* need label/part number */ + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) // 341-0728 is the MASK rom version while 341-0737 is the EPROM version - SAME data. @@ -3946,8 +3953,8 @@ ROM_START(apple2gsr3p) ROM_REGION(0x1000, "adbmicro", 0) ROM_LOAD( "341s0632-2.bin", 0x000000, 0x001000, CRC(e1c11fb0) SHA1(141d18c36a617ab9dce668445440d34354be0672) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) /* need label/part number */ + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) ROM_LOAD("341-0728", 0x00000, 0x20000, CRC(8d410067) SHA1(c0f4704233ead14cb8e1e8a68fbd7063c56afd27) ) /* 341-0728: IIgs ROM03 prototype FC-FD - 28 pin MASK rom */ @@ -3958,8 +3965,8 @@ ROM_START(apple2gsr1) ROM_REGION(0xc00, "adbmicro", 0) ROM_LOAD( "341s0345.bin", 0x000000, 0x000c00, CRC(48cd5779) SHA1(97e421f5247c00a0ca34cd08b6209df573101480) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) /* need label/part number */ + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) ROM_LOAD("342-0077-b", 0x20000, 0x20000, CRC(42f124b0) SHA1(e4fc7560b69d062cb2da5b1ffbe11cd1ca03cc37)) /* 342-0077-B: IIgs ROM01 */ @@ -3969,8 +3976,8 @@ ROM_START(apple2gsr0) ROM_REGION(0xc00, "adbmicro", 0) ROM_LOAD( "341s0345.bin", 0x000000, 0x000c00, CRC(48cd5779) SHA1(97e421f5247c00a0ca34cd08b6209df573101480) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) ROM_LOAD("342-0077-a", 0x20000, 0x20000, CRC(dfbdd97b) SHA1(ff0c245dd0732ec4413a934fd80efc2defd8a8e3) ) /* 342-0077-A: IIgs ROM00 */ @@ -3980,8 +3987,8 @@ ROM_START(apple2gsr0p) // 6/19/1986 Cortland prototype ROM_REGION(0xc00, "adbmicro", 0) ROM_LOAD( "341s0345.bin", 0x000000, 0x000c00, CRC(48cd5779) SHA1(97e421f5247c00a0ca34cd08b6209df573101480) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) ROM_LOAD( "rombf.bin", 0x020000, 0x020000, CRC(ab04fedf) SHA1(977589a17553956d583a21020080a39dd396df5c) ) @@ -3991,8 +3998,8 @@ ROM_START(apple2gsr0p2) // 3/10/1986 Cortland prototype, boots as "Apple //'ing ROM_REGION(0xc00, "adbmicro", 0) ROM_LOAD( "341s0345.bin", 0x000000, 0x000c00, CRC(48cd5779) SHA1(97e421f5247c00a0ca34cd08b6209df573101480) ) - ROM_REGION(0x1000,"gfx1",0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) + ROM_REGION(0x4000,"gfx1",0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000,"maincpu",0) ROM_LOAD( "apple iigs alpha rom 2.0 19860310.bin", 0x020000, 0x020000, CRC(a47d275f) SHA1(c5836adcfc8be69c7351b84afa94c814e8d92b81) ) @@ -4003,8 +4010,8 @@ ROM_START(apple2gsmt) ROM_REGION(0x1000, "adbmicro", 0) ROM_LOAD( "341s0632-2.bin", 0x000000, 0x001000, CRC(e1c11fb0) SHA1(141d18c36a617ab9dce668445440d34354be0672) ) - ROM_REGION(0x1000, "gfx1", 0) - ROM_LOAD ( "apple2gs.chr", 0x0000, 0x1000, CRC(91e53cd8) SHA1(34e2443e2ef960a36c047a09ed5a93f471797f89)) + ROM_REGION(0x4000, "gfx1", 0) + ROM_LOAD ( "megaii.chr", 0x0000, 0x4000, BAD_DUMP CRC(ef0bfc11) SHA1(c068f3d02d442a8a38121d42318e9a962ee8913e)) /* need label/part number */ ROM_REGION(0x80000, "maincpu", 0) // The Mark Twain ROM is 512K, with address bit 16 inverted (same as ROM 3). diff --git a/src/mame/apple/apple2video.cpp b/src/mame/apple/apple2video.cpp index d6e5692ceef..c3a735b17ab 100644 --- a/src/mame/apple/apple2video.cpp +++ b/src/mame/apple/apple2video.cpp @@ -76,6 +76,7 @@ void a2_video_device::device_start() save_item(NAME(m_GSbg)); save_item(NAME(m_GSborder)); save_item(NAME(m_newvideo)); + save_item(NAME(m_GS_langsel)); save_item(NAME(m_monochrome)); save_item(NAME(m_rgbmode)); save_item(NAME(m_shr_palette)); @@ -387,10 +388,6 @@ unsigned a2_video_device::get_text_character(uint32_t code, int row) } } } - else if (Model == model::IIGS) - { - code |= 0x100; - } else { if ((code >= 0x60) && (code <= 0x7f)) @@ -403,6 +400,10 @@ unsigned a2_video_device::get_text_character(uint32_t code, int row) { code |= get_iie_langsw() * 0x100; } + else if (Model == model::IIGS) + { + code |= get_GS_language() * 0x100; + } } else // original II and II Plus { diff --git a/src/mame/apple/apple2video.h b/src/mame/apple/apple2video.h index 91aeeaf3978..02b12e51018 100644 --- a/src/mame/apple/apple2video.h +++ b/src/mame/apple/apple2video.h @@ -55,6 +55,11 @@ public: void set_GS_border(u8 border) { m_GSborder = border; } const u8 get_newvideo() { return m_newvideo; } void set_newvideo(u8 newvideo) { m_newvideo = newvideo; } + const u8 get_GS_langsel() { return m_GS_langsel; } + const u8 get_GS_language() { return (m_GS_langsel >> 5) & 0x07; } + const bool is_pal_video_mode() { return (m_GS_langsel >> 4) & 0x01; } + const bool get_language_switch(){ return (m_GS_langsel >> 3) & 0x01; } + void set_GS_langsel(u8 langsel) { m_GS_langsel = langsel; } void set_SHR_color(u8 color, u32 rgb) { m_shr_palette[color] = rgb; } void set_GS_border_color(u8 color, u32 rgb) { m_GSborder_colors[color] = rgb; } @@ -123,7 +128,7 @@ private: bool m_an2 = false; bool m_80store = false; bool m_monohgr = false; - u8 m_GSfg = 0, m_GSbg = 0, m_GSborder = 0, m_newvideo = 0, m_monochrome = 0, m_rgbmode = 0; + u8 m_GSfg = 0, m_GSbg = 0, m_GSborder = 0, m_newvideo = 0, m_GS_langsel = 0, m_monochrome = 0, m_rgbmode = 0; u8 m_iie_langsw = 0; // language switch/modification on IIe/IIc/IIc+ and clones optional_ioport m_vidconfig; };