trunk/src/emu/bus/ieee488/d9060.c
| r26039 | r26040 | |
| 9 | 9 | |
| 10 | 10 | **********************************************************************/ |
| 11 | 11 | |
| 12 | /* |
| 13 | |
| 14 | Use the CHDMAN utility to create a 5MB image for D9060: |
| 15 | |
| 16 | $ chdman createhd -o tm602s.chd -chs 153,4,32 -ss 256 |
| 17 | |
| 18 | or a 10MB image for D9090: |
| 19 | |
| 20 | $ chdman createhd -o tm603s.chd -chs 153,6,32 -ss 256 |
| 21 | |
| 22 | Start the PET emulator with the D9060 attached on the IEEE-488 bus, |
| 23 | with the new CHD mounted: |
| 24 | |
| 25 | $ mess pet8032 -ieee8 d9060 -hard tm602s.chd |
| 26 | $ mess pet8032 -ieee8 d9090 -hard tm603s.chd |
| 27 | |
| 28 | Enter 'HEADER "LABEL",D0,I01' to format the hard drive. |
| 29 | Wait up to 1 hour and 20 minutes. |
| 30 | |
| 31 | */ |
| 32 | |
| 12 | 33 | #include "d9060.h" |
| 13 | 34 | #include "d9060hd.h" |
| 14 | 35 | #include "machine/scsibus.h" |
| r26039 | r26040 | |
| 54 | 75 | |
| 55 | 76 | ROM_START( d9060 ) |
| 56 | 77 | ROM_REGION( 0x4000, M6502_DOS_TAG, 0 ) |
| 57 | | ROM_LOAD( "300516-001.7c", 0x0000, 0x2000, CRC(2d758a14) SHA1(c959cc9dde84fc3d64e95e58a0a096a26d8107fd) ) // Revision A |
| 58 | | ROM_LOAD( "300517-001.7d", 0x2000, 0x2000, CRC(566df630) SHA1(b1602dfff408b165ee52a6a4ca3e2ec27e689ba9) ) // Revision A |
| 59 | | ROM_LOAD( "300516-002.7c", 0x0000, 0x2000, CRC(2d758a14) SHA1(c959cc9dde84fc3d64e95e58a0a096a26d8107fd) ) // Revision B |
| 60 | | ROM_LOAD( "300517-002.7d", 0x2000, 0x2000, CRC(f0382bc3) SHA1(0b0a8dc520f5b41ffa832e4a636b3d226ccbb7f1) ) // Revision B |
| 61 | | ROM_LOAD( "300516-003.7c", 0x0000, 0x2000, CRC(d6a3e88f) SHA1(bb1ddb5da94a86266012eca54818aa21dc4cef6a) ) // Revision C |
| 62 | | ROM_LOAD( "300517-003.7d", 0x2000, 0x2000, CRC(2a9ad4ad) SHA1(4c17d014de48c906871b9b6c7d037d8736b1fd52) ) // Revision C |
| 78 | ROM_DEFAULT_BIOS("rc") |
| 79 | ROM_SYSTEM_BIOS( 0, "ra", "Revision A" ) |
| 80 | ROMX_LOAD( "300516-001.7c", 0x0000, 0x2000, NO_DUMP, ROM_BIOS(1) ) |
| 81 | ROMX_LOAD( "300517-001.7d", 0x2000, 0x2000, CRC(566df630) SHA1(b1602dfff408b165ee52a6a4ca3e2ec27e689ba9), ROM_BIOS(1) ) |
| 82 | ROM_SYSTEM_BIOS( 1, "rb", "Revision B" ) |
| 83 | ROMX_LOAD( "300516-002.7c", 0x0000, 0x2000, CRC(2d758a14) SHA1(c959cc9dde84fc3d64e95e58a0a096a26d8107fd), ROM_BIOS(2) ) |
| 84 | ROMX_LOAD( "300517-002.7d", 0x2000, 0x2000, CRC(f0382bc3) SHA1(0b0a8dc520f5b41ffa832e4a636b3d226ccbb7f1), ROM_BIOS(2) ) |
| 85 | ROM_SYSTEM_BIOS( 2, "rc", "Revision C" ) |
| 86 | ROMX_LOAD( "300516-003.7c", 0x0000, 0x2000, CRC(d6a3e88f) SHA1(bb1ddb5da94a86266012eca54818aa21dc4cef6a), ROM_BIOS(3) ) |
| 87 | ROMX_LOAD( "300517-003.7d", 0x2000, 0x2000, CRC(2a9ad4ad) SHA1(4c17d014de48c906871b9b6c7d037d8736b1fd52), ROM_BIOS(3) ) |
| 63 | 88 | |
| 64 | 89 | ROM_REGION( 0x800, M6502_HDC_TAG, 0 ) |
| 65 | 90 | ROM_LOAD( "300515-001.4c", 0x000, 0x800, CRC(99e096f7) SHA1(a3d1deb27bf5918b62b89c27fa3e488eb8f717a4) ) // Revision A |
| r26039 | r26040 | |
| 117 | 142 | ADDRESS_MAP_END |
| 118 | 143 | |
| 119 | 144 | |
| 120 | | WRITE_LINE_MEMBER( base_d9060_device::req_w ) |
| 121 | | { |
| 122 | | m_via->write_ca1(state); |
| 123 | | } |
| 124 | | |
| 125 | | |
| 126 | 145 | //------------------------------------------------- |
| 127 | 146 | // riot6532_interface riot0_intf |
| 128 | 147 | //------------------------------------------------- |
| r26039 | r26040 | |
| 372 | 391 | m_sasibus->scsi_rst_w(BIT(data, 1)); |
| 373 | 392 | } |
| 374 | 393 | |
| 375 | | READ_LINE_MEMBER( base_d9060_device::req_r ) |
| 376 | | { |
| 377 | | return m_sasibus->scsi_req_r(); |
| 378 | | } |
| 379 | | |
| 380 | 394 | WRITE_LINE_MEMBER( base_d9060_device::ack_w ) |
| 381 | 395 | { |
| 382 | 396 | m_sasibus->scsi_ack_w(!state); |
| r26039 | r26040 | |
| 406 | 420 | } |
| 407 | 421 | } |
| 408 | 422 | |
| 423 | WRITE_LINE_MEMBER( base_d9060_device::req_w ) |
| 424 | { |
| 425 | m_via->write_ca1(state); |
| 426 | } |
| 427 | |
| 409 | 428 | static const via6522_interface via_intf = |
| 410 | 429 | { |
| 411 | 430 | DEVCB_DEVICE_MEMBER(SASIBUS_TAG ":host", scsicb_device, scsi_data_r), |
| 412 | 431 | DEVCB_DEVICE_MEMBER(DEVICE_SELF_OWNER, base_d9060_device, via_pb_r), |
| 413 | | DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, base_d9060_device, req_r), |
| 432 | DEVCB_DEVICE_LINE_MEMBER(SASIBUS_TAG ":host", scsicb_device, scsi_req_r), |
| 414 | 433 | DEVCB_NULL, |
| 415 | 434 | DEVCB_NULL, |
| 416 | 435 | DEVCB_NULL, |