src/mess/drivers/mbee.c
| r9321 | r9322 | |
| 160 | 160 | AM_RANGE(0xf800, 0xffff) AM_READWRITE(mbeeic_high_r, mbeeic_high_w) |
| 161 | 161 | ADDRESS_MAP_END |
| 162 | 162 | |
| 163 | static 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) |
| 169 | ADDRESS_MAP_END |
| 163 | 170 | |
| 171 | |
| 164 | 172 | static ADDRESS_MAP_START(mbee_io, ADDRESS_SPACE_IO, 8) |
| 165 | 173 | ADDRESS_MAP_GLOBAL_MASK(0xff) |
| 166 | 174 | ADDRESS_MAP_UNMAP_HIGH |
| r9321 | r9322 | |
| 259 | 267 | AM_RANGE(0x50, 0x50) AM_WRITE(mbee64_50_w) |
| 260 | 268 | ADDRESS_MAP_END |
| 261 | 269 | |
| 270 | static 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) |
| 285 | ADDRESS_MAP_END |
| 286 | |
| 262 | 287 | static INPUT_PORTS_START( mbee ) |
| 263 | 288 | PORT_START("LINE0") /* IN0 KEY ROW 0 [000] */ |
| 264 | 289 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_NAME("@") PORT_CODE(KEYCODE_ASTERISK) PORT_CHAR('@') PORT_CHAR('`') |
| r9321 | r9322 | |
| 552 | 577 | MDRV_FLOPPY_2_DRIVES_ADD(mbee_floppy_config) |
| 553 | 578 | MACHINE_CONFIG_END |
| 554 | 579 | |
| 580 | static 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) |
| 587 | MACHINE_CONFIG_END |
| 588 | |
| 555 | 589 | /* Unused roms: |
| 556 | 590 | ROM_LOAD_OPTIONAL("net.rom", 0xe000, 0x1000, CRC(e14aac4c) SHA1(330902cf47f53c22c85003a620f7d7d3261ebb67) ) |
| 557 | 591 | customised for a certain high school. Requires pulsing at bit 3 port 0 before it runs. |
| r9321 | r9322 | |
| 815 | 849 | ROM_END |
| 816 | 850 | |
| 817 | 851 | ROM_START( mbee256 ) |
| 818 | | ROM_REGION(0x20000,"maincpu", ROMREGION_ERASEFF) |
| 852 | ROM_REGION(0x28000,"maincpu", ROMREGION_ERASEFF) |
| 819 | 853 | |
| 820 | 854 | 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) ) |
| 822 | 856 | |
| 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 ) |
| 826 | 861 | |
| 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 | | |
| 831 | 862 | ROM_REGION( 0x0800, "videoram", ROMREGION_ERASE00 ) |
| 832 | 863 | ROM_REGION( 0x0800, "colorram", ROMREGION_ERASE00 ) |
| 864 | ROM_REGION( 0x0800, "attrib", ROMREGION_ERASE00 ) |
| 833 | 865 | ROM_END |
| 834 | 866 | |
| 835 | 867 | /*************************************************************************** |
| r9321 | r9322 | |
| 849 | 881 | COMP( 1986, mbee56, mbee, 0, mbee56, mbee, mbee56, "Applied Technology", "Microbee 56k" , GAME_NOT_WORKING ) |
| 850 | 882 | COMP( 1986, mbee64, mbee, 0, mbee64, mbee, mbee64, "Applied Technology", "Microbee 64k" , GAME_NOT_WORKING ) |
| 851 | 883 | COMP( 1986, mbee128, mbee, 0, mbee64, mbee, mbee64, "Applied Technology", "Microbee 128k" , GAME_NOT_WORKING ) |
| 852 | | COMP( 1986, mbee256, mbee, 0, mbee64, mbee, mbee64, "Applied Technology", "Microbee 256TC" , GAME_NOT_WORKING ) |
| 884 | COMP( 1986, mbee256, mbee, 0, mbee256, mbee, mbee64, "Applied Technology", "Microbee 256TC" , GAME_NOT_WORKING ) |
| 853 | 885 | |