trunk/src/emu/ioport.c
| r17721 | r17722 | |
| 3508 | 3508 | // read the header and verify that it is a modern version; if not, print an error |
| 3509 | 3509 | UINT8 header[INP_HEADER_SIZE]; |
| 3510 | 3510 | if (m_playback_file.read(header, sizeof(header)) != sizeof(header)) |
| 3511 | | fatalerror("Input file is corrupt or invalid (missing header)"); |
| 3511 | fatalerror("Input file is corrupt or invalid (missing header)\n"); |
| 3512 | 3512 | if (memcmp(header, "MAMEINP\0", 8) != 0) |
| 3513 | | fatalerror("Input file invalid or in an older, unsupported format"); |
| 3513 | fatalerror("Input file invalid or in an older, unsupported format\n"); |
| 3514 | 3514 | if (header[0x10] != INP_HEADER_MAJVERSION) |
| 3515 | | fatalerror("Input file format version mismatch"); |
| 3515 | fatalerror("Input file format version mismatch\n"); |
| 3516 | 3516 | |
| 3517 | 3517 | // output info to console |
| 3518 | 3518 | mame_printf_info("Input file: %s\n", filename); |
| r17721 | r17722 | |
| 4131 | 4131 | break; |
| 4132 | 4132 | |
| 4133 | 4133 | default: |
| 4134 | | fatalerror("Unknown analog port type -- don't know if it is absolute or not"); |
| 4134 | fatalerror("Unknown analog port type -- don't know if it is absolute or not\n"); |
| 4135 | 4135 | break; |
| 4136 | 4136 | } |
| 4137 | 4137 | |
trunk/src/emu/disound.c
| r17721 | r17722 | |
| 347 | 347 | int streamoutputnum; |
| 348 | 348 | sound_stream *outputstream = sound->output_to_stream_output(outputnum, streamoutputnum); |
| 349 | 349 | if (outputstream == NULL) |
| 350 | | fatalerror("Sound device '%s' specifies route for non-existant output #%d", route->m_target.cstr(), outputnum); |
| 350 | fatalerror("Sound device '%s' specifies route for non-existant output #%d\n", route->m_target.cstr(), outputnum); |
| 351 | 351 | |
| 352 | 352 | // find the input stream to connect to |
| 353 | 353 | int streaminputnum; |
| 354 | 354 | sound_stream *inputstream = input_to_stream_input(inputnum++, streaminputnum); |
| 355 | 355 | if (inputstream == NULL) |
| 356 | | fatalerror("Sound device '%s' targeted output #%d to non-existant device '%s' input %d", route->m_target.cstr(), outputnum, m_device.tag(), inputnum - 1); |
| 356 | fatalerror("Sound device '%s' targeted output #%d to non-existant device '%s' input %d\n", route->m_target.cstr(), outputnum, m_device.tag(), inputnum - 1); |
| 357 | 357 | |
| 358 | 358 | // set the input |
| 359 | 359 | inputstream->set_input(streaminputnum, outputstream, streamoutputnum, route->m_gain); |
trunk/src/emu/machine/z80dma.c
| r17721 | r17722 | |
| 684 | 684 | switch (data) |
| 685 | 685 | { |
| 686 | 686 | case COMMAND_ENABLE_AFTER_RETI: |
| 687 | | fatalerror("Z80DMA '%s' Unimplemented WR6 command %02x", tag(), data); |
| 687 | fatalerror("Z80DMA '%s' Unimplemented WR6 command %02x\n", tag(), data); |
| 688 | 688 | break; |
| 689 | 689 | case COMMAND_READ_STATUS_BYTE: |
| 690 | 690 | if (LOG) logerror("Z80DMA '%s' CMD Read status Byte\n", tag()); |
| r17721 | r17722 | |
| 794 | 794 | else if(data == 0x8e) //newtype on Sharp X1, unknown purpose |
| 795 | 795 | printf("Z80DMA '%s' Unknown base register %02x\n", tag(), data); |
| 796 | 796 | else |
| 797 | | fatalerror("Z80DMA '%s' Unknown base register %02x", tag(), data); |
| 797 | fatalerror("Z80DMA '%s' Unknown base register %02x\n", tag(), data); |
| 798 | 798 | m_cur_follow = 0; |
| 799 | 799 | } |
| 800 | 800 | else |
trunk/src/emu/machine/53c810.c
| r17721 | r17722 | |
| 16 | 16 | |
| 17 | 17 | void lsi53c810_device::dmaop_invalid() |
| 18 | 18 | { |
| 19 | | fatalerror("LSI53C810: Invalid SCRIPTS DMA opcode %08X at %08X", dcmd, dsp); |
| 19 | fatalerror("LSI53C810: Invalid SCRIPTS DMA opcode %08X at %08X\n", dcmd, dsp); |
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | void lsi53c810_device::dmaop_move_memory() |
| r17721 | r17722 | |
| 34 | 34 | void lsi53c810_device::dmaop_interrupt() |
| 35 | 35 | { |
| 36 | 36 | if(dcmd & 0x100000) { |
| 37 | | fatalerror("LSI53C810: INTFLY opcode not implemented"); |
| 37 | fatalerror("LSI53C810: INTFLY opcode not implemented\n"); |
| 38 | 38 | } |
| 39 | 39 | dsps = FETCH(); |
| 40 | 40 | |
| r17721 | r17722 | |
| 83 | 83 | if (scntl0 & 0x01) |
| 84 | 84 | { |
| 85 | 85 | /* target mode */ |
| 86 | | fatalerror("LSI53C810: dmaop_block_move not implemented in target mode"); |
| 86 | fatalerror("LSI53C810: dmaop_block_move not implemented in target mode\n"); |
| 87 | 87 | } |
| 88 | 88 | else |
| 89 | 89 | { |
| r17721 | r17722 | |
| 126 | 126 | if (scntl0 & 0x01) |
| 127 | 127 | { |
| 128 | 128 | /* target mode */ |
| 129 | | fatalerror("LSI53C810: dmaop_wait_disconnect not implemented in target mode"); |
| 129 | fatalerror("LSI53C810: dmaop_wait_disconnect not implemented in target mode\n"); |
| 130 | 130 | } |
| 131 | 131 | else |
| 132 | 132 | { |
| 133 | 133 | /* initiator mode */ |
| 134 | | fatalerror("LSI53C810: dmaop_wait_disconnect not implemented"); |
| 134 | fatalerror("LSI53C810: dmaop_wait_disconnect not implemented\n"); |
| 135 | 135 | } |
| 136 | 136 | } |
| 137 | 137 | |
| r17721 | r17722 | |
| 144 | 144 | if (scntl0 & 0x01) |
| 145 | 145 | { |
| 146 | 146 | /* target mode */ |
| 147 | | fatalerror("LSI53C810: dmaop_wait_reselect not implemented in target mode"); |
| 147 | fatalerror("LSI53C810: dmaop_wait_reselect not implemented in target mode\n"); |
| 148 | 148 | } |
| 149 | 149 | else |
| 150 | 150 | { |
| 151 | 151 | /* initiator mode */ |
| 152 | | fatalerror("LSI53C810: dmaop_wait_reselect not implemented"); |
| 152 | fatalerror("LSI53C810: dmaop_wait_reselect not implemented\n"); |
| 153 | 153 | } |
| 154 | 154 | } |
| 155 | 155 | |
| r17721 | r17722 | |
| 213 | 213 | |
| 214 | 214 | void lsi53c810_device::dmaop_move_from_sfbr() |
| 215 | 215 | { |
| 216 | | fatalerror("LSI53C810: dmaop_move_from_sfbr not implemented in target mode"); |
| 216 | fatalerror("LSI53C810: dmaop_move_from_sfbr not implemented in target mode\n"); |
| 217 | 217 | } |
| 218 | 218 | |
| 219 | 219 | void lsi53c810_device::dmaop_move_to_sfbr() |
| 220 | 220 | { |
| 221 | | fatalerror("LSI53C810: dmaop_move_to_sfbr not implemented"); |
| 221 | fatalerror("LSI53C810: dmaop_move_to_sfbr not implemented\n"); |
| 222 | 222 | } |
| 223 | 223 | |
| 224 | 224 | void lsi53c810_device::dmaop_read_modify_write() |
| 225 | 225 | { |
| 226 | | fatalerror("LSI53C810: dmaop_read_modify_write not implemented"); |
| 226 | fatalerror("LSI53C810: dmaop_read_modify_write not implemented\n"); |
| 227 | 227 | } |
| 228 | 228 | |
| 229 | 229 | int lsi53c810_device::scripts_compute_branch() |
| r17721 | r17722 | |
| 239 | 239 | |
| 240 | 240 | if (dcmd & 0x00200000) |
| 241 | 241 | { |
| 242 | | fatalerror("LSI53C810: jump with carry test not implemented"); |
| 242 | fatalerror("LSI53C810: jump with carry test not implemented\n"); |
| 243 | 243 | } |
| 244 | 244 | |
| 245 | 245 | if (dcmd & 0x00100000) |
| 246 | 246 | { |
| 247 | | fatalerror("LSI53C810: jump with interrupt on the fly not implemented"); |
| 247 | fatalerror("LSI53C810: jump with interrupt on the fly not implemented\n"); |
| 248 | 248 | } |
| 249 | 249 | |
| 250 | 250 | // set desired result to take jump |
| r17721 | r17722 | |
| 357 | 357 | |
| 358 | 358 | void lsi53c810_device::dmaop_store() |
| 359 | 359 | { |
| 360 | | fatalerror("LSI53C810: dmaop_store not implemented"); |
| 360 | fatalerror("LSI53C810: dmaop_store not implemented\n"); |
| 361 | 361 | } |
| 362 | 362 | |
| 363 | 363 | void lsi53c810_device::dmaop_load() |
| 364 | 364 | { |
| 365 | | fatalerror("LSI53C810: dmaop_load not implemented"); |
| 365 | fatalerror("LSI53C810: dmaop_load not implemented\n"); |
| 366 | 366 | } |
| 367 | 367 | |
| 368 | 368 | |
| r17721 | r17722 | |
| 468 | 468 | return scratch_b[offset % 4]; |
| 469 | 469 | |
| 470 | 470 | default: |
| 471 | | fatalerror("LSI53C810: reg_r: Unknown reg %02X", offset); |
| 471 | fatalerror("LSI53C810: reg_r: Unknown reg %02X\n", offset); |
| 472 | 472 | } |
| 473 | 473 | |
| 474 | 474 | return 0; |
| r17721 | r17722 | |
| 604 | 604 | break; |
| 605 | 605 | |
| 606 | 606 | default: |
| 607 | | fatalerror("LSI53C810: reg_w: Unknown reg %02X, %02X", offset, data); |
| 607 | fatalerror("LSI53C810: reg_w: Unknown reg %02X, %02X\n", offset, data); |
| 608 | 608 | } |
| 609 | 609 | } |
| 610 | 610 | |
| r17721 | r17722 | |
| 821 | 821 | break; |
| 822 | 822 | |
| 823 | 823 | default: |
| 824 | | fatalerror("unknown op 0x%08X", op); |
| 824 | fatalerror("unknown op 0x%08X\n", op); |
| 825 | 825 | break; |
| 826 | 826 | } |
| 827 | 827 | result = 8; |
| r17721 | r17722 | |
| 848 | 848 | } |
| 849 | 849 | else |
| 850 | 850 | { |
| 851 | | fatalerror("unknown op 0x%08X", op); |
| 851 | fatalerror("unknown op 0x%08X\n", op); |
| 852 | 852 | } |
| 853 | 853 | return result; |
| 854 | 854 | } |
trunk/src/emu/machine/netlist.c
| r17721 | r17722 | |
| 259 | 259 | m_p++; |
| 260 | 260 | return; |
| 261 | 261 | } |
| 262 | | fatalerror("Parser: expected '%c' found '%c'", ctocheck, *m_p); |
| 262 | fatalerror("Parser: expected '%c' found '%c'\n", ctocheck, *m_p); |
| 263 | 263 | } |
| 264 | 264 | |
| 265 | 265 | double eval_param() |
| r17721 | r17722 | |
| 277 | 277 | f = i; |
| 278 | 278 | ret = strtod(s+strlen(macs[f]), &e); |
| 279 | 279 | if ((f>0) && (*e != ')')) |
| 280 | | fatalerror("Parser: Error with parameter ..."); |
| 280 | fatalerror("Parser: Error with parameter ...\n"); |
| 281 | 281 | if (f>0) |
| 282 | 282 | e++; |
| 283 | 283 | m_p = e; |
| r17721 | r17722 | |
| 549 | 549 | ret = find_output_exact(s); |
| 550 | 550 | } |
| 551 | 551 | if (ret == NULL) |
| 552 | | fatalerror("output %s(%s) not found!", outname_in, outname); |
| 552 | fatalerror("output %s(%s) not found!\n", outname_in, outname); |
| 553 | 553 | VERBOSE_OUT(("Found input %s\n", outname)); |
| 554 | 554 | return *ret; |
| 555 | 555 | } |
| r17721 | r17722 | |
| 561 | 561 | |
| 562 | 562 | ret = m_params.find(outname); |
| 563 | 563 | if (ret == NULL) |
| 564 | | fatalerror("parameter %s(%s) not found!", param_in, outname); |
| 564 | fatalerror("parameter %s(%s) not found!\n", param_in, outname); |
| 565 | 565 | VERBOSE_OUT(("Found parameter %s\n", outname)); |
| 566 | 566 | return *ret; |
| 567 | 567 | } |
trunk/src/emu/machine/eeprom.c
| r17721 | r17722 | |
| 251 | 251 | if (m_region != NULL) |
| 252 | 252 | { |
| 253 | 253 | if (m_region->bytes() != eeprom_bytes) |
| 254 | | fatalerror("eeprom region '%s' wrong size (expected size = 0x%X)", tag(), eeprom_bytes); |
| 254 | fatalerror("eeprom region '%s' wrong size (expected size = 0x%X)\n", tag(), eeprom_bytes); |
| 255 | 255 | if (m_data_bits == 8 && m_region->width() != 1) |
| 256 | | fatalerror("eeprom region '%s' needs to be an 8-bit region", tag()); |
| 256 | fatalerror("eeprom region '%s' needs to be an 8-bit region\n", tag()); |
| 257 | 257 | if (m_data_bits == 16 && (m_region->width() != 2 || m_region->endianness() != ENDIANNESS_BIG)) |
| 258 | | fatalerror("eeprom region '%s' needs to be a 16-bit big-endian region", tag()); |
| 258 | fatalerror("eeprom region '%s' needs to be a 16-bit big-endian region\n", tag()); |
| 259 | 259 | |
| 260 | 260 | for (offs_t offs = 0; offs < eeprom_length; offs++) |
| 261 | 261 | if (m_data_bits == 8) |
trunk/src/emu/machine/k033906.c
| r17721 | r17722 | |
| 84 | 84 | case 0x0f: return m_reg[0x0f]; // interrupt_line, interrupt_pin, min_gnt, max_lat |
| 85 | 85 | |
| 86 | 86 | default: |
| 87 | | fatalerror("%s: k033906_reg_r: %08X", machine().describe_context(), reg); |
| 87 | fatalerror("%s: k033906_reg_r: %08X\n", machine().describe_context(), reg); |
| 88 | 88 | } |
| 89 | 89 | return 0; |
| 90 | 90 | } |
| r17721 | r17722 | |
| 132 | 132 | break; |
| 133 | 133 | |
| 134 | 134 | default: |
| 135 | | fatalerror("%s:K033906_w: %08X, %08X", machine().describe_context(), data, reg); |
| 135 | fatalerror("%s:K033906_w: %08X, %08X\n", machine().describe_context(), data, reg); |
| 136 | 136 | } |
| 137 | 137 | } |
| 138 | 138 | |
trunk/src/emu/machine/net_lib.c
| r17721 | r17722 | |
| 949 | 949 | return (*p)->Create(setup, icname); |
| 950 | 950 | p++; |
| 951 | 951 | } |
| 952 | | fatalerror("Class %s required for IC %s not found!", classname, icname); |
| 952 | fatalerror("Class %s required for IC %s not found!\n", classname, icname); |
| 953 | 953 | } |
| 954 | 954 | |
| 955 | 955 | net_device_t *net_create_device_by_name(const char *name, netlist_setup_t *setup, const char *icname) |
| r17721 | r17722 | |
| 961 | 961 | return (*p)->Create(setup, icname); |
| 962 | 962 | p++; |
| 963 | 963 | } |
| 964 | | fatalerror("Class %s required for IC %s not found!", name, icname); |
| 964 | fatalerror("Class %s required for IC %s not found!\n", name, icname); |
| 965 | 965 | } |