Removed hacky rom region destruction/construction when a new cart is inserted, replacing it with proper bank pointers to the carts (except for ymsnd and ltat region which will require modernization of the ym devices).
![rom aero fighter 2 rom aero fighter 2](http://s.emuparadise.org/MAME/artwork_preview/sonicwi2.png)
#Rom aero fighter 2 code
Huge clean up of the cartslot code in order to better exploit slot devices: Moved cart-specific components to the carts itself removing the fake protection devices from the main system, since they never belonged there. Removed bus\neogeo\banked_cart.cpp/h, bootleg_cart.cpp/h, bootleg_hybrid_cart.cpp/h, bootleg_prot.cpp/h, kog_prot.cpp/h, neogeo_helper.cpp/h, neogeo_intf.cpp/h, sma_prot.cpp/h and machine\neocrypt.cpp.
![rom aero fighter 2 rom aero fighter 2](http://s.emuparadise.org/fup/up/32827-Aero_Fighters_(USA)-1.jpg)
Changed bus\neogeo\neogeo_carts.cpp/h to carts.cpp/h, cmc_cart.cpp/h to cmc.cpp/h, cmc_prot.cpp/h to prot_cmc.cpp/h, fatfury2_cart.cpp/h to fatfury2.cpp/h, fatfury2_prot.cpp/h to prot_fatfury2.cpp/h, kof2002_cart.cpp/h to kof2k2.cpp/h, kof2002_prot.cpp/h to prot_kof2k2.cpp/h, kof98_cart.cpp/h to kof98.cpp/h, kof98_prot.cpp/h to prot_kof98.cpp/h, mslugx_cart.cpp/h to mslugx.cpp/h, mslugx_prot.cpp/h to prot_mslugx.cpp/h, pcm2_cart.cpp/h to pcm2.cpp/h, pcm2_prot.cpp/h to prot_pcm2.cpp/h, neogeo_slot.cpp/h to slot.cpp/h, pvc_cart.cpp/h to pvc.cpp/h, pvc_prot.cpp/h to prot_pvc.cpp/h, sbp_prot.cpp/h to sbp.cpp/h and sma_cart.cpp/h to sma.cpp/h. Added bus\neogeo\boot_cthd.cpp/h, boot_kof10th.cpp/h, boot_kof2k2.cpp/h, boot_kof2k3.cpp/h, boot_misc.cpp/h, boot_svc.cpp/h, prot_cthd.cpp/h, prot_kof2k3bl.cpp/h and prot_misc.cpp/h. 0.174: Changed neogeo_noslot.cpp to neodriv.hxx driver. Many thanks to Tafoid and Osso for the debugging help.
#Rom aero fighter 2 driver
Fixed savestate problems in NeoGeo hardware driver (drivers\neogeo.cpp). 0.175: Fixed most sets in neodriv.hxx crashes if cheats are enabled. 0.176: Added port names to Joystick buttons. This was reported by Robbbert in response to recent regressions (the command line was 'mame aes bjourney'), but it seems to be present in MAME 0.184. This caused problems when the region was size zero I changed the code to return null pointers in these scenarios. Accessing the pointers was done through a '&vector' pattern. The NeoGeo driver exposes a number of different memory regions as vectors. 0.185: Fixed out of bounds issues in NeoGeo memory access. Corrected Neo Geo sprite tile code mask to 20 bits (was previously 19 bits), stop masking MSB. We will also be able to use these buttons in all forthcoming control panels in MAME Artwork. The quality on the buttons is almost perfect, but they are currently raster copies of the pic posted there if he ever gets back to me, that will change. The mini marquee is a better scan, cleaned up it includes a new generic bezel provided by N.I.B., and the buttons have been updated, thanks to a posting at Deviant Art by atebitninja. for now, Metal Slug 2 and the generic MVS file are done. Do - I plan to overhaul all of the Neo Geo games at some point. Reintegrated NeoGeo romdefs in the source. 0.188: Changed neodriv.hxx to neogeo.cpp driver. 0.189: Added new 74HC259 device (addressable latch). 0.192: Added MACHINE_NODEVICE_LAN flags.
![rom aero fighter 2 rom aero fighter 2](https://media2.nin-nin-game.com/6439-pos_thickbox/sonic-wings-2-aero-fighters-2-neo-geo-aes-used-good-condition-es.jpg)
0.34b6: Changed description to 'Aero Fighters 2 / Sonic Wings 2'. 11th March 1999: Tatsuyuki Satoh upgraded the FM engine, for example one tune of Sonic Wings 2 sounds better.