Previous | 199869 Revisions | Next |
r188935 Friday 19th August, 2022 at 17:39:36 UTC by Vasantha Crabb |
---|
bus: Get rid of some dubious tag manipulation. The implementation details of how the cartridges allocate storage for memory really shouldn't be part of the interface. Having tags in the headers encourages people to depend on these implementation details. This gets rid of it in most of the headers. A few particularly leaky abstractions (bbc/rom, electron/cart, gba, generic, jakks_gamekey, m5) depend on this, so it can't be removed in those cases without further refactoring to encapsulate the slot devices better. This doesn't change behaviour, it just mechanically removes stuff from the headers and uses device_t::subtag rather than string manipulation on tags. Most of the cartridge devices shouldn't have rom_alloc member functions at all - the region created by the software list loader can be used directly when loading from the software list, and the slot can allocate a region with the same tag when loading loose software. This avoids creating an extra region and copying the data when loading from the software list. See vboy for an example that doesn't allocate a superfluous region. |
[/branches/barcrest/src/devices/bus/a7800] | a78_slot.cpp a78_slot.h |
[/branches/barcrest/src/devices/bus/a800] | a800_slot.cpp a800_slot.h |
[/branches/barcrest/src/devices/bus/apf] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/aquarius] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/arcadia] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/astrocde] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/bbc/rom] | slot.cpp |
[/branches/barcrest/src/devices/bus/chanf] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/crvision] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/ekara] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/electron/cart] | slot.cpp |
[/branches/barcrest/src/devices/bus/gamate] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/gameboy] | gb_slot.cpp gb_slot.h |
[/branches/barcrest/src/devices/bus/gba] | gba_slot.cpp |
[/branches/barcrest/src/devices/bus/generic] | slot.cpp |
[/branches/barcrest/src/devices/bus/intv] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/jakks_gamekey] | slot.cpp |
[/branches/barcrest/src/devices/bus/m5] | slot.cpp |
[/branches/barcrest/src/devices/bus/mc10] | mc10_cart.cpp |
[/branches/barcrest/src/devices/bus/megadrive] | md_slot.cpp md_slot.h |
[/branches/barcrest/src/devices/bus/mtx] | exp.cpp |
[/branches/barcrest/src/devices/bus/nes] | nes_ines.hxx nes_pcb.hxx nes_slot.cpp nes_slot.h nes_unif.hxx |
[/branches/barcrest/src/devices/bus/pce] | pce_slot.cpp pce_slot.h |
[/branches/barcrest/src/devices/bus/saturn] | sat_slot.cpp sat_slot.h |
[/branches/barcrest/src/devices/bus/scv] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/sega8] | sega8_slot.cpp sega8_slot.h |
[/branches/barcrest/src/devices/bus/snes] | snes_slot.cpp snes_slot.h |
[/branches/barcrest/src/devices/bus/vboy] | slot.cpp |
[/branches/barcrest/src/devices/bus/vc4000] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/vcs] | vcs_slot.cpp |
[/branches/barcrest/src/devices/bus/vectrex] | slot.cpp slot.h |
[/branches/barcrest/src/devices/bus/vsmile] | vsmile_slot.cpp vsmile_slot.h |
[/branches/barcrest/src/devices/bus/wswan] | slot.cpp slot.h |
[/branches/barcrest/src/mame/intergraph] | interpro.cpp* interpro_arbga.cpp* interpro_arbga.h* interpro_ioga.cpp* interpro_ioga.h* interpro_mcga.cpp* interpro_mcga.h* interpro_sga.cpp* interpro_sga.h* |
[/branches/barcrest/src/mame/interpro] |
https://github.com/mamedev/mame/commit/27d1b900e2715d67ea2633d6b64f2efbb8c5b7f5 |
Previous | 199869 Revisions | Next |