trunk/src/mess/drivers/ngen.c
| r242176 | r242177 | |
| 9 | 9 | level 3 - timer (from PIT, presumably channel 0? Patent says "channel 3") |
| 10 | 10 | level 4 - "interrupt detector" - keyboard, printer, RTC |
| 11 | 11 | level 7 - floppy/hard disk |
| 12 | |
| 13 | To get to "menu mode", press Space quickly after reset (might need good timing) |
| 14 | The bootstrap ROM version number is displayed, along with "B,D,L,M,P,T:" |
| 15 | You can press one of these keys for the following tests: |
| 16 | B: Bootstrap |
| 17 | Loads the system image file (from disk or master workstation) |
| 18 | D: Dump |
| 19 | RAM contents are dumped to a local disk drive or master workstation |
| 20 | L: Load |
| 21 | Loads the system image file, then enters the Panel Debugger. Exiting the Panel |
| 22 | Debugger will continue execution of the system image |
| 23 | M: Memory Test |
| 24 | Continuously performs the Memory Test until the system is reset. |
| 25 | P: Panel Debugger |
| 26 | Enters the Panel Debugger |
| 27 | T: Type of Operating System |
| 28 | Gives an "OS:" prompt, at which you can enter the number of the system image to |
| 29 | load at the master workstation. |
| 30 | |
| 31 | Panel Debugger: |
| 32 | - Open/Modify RAM |
| 33 | Enter an address (seg:off) followed by a forward-slash, the contents of this word will |
| 34 | appear, you can enter a value to set it to, or just press Next (default: Enter) to leave |
| 35 | it as is. It will then go on to the next word. Pressing Return (scan code unknown |
| 36 | currently) will return to the debugger prompt. |
| 37 | - Open/Modify Register |
| 38 | Enter the register only, and the contents will appear, you can leave it or alter it (you |
| 39 | must enter all digits (eg: 0A03 if you're modifying DX) then press Return. |
| 40 | - I/O to or from a port |
| 41 | Input: Address (segment is ignored, and not required) followed by I, a byte is read from |
| 42 | the port defined by the offset, and the byte is displayed. |
| 43 | Output: Address followed by O, you are now prompted with an '='. Enter the byte to send |
| 44 | to the port, and press Return. |
| 45 | - Set Haltpoint: |
| 46 | Enter an address (seg:off) followed by H. Sets a haltpoint at the specified address. Does |
| 47 | not work for ROM addresses. Only one allowed at a time. Haltpoint info is stored at |
| 48 | 0000:01F0. Uses a software interrupt (INT 7C), rather than INT 3. |
| 49 | |
| 50 | To start or continue from the current address, enter P. |
| 51 | To start from a specific address, enter the address (seg:off) followed by a G. |
| 12 | 52 | */ |
| 13 | 53 | |
| 14 | 54 | #include "emu.h" |
| r242176 | r242177 | |
| 303 | 343 | ret = m_viduart->status_r(space,0); |
| 304 | 344 | break; |
| 305 | 345 | case 0x1a0: // I/O control register? |
| 306 | | ret = m_control; // end of DMA transfer? (maybe a per-channel EOP?) Add a '| 0x40' to force a serial I/O failure, so that the keyboard can be tested |
| 346 | ret = m_control; // end of DMA transfer? (maybe a per-channel EOP?) Bit 6 is set during a transfer? |
| 307 | 347 | break; |
| 308 | 348 | case 0x1b1: |
| 309 | 349 | ret = 0; |
| r242176 | r242177 | |
| 542 | 582 | |
| 543 | 583 | ROM_START( ngen ) |
| 544 | 584 | ROM_REGION( 0x2000, "bios", 0) |
| 545 | | ROM_LOAD16_BYTE( "72-00414_80186_cpu.bin", 0x000000, 0x001000, CRC(e1387a03) SHA1(ddca4eba67fbf8b731a8009c14f6b40edcbc3279) ) |
| 585 | ROM_LOAD16_BYTE( "72-00414_80186_cpu.bin", 0x000000, 0x001000, CRC(e1387a03) SHA1(ddca4eba67fbf8b731a8009c14f6b40edcbc3279) ) // bootstrap ROM v8.4 |
| 546 | 586 | ROM_LOAD16_BYTE( "72-00415_80186_cpu.bin", 0x000001, 0x001000, CRC(a6dde7d9) SHA1(b4d15c1bce31460ab5b92ff43a68c15ac5485816) ) |
| 547 | 587 | ROM_END |
| 548 | 588 | |