src/mess/drivers/mac.c
| r9440 | r9441 | |
| 111 | 111 | // for portrait display, force monochrome by using the blue channel |
| 112 | 112 | if (mac->model != MODEL_MAC_CLASSIC_II) |
| 113 | 113 | { |
| 114 | | if (input_port_read(space->machine, "MONTYPE") == 1) |
| 114 | // Color Classic has no MONTYPE so the safe read gets us 512x384, which is right |
| 115 | if (input_port_read_safe(space->machine, "MONTYPE", 2) == 1) |
| 115 | 116 | { |
| 116 | 117 | palette_set_color(space->machine, mac->rbv_clutoffs, MAKE_RGB(mac->rbv_colors[2], mac->rbv_colors[2], mac->rbv_colors[2])); |
| 117 | 118 | mac->rbv_palette[mac->rbv_clutoffs] = MAKE_RGB(mac->rbv_colors[2], mac->rbv_colors[2], mac->rbv_colors[2]); |
| r9440 | r9441 | |
| 171 | 172 | if (!mac->rbv_immed10wr) |
| 172 | 173 | { |
| 173 | 174 | data &= ~0x38; |
| 174 | | data |= (input_port_read(space->machine, "MONTYPE")<<3); |
| 175 | data |= (input_port_read_safe(space->machine, "MONTYPE", 2)<<3); |
| 175 | 176 | } |
| 176 | 177 | else |
| 177 | 178 | { |
| r9440 | r9441 | |
| 192 | 193 | switch (offset) |
| 193 | 194 | { |
| 194 | 195 | case 13: // IFR |
| 196 | // printf("Read IER = %02x (PC=%x)\n", mac->rbv_ier, cpu_get_pc(space->cpu)); |
| 195 | 197 | return mac->rbv_ifr; |
| 196 | 198 | break; |
| 197 | 199 | |
| 198 | 200 | case 14: // IER |
| 201 | // printf("Read IFR = %02x (PC=%x)\n", mac->rbv_ifr, cpu_get_pc(space->cpu)); |
| 199 | 202 | return mac->rbv_ier; |
| 200 | 203 | break; |
| 201 | 204 | |
| r9440 | r9441 | |
| 216 | 219 | |
| 217 | 220 | if (offset < 0x100) |
| 218 | 221 | { |
| 219 | | // if (offset == 0x10) printf("rbv_w: %02x to offset %x (PC=%x)\n", data, offset, cpu_get_pc(space->cpu)); |
| 222 | // if (offset == 0x10) |
| 223 | // printf("rbv_w: %02x to offset %x (PC=%x)\n", data, offset, cpu_get_pc(space->cpu)); |
| 220 | 224 | switch (offset) |
| 221 | 225 | { |
| 222 | 226 | case 0x00: |
| r9440 | r9441 | |
| 401 | 405 | AM_RANGE(0x50f26000, 0x50f27fff) AM_READWRITE8(mac_rbv_r, mac_rbv_w, 0xffffffff) // VIA2 (V8) |
| 402 | 406 | AM_RANGE(0x50f40000, 0x50fbffff) AM_RAM AM_BASE_MEMBER(mac_state, rbv_vram) |
| 403 | 407 | ADDRESS_MAP_END |
| 408 | /* |
| 409 | static ADDRESS_MAP_START(macclrclassic_map, ADDRESS_SPACE_PROGRAM, 32) |
| 410 | AM_RANGE(0x00a00000, 0x00afffff) AM_ROM AM_REGION("bootrom", 0) |
| 411 | AM_RANGE(0x40a00000, 0x40afffff) AM_ROM AM_REGION("bootrom", 0) |
| 404 | 412 | |
| 413 | AM_RANGE(0xf00000, 0xf01fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) |
| 414 | AM_RANGE(0xf04000, 0xf05fff) AM_READWRITE16(mac_scc_r, mac_scc_2_w, 0xffffffff) |
| 415 | AM_RANGE(0xf06000, 0xf06003) AM_WRITE(macii_scsi_drq_w) AM_MIRROR(0x00f00000) |
| 416 | AM_RANGE(0xf10000, 0xf11fff) AM_READWRITE16(macplus_scsi_r, macii_scsi_w, 0xffffffff) AM_MIRROR(0x00f00000) |
| 417 | AM_RANGE(0xf12060, 0xf12063) AM_READ(macii_scsi_drq_r) AM_MIRROR(0x00f00000) |
| 418 | AM_RANGE(0xf14000, 0xf15fff) AM_READ8(mac_asc_r, 0xffffffff) AM_WRITE8(mac_asc_w, 0xffffffff) |
| 419 | AM_RANGE(0xf16000, 0xf17fff) AM_READWRITE16(mac_iwm_r, mac_iwm_w, 0xffffffff) AM_MIRROR(0x00f00000) |
| 420 | AM_RANGE(0xf24000, 0xf24003) AM_READWRITE(rbv_ramdac_r, rbv_ramdac_w) |
| 421 | AM_RANGE(0xf26000, 0xf27fff) AM_READWRITE8(mac_rbv_r, mac_rbv_w, 0xffffffff) // VIA2 (V8) |
| 422 | |
| 423 | AM_RANGE(0x50f00000, 0x50f01fff) AM_READWRITE16(mac_via_r, mac_via_w, 0xffffffff) |
| 424 | AM_RANGE(0x50f04000, 0x50f05fff) AM_READWRITE16(mac_scc_r, mac_scc_2_w, 0xffffffff) |
| 425 | AM_RANGE(0x50f06000, 0x50f06003) AM_WRITE(macii_scsi_drq_w) AM_MIRROR(0x00f00000) |
| 426 | AM_RANGE(0x50f10000, 0x50f11fff) AM_READWRITE16(macplus_scsi_r, macii_scsi_w, 0xffffffff) AM_MIRROR(0x00f00000) |
| 427 | AM_RANGE(0x50f12060, 0x50f12063) AM_READ(macii_scsi_drq_r) AM_MIRROR(0x00f00000) |
| 428 | AM_RANGE(0x50f14000, 0x50f15fff) AM_READ8(mac_asc_r, 0xffffffff) AM_WRITE8(mac_asc_w, 0xffffffff) |
| 429 | AM_RANGE(0x50f16000, 0x50f17fff) AM_READWRITE16(mac_iwm_r, mac_iwm_w, 0xffffffff) AM_MIRROR(0x00f00000) |
| 430 | AM_RANGE(0x50f24000, 0x50f24003) AM_READWRITE(rbv_ramdac_r,rbv_ramdac_w) |
| 431 | AM_RANGE(0x50f26000, 0x50f27fff) AM_READWRITE8(mac_rbv_r, mac_rbv_w, 0xffffffff) // VIA2 (V8) |
| 432 | AM_RANGE(0x50f40000, 0x50fbffff) AM_RAM AM_BASE_MEMBER(mac_state, rbv_vram) |
| 433 | ADDRESS_MAP_END |
| 434 | */ |
| 405 | 435 | static ADDRESS_MAP_START(maclc3_map, ADDRESS_SPACE_PROGRAM, 32) |
| 406 | 436 | AM_RANGE(0x40000000, 0x400fffff) AM_ROM AM_REGION("bootrom", 0) AM_MIRROR(0x0ff00000) |
| 407 | 437 | |
| r9440 | r9441 | |
| 738 | 768 | |
| 739 | 769 | MDRV_CPU_REPLACE("maincpu", M68020, 7833600*2) |
| 740 | 770 | MDRV_CPU_PROGRAM_MAP(maclc_map) |
| 771 | MDRV_CPU_VBLANK_INT("screen", mac_rbv_vbl) |
| 741 | 772 | |
| 742 | 773 | MDRV_PALETTE_LENGTH(256) |
| 743 | 774 | |
| r9440 | r9441 | |
| 757 | 788 | |
| 758 | 789 | MDRV_CPU_REPLACE("maincpu", M68030, 7833600*2) |
| 759 | 790 | MDRV_CPU_PROGRAM_MAP(maclc_map) |
| 791 | MDRV_CPU_VBLANK_INT("screen", mac_rbv_vbl) |
| 760 | 792 | |
| 761 | 793 | MDRV_RAM_MODIFY("messram") |
| 762 | 794 | MDRV_RAM_DEFAULT_SIZE("4M") |
| 763 | 795 | MDRV_RAM_EXTRA_OPTIONS("6M,8M,10M") |
| 764 | 796 | MACHINE_CONFIG_END |
| 797 | /* |
| 798 | static MACHINE_CONFIG_DERIVED( maccclas, maclc2 ) |
| 765 | 799 | |
| 800 | MDRV_CPU_REPLACE("maincpu", M68030, 7833600*2) |
| 801 | MDRV_CPU_PROGRAM_MAP(macclrclassic_map) |
| 802 | MDRV_CPU_VBLANK_INT("screen", mac_rbv_vbl) |
| 803 | |
| 804 | MDRV_RAM_MODIFY("messram") |
| 805 | MDRV_RAM_DEFAULT_SIZE("4M") |
| 806 | MDRV_RAM_EXTRA_OPTIONS("6M,8M,10M") |
| 807 | MACHINE_CONFIG_END |
| 808 | */ |
| 766 | 809 | static MACHINE_CONFIG_DERIVED( maclc3, maclc ) |
| 767 | 810 | |
| 768 | 811 | MDRV_CPU_REPLACE("maincpu", M68030, 25000000) |
| 769 | 812 | MDRV_CPU_PROGRAM_MAP(maclc3_map) |
| 813 | MDRV_CPU_VBLANK_INT("screen", mac_rbv_vbl) |
| 770 | 814 | |
| 771 | 815 | MDRV_VIDEO_START(macsonora) |
| 772 | 816 | MDRV_VIDEO_UPDATE(macrbvvram) |
| r9440 | r9441 | |
| 889 | 933 | |
| 890 | 934 | MDRV_CPU_REPLACE("maincpu", M68030, 20000000) |
| 891 | 935 | MDRV_CPU_PROGRAM_MAP(maciici_map) |
| 936 | MDRV_CPU_VBLANK_INT("screen", mac_rbv_vbl) |
| 892 | 937 | |
| 893 | 938 | MDRV_PALETTE_LENGTH(256) |
| 894 | 939 | |
| r9440 | r9441 | |
| 1264 | 1309 | ROM_START( maclc ) |
| 1265 | 1310 | ROM_REGION32_BE(0x80000, "bootrom", 0) |
| 1266 | 1311 | ROM_LOAD("350eacf0.rom", 0x000000, 0x080000, CRC(71681726) SHA1(6bef5853ae736f3f06c2b4e79772f65910c3b7d4)) |
| 1312 | |
| 1313 | ROM_REGION(0x1100, "egret", 0) |
| 1314 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1267 | 1315 | ROM_END |
| 1268 | 1316 | |
| 1269 | 1317 | ROM_START( macii ) |
| r9440 | r9441 | |
| 1322 | 1370 | ROM_START( maciisi ) |
| 1323 | 1371 | ROM_REGION32_BE(0x80000, "bootrom", 0) |
| 1324 | 1372 | ROM_LOAD( "36b7fb6c.rom", 0x000000, 0x080000, CRC(f304d973) SHA1(f923de4125aae810796527ff6e25364cf1d54eec) ) |
| 1373 | |
| 1374 | ROM_REGION(0x1100, "egret", 0) |
| 1375 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1325 | 1376 | ROM_END |
| 1326 | 1377 | |
| 1327 | 1378 | ROM_START( macclas2 ) |
| 1328 | 1379 | ROM_REGION32_BE(0x80000, "bootrom", 0) |
| 1329 | 1380 | ROM_LOAD( "3193670e.rom", 0x000000, 0x080000, CRC(96d2e1fd) SHA1(50df69c1b6e805e12a405dc610bc2a1471b2eac2) ) |
| 1381 | |
| 1382 | ROM_REGION(0x1100, "egret", 0) |
| 1383 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1330 | 1384 | ROM_END |
| 1331 | 1385 | |
| 1332 | 1386 | ROM_START( maclc2 ) |
| r9440 | r9441 | |
| 1335 | 1389 | ROM_LOAD32_BYTE( "341-0475_ud2-mh.bin", 0x000001, 0x020000, CRC(7b013595) SHA1(0b82d8fac570270db9774f6254017d28611ae756) ) |
| 1336 | 1390 | ROM_LOAD32_BYTE( "341-0474_uc2-ml.bin", 0x000002, 0x020000, CRC(2ff2f52b) SHA1(876850df61d0233c1dd3c00d48d8d6690186b164) ) |
| 1337 | 1391 | ROM_LOAD32_BYTE( "341-0473_ub2-ll.bin", 0x000003, 0x020000, CRC(8843c37c) SHA1(bb5104110507ca543d106f11c6061245fd90c1a7) ) |
| 1392 | |
| 1393 | ROM_REGION(0x1100, "egret", 0) |
| 1394 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1338 | 1395 | ROM_END |
| 1339 | 1396 | |
| 1340 | 1397 | ROM_START( maclc3 ) |
| 1341 | 1398 | ROM_REGION32_BE(0x100000, "bootrom", 0) |
| 1342 | 1399 | ROM_LOAD( "ecbbc41c.rom", 0x000000, 0x100000, CRC(e578f5f3) SHA1(c77df3220c861f37a2c553b6ee9241b202dfdffc) ) |
| 1400 | |
| 1401 | ROM_REGION(0x1100, "egret", 0) |
| 1402 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1343 | 1403 | ROM_END |
| 1344 | 1404 | |
| 1345 | 1405 | ROM_START( pmac6100 ) |
| r9440 | r9441 | |
| 1356 | 1416 | ROM_REGION16_BE(0x40000, "bootrom", 0) |
| 1357 | 1417 | ROM_LOAD16_WORD( "96645f9c.rom", 0x000000, 0x040000, CRC(29ac7ee9) SHA1(7f3acf40b1f63612de2314a2e9fcfeafca0711fc) ) |
| 1358 | 1418 | ROM_END |
| 1419 | /* |
| 1420 | ROM_START( maccclas ) |
| 1421 | ROM_REGION32_BE(0x100000, "bootrom", 0) |
| 1422 | ROM_LOAD( "ecd99dc0.rom", 0x000000, 0x100000, CRC(c84c3aa5) SHA1(fd9e852e2d77fe17287ba678709b9334d4d74f1e) ) |
| 1359 | 1423 | |
| 1424 | ROM_REGION(0x1100, "egret", 0) |
| 1425 | ROM_LOAD( "341s0851.bin", 0x000000, 0x001100, CRC(ea9ea6e4) SHA1(8b0dae3ec66cdddbf71567365d2c462688aeb571) ) |
| 1426 | ROM_END |
| 1427 | */ |
| 1360 | 1428 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */ |
| 1361 | 1429 | COMP( 1984, mac128k, 0, 0, mac128k, macplus, mac128k512k, "Apple Computer", "Macintosh 128k", GAME_NOT_WORKING ) |
| 1362 | 1430 | COMP( 1984, mac512k, mac128k, 0, mac512ke, macplus, mac128k512k, "Apple Computer", "Macintosh 512k", GAME_NOT_WORKING ) |
| r9440 | r9441 | |
| 1377 | 1445 | COMP( 1991, macpb100, 0, 0, macprtb, macadb, macprtb, "Apple Computer", "Macintosh PowerBook 100", GAME_NOT_WORKING ) |
| 1378 | 1446 | COMP( 1991, macclas2, 0, 0, macclas2, macadb, macclassic2, "Apple Computer", "Macintosh Classic II", GAME_NOT_WORKING ) |
| 1379 | 1447 | COMP( 1991, maclc2, 0, 0, maclc2, maciici, maclc2, "Apple Computer", "Macintosh LC II", GAME_NOT_WORKING ) |
| 1448 | //COMP( 1993, maccclas, 0, 0, maccclas, macadb, maclrcclassic, "Apple Computer", "Macintosh Color Classic", GAME_NOT_WORKING ) |
| 1380 | 1449 | COMP( 1993, maclc3, 0, 0, maclc3, maciici, maclc3, "Apple Computer", "Macintosh LC III", GAME_NOT_WORKING ) |
| 1381 | 1450 | COMP( 1994, pmac6100, 0, 0, pwrmac, macadb, macpm6100, "Apple Computer", "Power Macintosh 6100", GAME_NOT_WORKING | GAME_NO_SOUND ) |
| 1382 | 1451 | |