Previous 15994 Revisions Next

r9322 Tuesday 5th October, 2010 at 09:57:08 UTC by Robbbert
[MBEE] mbee256 - added the proper roms, it gets to the menu.
[src/mess/drivers]mbee.c
[src/mess/includes]mbee.h
[src/mess/machine]mbee.c
[src/mess/video]mbee.c

src/mess/machine/mbee.c
r9321r9322
218218   mbee_rtc = machine->device<mc146818_device>("rtc");
219219}
220220
221MACHINE_RESET( mbee256 )
222{
223   timer_set(machine, ATTOTIME_IN_USEC(4), NULL, 0, mbee_reset);
224   memory_set_bank(machine, "boot", 1);
225   memory_set_bank(machine, "bankl", 1);
226   memory_set_bank(machine, "bankh", 1);
227   mbee_z80pio = machine->device("z80pio");
228   mbee_speaker = machine->device("speaker");
229   mbee_cassette = machine->device("cassette");
230   mbee_printer = machine->device("centronics");
231   mbee_fdc = machine->device("wd179x");
232   mbee_rtc = machine->device<mc146818_device>("rtc");
233}
234
221235INTERRUPT_GEN( mbee_interrupt )
222236{
223237// Due to the uncertainly and hackage here, this is commented out for now - Robbbert - 05-Oct-2010
src/mess/video/mbee.c
r9321r9322
196196   }
197197}
198198
199WRITE8_HANDLER( mbee256_1c_w )
200{
201/*  d7 extended graphics (1=allow attributes and pcg banks)
202    d5 bankswitch basic rom
203    d4 select attribute ram
204    d3..d0 select videoram bank */
199205
206   mbee_1c = data;
207}
208
209WRITE8_HANDLER( mbee256_50_w )
210{
211/* incomplete */
212   memory_set_bank(space->machine, "bankl", (data & 4) ? 0 : 1);
213   memory_set_bank(space->machine, "bankh", (data & 4) ? 0 : 1);
214}
215
216
200217READ8_HANDLER( mbeeppc_low_r )
201218{
202219   if (mbee_1c & 16)
src/mess/includes/mbee.h
r9321r9322
4444DRIVER_INIT( mbee64 );
4545MACHINE_RESET( mbee );
4646MACHINE_RESET( mbee64 );
47MACHINE_RESET( mbee256 );
4748WRITE8_HANDLER( mbee_04_w );
4849WRITE8_HANDLER( mbee_06_w );
4950READ8_HANDLER( mbee_07_r );
r9321r9322
7879READ8_HANDLER( mbeepc_telcom_high_r );
7980READ8_HANDLER( mbeeppc_1c_r );
8081WRITE8_HANDLER( mbeeppc_1c_w );
82WRITE8_HANDLER( mbee256_1c_w );
8183READ8_HANDLER( mbeeppc_low_r );
8284READ8_HANDLER( mbeeppc_high_r );
8385WRITE8_HANDLER( mbeeppc_high_w );
8486WRITE8_HANDLER( mbeeppc_low_w );
8587WRITE8_HANDLER( mbee64_50_w );
88WRITE8_HANDLER( mbee256_50_w );
8689
8790
8891VIDEO_START( mbee );
src/mess/drivers/mbee.c
r9321r9322
160160   AM_RANGE(0xf800, 0xffff) AM_READWRITE(mbeeic_high_r, mbeeic_high_w)
161161ADDRESS_MAP_END
162162
163static ADDRESS_MAP_START(mbee256_mem, ADDRESS_SPACE_PROGRAM, 8)
164   AM_RANGE(0x0000, 0x0fff) AM_RAMBANK("boot")
165   AM_RANGE(0x1000, 0x7fff) AM_RAMBANK("bankl")
166   AM_RANGE(0x8000, 0xefff) AM_RAMBANK("bankh")
167   AM_RANGE(0xf000, 0xf7ff) AM_READWRITE(mbeeppc_low_r, mbeeppc_low_w)
168   AM_RANGE(0xf800, 0xffff) AM_READWRITE(mbeeppc_high_r, mbeeppc_high_w)
169ADDRESS_MAP_END
163170
171
164172static ADDRESS_MAP_START(mbee_io, ADDRESS_SPACE_IO, 8)
165173   ADDRESS_MAP_GLOBAL_MASK(0xff)
166174   ADDRESS_MAP_UNMAP_HIGH
r9321r9322
259267   AM_RANGE(0x50, 0x50) AM_WRITE(mbee64_50_w)
260268ADDRESS_MAP_END
261269
270static ADDRESS_MAP_START(mbee256_io, ADDRESS_SPACE_IO, 8)
271   ADDRESS_MAP_GLOBAL_MASK(0xff)
272   ADDRESS_MAP_UNMAP_HIGH
273   AM_RANGE(0x00, 0x03) AM_MIRROR(0x10) AM_DEVREADWRITE("z80pio", z80pio_ba_cd_r, z80pio_ba_cd_w)
274   AM_RANGE(0x04, 0x04) AM_MIRROR(0x10) AM_WRITE(mbee_04_w)
275   AM_RANGE(0x06, 0x06) AM_MIRROR(0x10) AM_WRITE(mbee_06_w)
276   AM_RANGE(0x07, 0x07) AM_MIRROR(0x10) AM_READ(mbee_07_r)
277   AM_RANGE(0x08, 0x08) AM_MIRROR(0x10) AM_READWRITE(mbeeic_08_r, mbeeic_08_w)
278   AM_RANGE(0x0b, 0x0b) AM_MIRROR(0x10) AM_READWRITE(mbee_0b_r, mbee_0b_w)
279   AM_RANGE(0x0c, 0x0c) AM_READWRITE(m6545_status_r, m6545_index_w)
280   AM_RANGE(0x0d, 0x0d) AM_MIRROR(0x10) AM_READWRITE(m6545_data_r, m6545_data_w)
281   AM_RANGE(0x1c, 0x1c) AM_READWRITE(mbeeppc_1c_r,mbee256_1c_w)
282   AM_RANGE(0x44, 0x47) AM_DEVREADWRITE("wd179x", wd17xx_r, wd17xx_w)
283   AM_RANGE(0x48, 0x48) AM_READWRITE(mbee_fdc_status_r, mbee_fdc_motor_w)
284   AM_RANGE(0x50, 0x50) AM_WRITE(mbee256_50_w)
285ADDRESS_MAP_END
286
262287static INPUT_PORTS_START( mbee )
263288   PORT_START("LINE0") /* IN0 KEY ROW 0 [000] */
264289   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("@") PORT_CODE(KEYCODE_ASTERISK) PORT_CHAR('@') PORT_CHAR('`')
r9321r9322
552577   MDRV_FLOPPY_2_DRIVES_ADD(mbee_floppy_config)
553578MACHINE_CONFIG_END
554579
580static MACHINE_CONFIG_DERIVED( mbee256, mbeeppc )
581   MDRV_CPU_MODIFY( "maincpu" )
582   MDRV_CPU_PROGRAM_MAP(mbee256_mem)
583   MDRV_CPU_IO_MAP(mbee256_io)
584   MDRV_MACHINE_RESET( mbee256 )
585   MDRV_WD179X_ADD("wd179x", mbee_wd17xx_interface )
586   MDRV_FLOPPY_2_DRIVES_ADD(mbee_floppy_config)
587MACHINE_CONFIG_END
588
555589/* Unused roms:
556590    ROM_LOAD_OPTIONAL("net.rom", 0xe000,  0x1000, CRC(e14aac4c) SHA1(330902cf47f53c22c85003a620f7d7d3261ebb67) )
557591    customised for a certain high school. Requires pulsing at bit 3 port 0 before it runs.
r9321r9322
815849ROM_END
816850
817851ROM_START( mbee256 )
818   ROM_REGION(0x20000,"maincpu", ROMREGION_ERASEFF)
852   ROM_REGION(0x28000,"maincpu", ROMREGION_ERASEFF)
819853
820854   ROM_REGION(0x7000,"bootrom", ROMREGION_ERASEFF)
821   ROM_LOAD("rom1.bin",              0x0000,  0x2000, CRC(995c53db) SHA1(46e1a5cfd5795b8cf528bacf9dc79398ff7d64af) )
855   ROM_LOAD("mbee256.bin",           0x0000,  0x4000, CRC(fe8d6a84) SHA1(a037a1b90b18a2180e9f5f216b829fcd480449a4) )
822856
823   ROM_REGION(0x2000, "gfx", 0)
824   ROM_LOAD("charrom.bin",           0x1000,  0x1000, CRC(1f9fcee4) SHA1(e57ac94e03638075dde68a0a8c834a4f84ba47b0) )
825   ROM_RELOAD( 0x0000, 0x1000 )
857   ROM_REGION(0x9800, "gfx", 0)
858   ROM_LOAD("char256.bin",           0x1000,  0x1000, CRC(9372af3c) SHA1(a63591822c0504de2fed52e88d64e1dbd6124b74) )
859   ROM_IGNORE( 0x1000 )   // throw away swedish characters for now
860   ROM_COPY( "gfx", 0x1000, 0x0000, 0x1000 )
826861
827   ROM_REGION( 0x0040, "proms", 0 )
828   ROM_LOAD( "82s123.ic7",           0x0000,  0x0020, CRC(61b9c16c) SHA1(0ee72377831c21339360c376f7248861d476dc20) )
829   ROM_LOAD_OPTIONAL( "82s123.ic16", 0x0020,  0x0020, CRC(4e779985) SHA1(cd2579cf65032c30b3fe7d6d07b89d4633687481) )   /* video switching prom, not needed for emulation purposes */
830
831862   ROM_REGION( 0x0800, "videoram", ROMREGION_ERASE00 )
832863   ROM_REGION( 0x0800, "colorram", ROMREGION_ERASE00 )
864   ROM_REGION( 0x0800, "attrib", ROMREGION_ERASE00 )
833865ROM_END
834866
835867/***************************************************************************
r9321r9322
849881COMP( 1986, mbee56,   mbee,   0,   mbee56,   mbee,     mbee56,       "Applied Technology",  "Microbee 56k" , GAME_NOT_WORKING )
850882COMP( 1986, mbee64,   mbee,   0,   mbee64,   mbee,     mbee64,       "Applied Technology",  "Microbee 64k" , GAME_NOT_WORKING )
851883COMP( 1986, mbee128,  mbee,   0,   mbee64,   mbee,     mbee64,       "Applied Technology",  "Microbee 128k" , GAME_NOT_WORKING )
852COMP( 1986, mbee256,  mbee,   0,   mbee64,   mbee,     mbee64,       "Applied Technology",  "Microbee 256TC" , GAME_NOT_WORKING )
884COMP( 1986, mbee256,  mbee,   0,   mbee256,  mbee,     mbee64,       "Applied Technology",  "Microbee 256TC" , GAME_NOT_WORKING )
853885

Previous 15994 Revisions Next


© 1998-2018 The MESS Team