diff --git a/src/devices/bus/ata/atapicdr.cpp b/src/devices/bus/ata/atapicdr.cpp index 61a55bca4c2..aa32806913f 100644 --- a/src/devices/bus/ata/atapicdr.cpp +++ b/src/devices/bus/ata/atapicdr.cpp @@ -68,37 +68,37 @@ void atapi_cdrom_device::device_start() memset(m_identify_buffer, 0, sizeof(m_identify_buffer)); - m_identify_buffer[ 0 ] = 0x8500; // ATAPI device, cmd set 5 compliant, DRQ within 3 ms of PACKET command + m_identify_buffer[0] = 0x8500; // ATAPI device, cmd set 5 compliant, DRQ within 3 ms of PACKET command - m_identify_buffer[ 23 ] = ('1' << 8) | '.'; - m_identify_buffer[ 24 ] = ('0' << 8) | ' '; - m_identify_buffer[ 25 ] = (' ' << 8) | ' '; - m_identify_buffer[ 26 ] = (' ' << 8) | ' '; + m_identify_buffer[23] = ('1' << 8) | '.'; + m_identify_buffer[24] = ('0' << 8) | ' '; + m_identify_buffer[25] = (' ' << 8) | ' '; + m_identify_buffer[26] = (' ' << 8) | ' '; - m_identify_buffer[ 27 ] = ('M' << 8) | 'A'; - m_identify_buffer[ 28 ] = ('M' << 8) | 'E'; - m_identify_buffer[ 29 ] = (' ' << 8) | ' '; - m_identify_buffer[ 30 ] = (' ' << 8) | ' '; - m_identify_buffer[ 31 ] = ('V' << 8) | 'i'; - m_identify_buffer[ 32 ] = ('r' << 8) | 't'; - m_identify_buffer[ 33 ] = ('u' << 8) | 'a'; - m_identify_buffer[ 34 ] = ('l' << 8) | ' '; - m_identify_buffer[ 35 ] = ('C' << 8) | 'D'; - m_identify_buffer[ 36 ] = ('R' << 8) | 'O'; - m_identify_buffer[ 37 ] = ('M' << 8) | ' '; - m_identify_buffer[ 38 ] = (' ' << 8) | ' '; - m_identify_buffer[ 39 ] = (' ' << 8) | ' '; - m_identify_buffer[ 40 ] = (' ' << 8) | ' '; - m_identify_buffer[ 41 ] = (' ' << 8) | ' '; - m_identify_buffer[ 42 ] = (' ' << 8) | ' '; - m_identify_buffer[ 43 ] = (' ' << 8) | ' '; - m_identify_buffer[ 44 ] = (' ' << 8) | ' '; - m_identify_buffer[ 45 ] = (' ' << 8) | ' '; - m_identify_buffer[ 46 ] = (' ' << 8) | ' '; + m_identify_buffer[27] = ('M' << 8) | 'A'; + m_identify_buffer[28] = ('M' << 8) | 'E'; + m_identify_buffer[29] = (' ' << 8) | ' '; + m_identify_buffer[30] = (' ' << 8) | ' '; + m_identify_buffer[31] = ('V' << 8) | 'i'; + m_identify_buffer[32] = ('r' << 8) | 't'; + m_identify_buffer[33] = ('u' << 8) | 'a'; + m_identify_buffer[34] = ('l' << 8) | ' '; + m_identify_buffer[35] = ('C' << 8) | 'D'; + m_identify_buffer[36] = ('R' << 8) | 'O'; + m_identify_buffer[37] = ('M' << 8) | ' '; + m_identify_buffer[38] = (' ' << 8) | ' '; + m_identify_buffer[39] = (' ' << 8) | ' '; + m_identify_buffer[40] = (' ' << 8) | ' '; + m_identify_buffer[41] = (' ' << 8) | ' '; + m_identify_buffer[42] = (' ' << 8) | ' '; + m_identify_buffer[43] = (' ' << 8) | ' '; + m_identify_buffer[44] = (' ' << 8) | ' '; + m_identify_buffer[45] = (' ' << 8) | ' '; + m_identify_buffer[46] = (' ' << 8) | ' '; - m_identify_buffer[ 49 ] = 0x0600; // Word 49=Capabilities, IORDY may be disabled (bit_10), LBA Supported mandatory (bit_9) + m_identify_buffer[49] = 0x0600; // Word 49=Capabilities, IORDY may be disabled (bit_10), LBA Supported mandatory (bit_9) - m_identify_buffer[ 88 ] = m_ultra_dma_mode; + m_identify_buffer[88] = m_ultra_dma_mode; atapi_hle_device::device_start(); } diff --git a/src/devices/bus/ata/atapihle.cpp b/src/devices/bus/ata/atapihle.cpp index cb5712f69b3..0161084fe1d 100644 --- a/src/devices/bus/ata/atapihle.cpp +++ b/src/devices/bus/ata/atapihle.cpp @@ -236,8 +236,8 @@ void atapi_hle_device::process_command() for( int w = 0; w < 256; w++ ) { - m_buffer[w * 2] = m_identify_buffer[ w ] & 0xff; - m_buffer[(w * 2) + 1] = m_identify_buffer[ w ] >> 8; + m_buffer[w * 2] = m_identify_buffer[w] & 0xff; + m_buffer[(w * 2) + 1] = m_identify_buffer[w] >> 8; } m_buffer_size = 512; diff --git a/src/devices/bus/ata/cr589.cpp b/src/devices/bus/ata/cr589.cpp index f1b5add1c47..5cc413f0d60 100644 --- a/src/devices/bus/ata/cr589.cpp +++ b/src/devices/bus/ata/cr589.cpp @@ -16,8 +16,8 @@ static constexpr char download_identity[] = "MATSHITA CD98Q4 DOWNLOADGS0N"; void matsushita_cr589_device::nvram_default() { - memset( buffer, 0, sizeof(buffer)); - memcpy( &buffer[ identity_offset ], "MATSHITACD-ROM CR-589 GS0N", 28 ); + memset(buffer, 0, sizeof(buffer)); + memcpy(&buffer[identity_offset], "MATSHITACD-ROM CR-589 GS0N", 28); } @@ -50,27 +50,27 @@ bool matsushita_cr589_device::nvram_write(util::write_stream &file) void matsushita_cr589_device::ExecCommand() { - switch( command[ 0 ] ) + switch( command[0] ) { case T10SPC_CMD_INQUIRY: logerror("T10MMC: INQUIRY\n"); m_phase = SCSI_PHASE_DATAIN; m_status_code = SCSI_STATUS_CODE_GOOD; - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); break; case 0x3b: // WRITE BUFFER - bufferOffset = get_u24be( &command[ 3 ] ); + bufferOffset = get_u24be( &command[3] ); m_phase = SCSI_PHASE_DATAOUT; m_status_code = SCSI_STATUS_CODE_GOOD; - m_transfer_length = get_u24be( &command[ 6 ] ); + m_transfer_length = get_u24be( &command[6] ); break; case 0x3c: // READ BUFFER - bufferOffset = get_u24be( &command[ 3 ] ); + bufferOffset = get_u24be( &command[3] ); m_phase = SCSI_PHASE_DATAIN; m_status_code = SCSI_STATUS_CODE_GOOD; - m_transfer_length = get_u24be( &command[ 6 ] ); + m_transfer_length = get_u24be( &command[6] ); break; case 0xcc: // FIRMWARE DOWNLOAD ENABLE @@ -87,7 +87,7 @@ void matsushita_cr589_device::ExecCommand() void matsushita_cr589_device::ReadData( uint8_t *data, int dataLength ) { - switch( command[ 0 ] ) + switch( command[0] ) { case T10SPC_CMD_INQUIRY: memset(data, 0, dataLength); @@ -96,16 +96,16 @@ void matsushita_cr589_device::ReadData( uint8_t *data, int dataLength ) if( download ) { - memcpy( &data[ 8 ], download_identity, 28 ); + memcpy( &data[8], download_identity, 28 ); } else { - memcpy( &data[ 8 ], &buffer[ identity_offset ], 28 ); + memcpy( &data[8], &buffer[identity_offset], 28 ); } break; case 0x3c: // READ BUFFER - memcpy( data, &buffer[ bufferOffset ], dataLength ); + memcpy( data, &buffer[bufferOffset], dataLength ); bufferOffset += dataLength; break; @@ -117,15 +117,15 @@ void matsushita_cr589_device::ReadData( uint8_t *data, int dataLength ) void matsushita_cr589_device::WriteData( uint8_t *data, int dataLength ) { - switch( command[ 0 ] ) + switch( command[0] ) { case 0x3b: // WRITE BUFFER - memcpy( &buffer[ bufferOffset ], data + 32, dataLength - 32 ); + memcpy( &buffer[bufferOffset], data + 32, dataLength - 32 ); bufferOffset += dataLength; break; case 0xcc: // FIRMWARE DOWNLOAD ENABLE - if( memcmp( data, &buffer[ identity_offset ], 28 ) == 0 ) + if( memcmp( data, &buffer[identity_offset], 28 ) == 0 ) { download = 1; } @@ -161,35 +161,35 @@ void matsushita_cr589_device::device_start() /// TODO: split identify buffer into another method as device_start() should be called after it's filled in, but the atapi_cdrom_device has it's own. memset(m_identify_buffer, 0, sizeof(m_identify_buffer)); - m_identify_buffer[ 0 ] = 0x8500; // ATAPI device, cmd set 5 compliant, DRQ within 3 ms of PACKET command + m_identify_buffer[0] = 0x8500; // ATAPI device, cmd set 5 compliant, DRQ within 3 ms of PACKET command - m_identify_buffer[ 23 ] = ('1' << 8) | '.'; - m_identify_buffer[ 24 ] = ('0' << 8) | ' '; - m_identify_buffer[ 25 ] = (' ' << 8) | ' '; - m_identify_buffer[ 26 ] = (' ' << 8) | ' '; + m_identify_buffer[23] = ('1' << 8) | '.'; + m_identify_buffer[24] = ('0' << 8) | ' '; + m_identify_buffer[25] = (' ' << 8) | ' '; + m_identify_buffer[26] = (' ' << 8) | ' '; - m_identify_buffer[ 27 ] = ('M' << 8) | 'A'; - m_identify_buffer[ 28 ] = ('T' << 8) | 'S'; - m_identify_buffer[ 29 ] = ('H' << 8) | 'I'; - m_identify_buffer[ 30 ] = ('T' << 8) | 'A'; - m_identify_buffer[ 31 ] = (' ' << 8) | 'C'; - m_identify_buffer[ 32 ] = ('R' << 8) | '-'; - m_identify_buffer[ 33 ] = ('5' << 8) | '8'; - m_identify_buffer[ 34 ] = ('9' << 8) | ' '; - m_identify_buffer[ 35 ] = (' ' << 8) | ' '; - m_identify_buffer[ 36 ] = (' ' << 8) | ' '; - m_identify_buffer[ 37 ] = (' ' << 8) | ' '; - m_identify_buffer[ 38 ] = (' ' << 8) | ' '; - m_identify_buffer[ 39 ] = (' ' << 8) | ' '; - m_identify_buffer[ 40 ] = (' ' << 8) | ' '; - m_identify_buffer[ 41 ] = (' ' << 8) | ' '; - m_identify_buffer[ 42 ] = (' ' << 8) | ' '; - m_identify_buffer[ 43 ] = (' ' << 8) | ' '; - m_identify_buffer[ 44 ] = (' ' << 8) | ' '; - m_identify_buffer[ 45 ] = (' ' << 8) | ' '; - m_identify_buffer[ 46 ] = (' ' << 8) | ' '; + m_identify_buffer[27] = ('M' << 8) | 'A'; + m_identify_buffer[28] = ('T' << 8) | 'S'; + m_identify_buffer[29] = ('H' << 8) | 'I'; + m_identify_buffer[30] = ('T' << 8) | 'A'; + m_identify_buffer[31] = (' ' << 8) | 'C'; + m_identify_buffer[32] = ('R' << 8) | '-'; + m_identify_buffer[33] = ('5' << 8) | '8'; + m_identify_buffer[34] = ('9' << 8) | ' '; + m_identify_buffer[35] = (' ' << 8) | ' '; + m_identify_buffer[36] = (' ' << 8) | ' '; + m_identify_buffer[37] = (' ' << 8) | ' '; + m_identify_buffer[38] = (' ' << 8) | ' '; + m_identify_buffer[39] = (' ' << 8) | ' '; + m_identify_buffer[40] = (' ' << 8) | ' '; + m_identify_buffer[41] = (' ' << 8) | ' '; + m_identify_buffer[42] = (' ' << 8) | ' '; + m_identify_buffer[43] = (' ' << 8) | ' '; + m_identify_buffer[44] = (' ' << 8) | ' '; + m_identify_buffer[45] = (' ' << 8) | ' '; + m_identify_buffer[46] = (' ' << 8) | ' '; - m_identify_buffer[ 49 ] = 0x0400; // IORDY may be disabled + m_identify_buffer[49] = 0x0400; // IORDY may be disabled } void matsushita_cr589_device::device_reset() diff --git a/src/devices/bus/ata/cr589.h b/src/devices/bus/ata/cr589.h index 9b2f89d172c..a68eab7c2be 100644 --- a/src/devices/bus/ata/cr589.h +++ b/src/devices/bus/ata/cr589.h @@ -39,7 +39,7 @@ protected: private: int download; - uint8_t buffer[ 65536 ]; + uint8_t buffer[65536]; int bufferOffset; }; diff --git a/src/devices/bus/ata/gdrom.cpp b/src/devices/bus/ata/gdrom.cpp index 29ca0c02baa..621710a49a6 100644 --- a/src/devices/bus/ata/gdrom.cpp +++ b/src/devices/bus/ata/gdrom.cpp @@ -191,7 +191,7 @@ void gdrom_device::ExecCommand() case 0x10: { transferOffset = command[2]; - u8 allocation_length = SCSILengthFromUINT8( &command[ 4 ] ); + u8 allocation_length = SCSILengthFromUINT8( &command[4] ); // any game that enables [redbook] LOGCMD("REQ_STAT 10h offset %02x length %02x\n", transferOffset, allocation_length); @@ -209,9 +209,9 @@ void gdrom_device::ExecCommand() m_phase = SCSI_PHASE_DATAIN; m_status_code = SCSI_STATUS_CODE_GOOD; -// if (SCSILengthFromUINT8( &command[ 4 ] ) < 32) return -1; +// if (SCSILengthFromUINT8( &command[4] ) < 32) return -1; transferOffset = command[2]; - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); if (transferOffset & 1) throw emu_fatalerror("GDROM: REQ_MODE with odd offset %02x %02x", transferOffset, m_transfer_length); break; @@ -222,7 +222,7 @@ void gdrom_device::ExecCommand() m_phase = SCSI_PHASE_DATAOUT; m_status_code = SCSI_STATUS_CODE_GOOD; //transferOffset = command[2]; - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); if (command[2]) throw emu_fatalerror("GDROM: SET_MODE with offset %02x %02x", transferOffset, m_transfer_length); @@ -246,7 +246,7 @@ void gdrom_device::ExecCommand() // TODO: it's supposed to write a single and a double density TOC request //if (command[1]) // throw emu_fatalerror("Double density unsupported"); - u16 allocation_length = SCSILengthFromUINT16( &command[ 3 ] ); + u16 allocation_length = SCSILengthFromUINT16( &command[3] ); LOGCMD("READ_TOC 14h %02x %02x %d\n", command[1], command[2], allocation_length ); @@ -272,7 +272,7 @@ void gdrom_device::ExecCommand() { m_phase = SCSI_PHASE_DATAIN; m_status_code = SCSI_STATUS_CODE_GOOD; - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); LOGCMD("REQ_SES 15h %02x %02x\n", command[2], m_transfer_length); break; } @@ -431,7 +431,7 @@ void gdrom_device::ExecCommand() case 0x40: { - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); //LOGCMD("CD_SCD 40h %02x %d\n", command[1] & 0xf, m_transfer_length); switch(command[1] & 0xf) @@ -439,7 +439,7 @@ void gdrom_device::ExecCommand() case 0x00: m_phase = SCSI_PHASE_DATAIN; m_status_code = SCSI_STATUS_CODE_GOOD; - m_transfer_length = SCSILengthFromUINT8( &command[ 4 ] ); + m_transfer_length = SCSILengthFromUINT8( &command[4] ); break; case 0x01: m_phase = SCSI_PHASE_DATAIN; @@ -753,7 +753,7 @@ void gdrom_device::ReadData( uint8_t *data, int dataLength ) void gdrom_device::WriteData( uint8_t *data, int dataLength ) { - switch (command[ 0 ]) + switch (command[0]) { case 0x12: // SET_MODE memcpy(&GDROM_Cmd11_Reply[transferOffset], data, (dataLength >= 32-transferOffset) ? 32-transferOffset : dataLength); diff --git a/src/devices/cpu/c33/s1c33209.cpp b/src/devices/cpu/c33/s1c33209.cpp index cd3008c10a4..20a8a546f11 100644 --- a/src/devices/cpu/c33/s1c33209.cpp +++ b/src/devices/cpu/c33/s1c33209.cpp @@ -82,7 +82,7 @@ void s1c33209_device::device_reset() template void s1c33209_device::memory_map(address_map &map) { - map(0x000'0000, 0x000'1fff).mirror(0x000'2000).ram(); + map(0x000'0000, 0x000'1fff).mirror(0x000'2000).ram(); // actually 32 bits wide (single cycle word access) map(0x003'0000, 0x003'ffff).m(*this, FUNC(s1c33209_device::peripheral_map)); map(0x004'0000, 0x004'ffff).mirror(0x001'0000).m(*this, FUNC(s1c33209_device::peripheral_map)); //map(0x006'0000, 0x007'ffff) area 2 reserved for debug mode diff --git a/src/mame/bfm/bfm_sc4.h b/src/mame/bfm/bfm_sc4.h index d0f52fe5f8f..6220fd5e875 100644 --- a/src/mame/bfm/bfm_sc4.h +++ b/src/mame/bfm/bfm_sc4.h @@ -2,16 +2,16 @@ // copyright-holders:David Haywood /* Scorpion 4 + 5 driver related includes */ /* mainly used for stuff which is currently shared between sc4 / 5 sets to avoid duplication */ -#ifndef MAME_BFM_BFP_SC4_H -#define MAME_BFM_BFP_SC4_H +#ifndef MAME_BFM_BFM_SC4_H +#define MAME_BFM_BFM_SC4_H #pragma once #include "sec.h" #include "machine/steppers.h" // stepper motor -#include "bfm_gu96x8m_k657c2.h" #include "bfm_bda.h" +#include "bfm_gu96x8m_k657c2.h" #include "sound/ymz280b.h" #include "machine/mc68681.h" @@ -3378,4 +3378,4 @@ INPUT_PORTS_EXTERN( sc4_raw ); /* not for either of these games? */ \ ROM_LOAD( "casroysnd.bin", 0x00000, 0x80000, CRC(cf1d4b59) SHA1(1b2bc74c6fcc43197a6f295bc34554da01f7b517) ) -#endif // MAME_BFM_BFP_SC4_H +#endif // MAME_BFM_BFM_SC4_H diff --git a/src/mame/handheld/hh_ht11xx.cpp b/src/mame/handheld/hh_ht11xx.cpp index 598a8192920..5c61a786bc1 100644 --- a/src/mame/handheld/hh_ht11xx.cpp +++ b/src/mame/handheld/hh_ht11xx.cpp @@ -40,7 +40,6 @@ namespace { class hh_ht11xx_state : public driver_device { public: - virtual DECLARE_INPUT_CHANGED_MEMBER(input_wakeup); protected: diff --git a/src/mame/layout/bfm_sc5_gu96x8.lay b/src/mame/layout/bfm_sc5_gu96x8.lay index 15ff9cf2afe..1ba5883a454 100644 --- a/src/mame/layout/bfm_sc5_gu96x8.lay +++ b/src/mame/layout/bfm_sc5_gu96x8.lay @@ -19,70 +19,70 @@ license:CC0 - - - - - - - - - - - - + + + + + + + + + + + + - - - - + + + + - - - - + + + + - - " - - + + " + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + @@ -145,9 +145,9 @@ license:CC0 - - - + + + @@ -155,7 +155,7 @@ license:CC0 - + @@ -175,1721 +175,124 @@ license:CC0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + + - - + + - - + + - - + + + - - + + - - + + - - + + + - - + + - - + + - - + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + diff --git a/src/mame/netronics/exp85.cpp b/src/mame/netronics/exp85.cpp index aa5cf88e022..2543294ea4b 100644 --- a/src/mame/netronics/exp85.cpp +++ b/src/mame/netronics/exp85.cpp @@ -5,8 +5,8 @@ Explorer 85 12/05/2009 Skeleton driver. - 29/12/2023 Reworked driver to enable extended RAM memory, - MS BASIC and disable ROM mirror after boot/interrupt. + 29/12/2023 Reworked driver to enable extended RAM memory, + MS BASIC and disable ROM mirror after boot/interrupt. Setting Up ========== @@ -18,15 +18,16 @@ Once started, press Space. The system will start up. All input must be in upper case. - Microsoft Basic is executed entering the following 2 commands - in the monitor prompt: - .XS nnnn-F87F mmmm-C000 + Microsoft Basic is executed entering the following 2 commands + in the monitor prompt: + .XS nnnn-F87F mmmm-C000 .G - where nnnn is the previous value of the stack pointer, and mmmm is the previous - value of the program counter. + where nnnn is the previous value of the stack pointer, and mmmm is the + previous value of the program counter. - Basic will request the amount of RAM memory available, 8192 (bytes) must be entered. + BASIC will request the amount of RAM memory available, 8192 (bytes) must + be entered. ****************************************************************************/ @@ -37,7 +38,7 @@ - dump of the hexadecimal keyboard monitor ROM - 64K RAM expansion - - Disk drive and CP/M OS support + - Disk drive and CP/M OS support */ @@ -70,7 +71,7 @@ public: , m_rs232(*this, "rs232") , m_cassette(*this, "cassette") , m_speaker(*this, "speaker") - , m_rom(*this, "u105") // the 8355 chip contains the monitor ROM + , m_rom(*this, "u105") // the 8355 chip contains the monitor ROM , m_low_memory_view(*this, "low_memory_view") , m_is_preparing_interrupt_call(false) , m_ignore_timer_out(true) @@ -103,7 +104,7 @@ private: // Member variables required_device m_maincpu; required_device m_i8355; - required_device m_i8155; + required_device m_i8155; required_device m_rs232; required_device m_cassette; required_device m_speaker; @@ -113,7 +114,7 @@ private: bool m_is_preparing_interrupt_call; bool m_ignore_timer_out; bool m_tape_control; - emu_timer *m_timer; + emu_timer *m_timer; }; @@ -123,14 +124,14 @@ void exp85_state::exp85_mem(address_map &map) map.unmap_value_high(); // Extended RAM or mapped monitor ROM (only during interrupt and reset) map(0x0000, 0x1fff).view(m_low_memory_view); - // Microsoft Basic ROM + // Microsoft BASIC ROM map(0xc000, 0xdfff).rom(); // Monitor ROM in the 8355 chip map(0xf000, 0xf7ff).rom().region(m_rom, 0); // 256 bytes of RAM of level A in the 8155 chip. map(0xf800, 0xf8ff).rw(m_i8155, FUNC(i8155_device::memory_r), FUNC(i8155_device::memory_w)); - // monitor ROM mirror + // monitor ROM mirror m_low_memory_view[LOW_MEMORY_ROM_MIRROR_ENTRY](0x0000, 0x07ff).rom().region(m_rom, 0); // extended RAM m_low_memory_view[LOW_MEMORY_RAM_ENTRY](0x0000, 0x1fff).ram(); @@ -243,9 +244,9 @@ void exp85_state::sod_w(int state) void exp85_state::status_out(u8 status) { - // In the real hardware this is monitored via the IO/M, S0, S1 + // In the real hardware this is monitored via the IO/M, S0, S1 // and ALE output pins of the 8085. - // Since these pins are not emulated, then we must explicitly get the internal + // Since these pins are not emulated, then we must explicitly get the internal // interrupt acknowledge state (0x23 or 0x26) and behave as the monitor expects. auto current_pc = m_maincpu->pc(); if (status == 0x23 || status == 0x26) @@ -253,20 +254,20 @@ void exp85_state::status_out(u8 status) // When an interrupt is triggered the low memory shall be set to the ROM mirror m_is_preparing_interrupt_call = true; m_low_memory_view.select(LOW_MEMORY_ROM_MIRROR_ENTRY); - } + } else if (m_is_preparing_interrupt_call && (current_pc & 0xff00) == 0x0000) { // Avoids setting the lower memory back to RAM until // it branches to the interrupt handler. m_is_preparing_interrupt_call = false; - } + } else if (!m_is_preparing_interrupt_call && (current_pc & 0xf000) == 0xf000) { // When the interrupt handler is executing and the address is >= 0xf000 // the low memory is mapped to RAM m_low_memory_view.select(LOW_MEMORY_RAM_ENTRY); - } - + } + } //************************************************************************** @@ -303,7 +304,7 @@ void exp85_state::to_change(int to) { // In the 8155 implementation the TIMER-OUT line (to) is // asserted by default on initialization; this generates a spurious exception - // avoided here via an ignore flag. + // avoided here via an ignore flag. if (m_ignore_timer_out) { m_ignore_timer_out = false; @@ -313,16 +314,16 @@ void exp85_state::to_change(int to) // The 8155 has a max TIMER-IN to TIMER-OUT delay of 400ns (datasheet page 3-256). In a real system // this delay was measured in ~70ns. This is enough for the next instruction cycle to start // and for the interrupt to be acknowledged one instruction later. This effect is fundamental - // for the ROM monitor stepping functionality, since it depends heavily on interrupting when the + // for the ROM monitor stepping functionality, since it depends heavily on interrupting when the // next instruction of the user program is being executed. // MAME allows to set a timer of 70ns but that is not enough to get the CPU scheduled for at least 1 cycle - // before the interrupt is serviced, so we program a timer to expire beyond a full clock cycle. + // before the interrupt is serviced, so we program a timer to expire beyond a full clock cycle. m_timer->adjust(m_i8155->clocks_to_attotime(2), to); } TIMER_CALLBACK_MEMBER(exp85_state::trap_delay) { - // The 8155 TIMER-OUT line is connected to the TRAP input line of the 8085; + // The 8155 TIMER-OUT line is connected to the TRAP input line of the 8085; // that line is set from the start high, and since there is no change in that line, the // interrup is never requested (datasheet, page 6-13). m_maincpu->set_input_line(I8085_TRAP_LINE, param == 1 ? ASSERT_LINE : CLEAR_LINE); @@ -338,18 +339,18 @@ void exp85_state::exp85(machine_config &config) m_maincpu->in_sid_func().set(FUNC(exp85_state::sid_r)); m_maincpu->out_sod_func().set(FUNC(exp85_state::sod_w)); m_maincpu->out_status_func().set(FUNC(exp85_state::status_out)); - + /* sound hardware */ SPEAKER(config, "mono").front_center(); SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.25); /* devices */ - // The Explorer-85 uses a 6.144MHz clock, but the Intel 8085 divides by 2 this + // The Explorer-85 uses a 6.144MHz clock, but the Intel 8085 divides by 2 this // input frequency to give the processor internal operating frequency. - // The bus is connected to the CLK (out) of the 8085, running also - // at 6.144MHz divided by 2. - I8155(config, m_i8155, 6.144_MHz_XTAL/2); + // The bus is connected to the CLK (out) of the 8085, running also + // at 6.144MHz divided by 2. + I8155(config, m_i8155, 6.144_MHz_XTAL/2); m_i8155->out_to_callback().set(FUNC(exp85_state::to_change)); @@ -368,14 +369,14 @@ void exp85_state::exp85(machine_config &config) /* ROMs */ ROM_START( exp85 ) - ROM_REGION( 0x10000, "u100", 0 ) // Microsoft Basic + ROM_REGION( 0x10000, "u100", 0 ) // Microsoft BASIC ROM_DEFAULT_BIOS("eia") ROM_LOAD( "c000.bin", 0xc000, 0x0800, CRC(73ce4aad) SHA1(2c69cd0b6c4bdc92f4640bce18467e4e99255bab) ) ROM_LOAD( "c800.bin", 0xc800, 0x0800, CRC(eb3fdedc) SHA1(af92d07f7cb7533841b16e1176401363176857e1) ) ROM_LOAD( "d000.bin", 0xd000, 0x0800, CRC(c10c4a22) SHA1(30588ba0b27a775d85f8c581ad54400c8521225d) ) ROM_LOAD( "d800.bin", 0xd800, 0x0800, CRC(dfa43ef4) SHA1(56a7e7a64928bdd1d5f0519023d1594cacef49b3) ) - - ROM_REGION( 0x800, "u105", 0 ) // Explorer 85 Monitor + + ROM_REGION( 0x800, "u105", 0 ) // Explorer 85 Monitor ROM_SYSTEM_BIOS( 0, "eia", "EIA Terminal" ) // Serial terminal ROM ROMX_LOAD( "ex 85.u105", 0x0000, 0x0800, CRC(1a99d0d9) SHA1(57b6d48e71257bc4ef2d3dddc9b30edf6c1db766), ROM_BIOS(0) ) ROM_SYSTEM_BIOS( 1, "hex", "Hex Keyboard" ) // Keypad ROM (not available) diff --git a/src/mame/pinball/recel.cpp b/src/mame/pinball/recel.cpp index 1fcfcbcfcf7..285a8dbe8dd 100644 --- a/src/mame/pinball/recel.cpp +++ b/src/mame/pinball/recel.cpp @@ -29,7 +29,7 @@ C6 10738 Bus Interface Circuit } These 2 interface the C5 eprom to the CPU ToDo: - Everything (the code below is mostly a carry-over from gts1 and is incomplete or guesswork). -- There's lots of manuals, with lots of info, but not what we need. For example, no proper schematics. +- There are lots of manuals, with lots of info, but not what we need. For example, no proper schematics. - No info on the sound (all it says is 4 TTL chips controlled by 6 bits of the IO expander). - A plug-in printer is used to view and alter settings. We have no info about it. - Default layout. @@ -382,18 +382,18 @@ void recel_state::recel(machine_config & config) genpin_audio(config); } -/* The BIOS is the same for all sets, but is labeled different depending on the ROM type: +/* The BIOS is the same for all sets, but is labeled differently depending on the ROM type: -13: For machines with personality PROM 1702. -14: For machines with 2716 EPROM. - On both cases, the second half of each chip is not used, having their A11 ping grounded + In both cases, the second half of each chip is not used, with their A11 pins grounded (these chips have A1 to A11, there's no A0). */ #define RECEL_BIOS \ ROM_REGION( 0x800, "maincpu", ROMREGION_ERASEFF ) \ ROM_LOAD("a2361.b1", 0x0000, 0x0400, CRC(d0c4695d) SHA1(4846adb3f6c292626840ba5255ffc5e788a69301) ) \ - ROM_IGNORE( 0x400 ) \ + ROM_IGNORE( 0x400 ) \ ROM_LOAD("a2362.b2", 0x0400, 0x0400, CRC(39a70611) SHA1(8545e168a5f256150bcff12d1e6d8efffd08c3cd) ) \ - ROM_IGNORE( 0x400 ) + ROM_IGNORE( 0x400 ) ROM_START( recel ) RECEL_BIOS