summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/machine/eeprom.h
Commit message (Collapse)AuthorAgeFilesLines
* Exposed an address space for EEPROM devices. This has several Aaron Giles2009-12-281-3/+0
| | | | | | | | | | | | | | | | | | side-effects: - EEPROM memory is now visible in the debugger - EEPROM memory can be accessed like any CPU/device memory (i.e., use eeprom.b@<addr> instead of eeprom.eb@<addr>) Removed support in the expression engine for EEPROM-specific accesses. Updated all systems that muck directly with EEPROM memory to use memory accessors instead on the EEPROM address space. Extended the devtempl.h file to support device address spaces. Cleaned up romload a bit to make it clear that region flags are enforced for any device with an address space, not just CPUs.
* Rename eepromdev.c/h back to eeprom.c/h Aaron Giles2009-12-271-0/+67
|
* Remove old eeprom implementation. Aaron Giles2009-12-271-42/+0
|
* From: Atari Ace [atari_ace@verizon.net] Aaron Giles2008-12-111-1/+1
| | | | | | | | | | | | | | | | | | | Sent: Wednesday, December 10, 2008 9:27 AM To: submit@mamedev.org Cc: atariace@hotmail.com Subject: [patch] Add machine to some emu/machine init methods Hi mamedev, This patch widens some machine init interfaces to pass the machine parameter, allowing more Machine global references to be eliminated. Eventually most of these need to be converted to devices, but this change reduces the deprecation surface in the meantime. I also attached the script I used to do the initial changes to the drivers, which handled about 90% of the cases without further editing. ~aa
* Changed direct access EEPROM interface to return the "bus width" of the Aaron Giles2008-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EEPROM data, and the size is in terms of units, not bytes. Updated all drivers accordingly. Changed the ROM loading code to actually alter the region flags based on the CPU endianness and bus width when creating the region, rather than fixing them up on the fly. This means that callers to memory_region_flags() will get the correct results. Changed the expression engine to use two callbacks for read/write rather than relying on externally defined functions. Expanded memory access support in the expression engine. Memory accesses can now be specified as [space][num]<size>@<address>. 'space' can be one of the following: p = program address space of CPU #num (default) d = data address space of CPU #num i = I/O address space of CPU #num o = opcode address space of CPU #num (R/W access to decrypted opcodes) r = direct RAM space of CPU #num (always allows writes, even for ROM) e = EEPROM index #num c = direct REGION_CPU#num access u = direct REGION_USER#num access g = direct REGION_GFX#num access s = direct REGION_SOUND#num access The 'num' field is optional for p/d/i/o/r, where is defaults to the current CPU, and for e, where it defaults to EEPROM #0. 'num' is required for all region-related prefixes. Some examples: w@curpc = word at 'curpc' in the active CPU's program address space dd@0 = dword at 0x0 in the active CPU's data address space r2b@100 = byte at 0x100 from a RAM/ROM region in CPU #2's program space ew@7f = word from EEPROM address 0x7f u2q@40 = qword from REGION_USER2, offset 0x40 The 'size' field is always required, and can be b/w/d/q for byte, word, dword, and qword accesses.
* Renamed EEPROM_* to eeprom_* Aaron Giles2008-05-251-15/+17
| | | | | | | | | | | | | | Typedef'ed a real eeprom_interface structure. Added a PORT_CUSTOM for the eeprom bit reading. Updated several drivers to use that by specifying it in their input ports instead of having a custom read handler that inserted the bit forcefully. Added a PORT_CUSTOM for the ticket dispenser callback as well. Updated the dcheese driver to use it. Many more drivers can be updated to use these new PORT_CUSTOMs in the future, eliminating hacky input port read handlers.
* Changes for MAME 0.121u3.mame0121u3 Aaron Giles2007-12-171-3/+3
|
* Initial checkin of MAME 0.121.mame0121 Aaron Giles2007-12-171-0/+40