summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/i86
Commit message (Collapse)AuthorAgeFilesLines
* Since nobody checks for NULLs anyway, make Aaron Giles2012-09-192-6/+6
| | | | | | | | | | | | device_memory_interface::space() assert against NULL and return a reference, and pushed references throughout all address space usage in the system. Added a has_space() method to check for those rare case when it is ambiguous. [Aaron Giles] Also reinstated the generic space and added fatal error handlers if anyone tries to actually read/write from it.
* Clean-ups and version bumpmame0147 Miodrag Milanovic2012-09-171-1/+1
| | | note: hoarded dump removed too from coco_cart.xml, this will not be tolerated
* Final round of struct/union/enum normalization. Aaron Giles2012-09-161-3/+2
|
* Enum and union normalization. Aaron Giles2012-09-162-6/+6
|
* First pass at modernizing struct definitions. Aaron Giles2012-09-153-69/+66
|
* Clear out remaining global inlines in diexec.h. Aaron Giles2012-09-121-1/+1
|
* DEVINFO_* to CPU_INFO_*, and some cleanups (no whatsnew) Miodrag Milanovic2012-09-032-37/+37
|
* Fix for i286 preventing error 104 on ibm5170 [Carl] Miodrag Milanovic2012-05-122-7/+11
|
* Renamed device_irq_callback to device_irq_acknowledge_callback to Aaron Giles2012-04-102-3/+3
| | | | | | | | make its purpose clearer. Added delegate support for interrupt callbacks, and made driver_device variants of the generic interrupt helper callbacks. Did not convert existing callers yet due to logistical issues.
* "English doesn't borrow from other languages. English follows other ↵ Scott Stone2011-08-234-4/+4
| | | | | | languages down dark alleys, knocks them over and goes through their pockets for loose grammar!" Hand-checked the most popular English word misspellings and made the appropriate changes. Nearly all of the changes made were in commented areas. (no whatsnew)
* Fix for VS2010 build (no whatsnew) Miodrag Milanovic2011-07-281-1/+1
|
* Fixes for variable shadowing [Oliver Stöneberg] R. Belmont2011-07-211-1/+0
|
* i286 - fix for OS/2 "interrupts disabled when entering system" problem by ↵ Miodrag Milanovic2011-06-213-9/+11
| | | | Carl (no whatsnew)
* Cleanups and version bumpmame0142u6 Angelo Salese2011-06-191-2/+2
|
* i286 - small fix by Carl (no whatsnew) Miodrag Milanovic2011-06-191-1/+1
|
* i286 - Fixes that makes OS/2 1.2 boot again by Carl (no whatsnew) Miodrag Milanovic2011-06-182-4/+4
|
* i286 - Fix bunch of fault restarts [Carl] Miodrag Milanovic2011-06-165-72/+153
|
* ins8250 - Fix enabling better mouse support in pc driver [Carl] Miodrag Milanovic2011-06-113-8/+17
| | | i286 - limit check of SS in push and pop instructions [Carl]
* i286 - core fixes enabling some progress on OS/2 1.1 by Carl (no whatsnew) Miodrag Milanovic2011-06-102-33/+31
|
* 286 - fixes the DOS/16M dos extender that comes with Lotus 123r3 [Carl] Miodrag Milanovic2011-06-072-12/+20
|
* i286 - Fix for Phar Lap and Borland 16-bit DPMI servers. [Carl] Miodrag Milanovic2011-06-071-0/+3
|
* Cleanups and version bumpmame0142u5 Angelo Salese2011-06-053-11/+11
|
* i286 - Fix for exception handling makes bios 13 from at to pass tests, by ↵ Miodrag Milanovic2011-06-052-3/+8
| | | | Carl (no whatsnew)
* i86: fix initial CS on reset Alex W. Jackson2011-06-031-1/+1
|
* i286 - small issue fixed by Carl (no whatsnew) Miodrag Milanovic2011-06-011-2/+2
|
* idectrl - implemented verify no retry command [Carl] Miodrag Milanovic2011-05-302-3/+3
| | | | i86 - Fixed imul instruction [Carl]
* GCC 4.6 "Variable assigned but not used" fixes, part 6 (no whatsnew) R. Belmont2011-05-302-4/+4
|
* i286 - enabling 287 emulation by trapping when needed [Carl] Miodrag Milanovic2011-05-294-35/+63
| | | idectrl - Clears error status on driver initialization [Carl]
* fix build with visual studio smf-2011-05-251-6/+6
|
* Cleanups and version bumpmame0142u4 Angelo Salese2011-05-242-16/+16
|
* i286 - Fixed one opcode, making win 3.1 boots done by Carl (no whatsnew) Miodrag Milanovic2011-05-231-1/+1
|
* i286 - some fixes from Carl (no whatsnew) Miodrag Milanovic2011-05-221-9/+2
|
* initialize gatedesc as otherwise the compiler complains. no idea what the ↵ smf-2011-05-221-2/+2
| | | | author intended, looks like the code is unfinished or bugged. nwm
* i286 - Added switch task and logging for testing by Carl (no whatsnew) Miodrag Milanovic2011-05-222-47/+182
|
* i286 - Fix for protected mode, ibm5170 no errors anymore by Carl (no whatsnew) Miodrag Milanovic2011-05-201-3/+4
|
* i286 - protection mode cleanup and fixes by Carl (no whatsnew) Miodrag Milanovic2011-05-203-228/+130
|
* i286 - More protected mode fixes by Carl (no whatsnew) Miodrag Milanovic2011-05-183-19/+66
|
* i86 - Implemented POP CS and MOV CS,reg instructions that are 8086 specific ↵ Miodrag Milanovic2011-05-183-3/+23
| | | | [Miodrag Milanovic]
* i286 - Added 286 LOADALL and triple fault resets. [Carl] Miodrag Milanovic2011-05-1713-307/+800
| | | | | i286 - Added support for 16-bit protected mode far calls and segment privilege checks. [Carl] i86 - Fixed shift instructions, helps detecting proper CPU [Miodrag Milanovic] i86 - Fixed handling of invalid instructions in 0x60-0x6f section [Miodrag Milanovic]
* Reimplemented devcb using delegates and classes. Unified the logic Aaron Giles2011-05-021-2/+2
| | | | | | for identifying targets and simplified the code. [Aaron Giles] I have some further ideas but this is a good midway point.
* Collapsed device_config and device_t into one class. Updated all Aaron Giles2011-04-272-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | existing modern devices and the legacy wrappers to work in this environment. This in general greatly simplifies writing a modern device. [Aaron Giles] General notes: * some more cleanup probably needs to happen behind this change, but I needed to get it in before the next device modernization or import from MESS :) * new template function device_creator which automatically defines the static function that creates the device; use this instead of creating a static_alloc_device_config function * added device_stop() method which is called at around the time the previous device_t's destructor was called; if you auto_free anything, do it here because the machine is gone when the destructor is called * changed the static_set_* calls to pass a device_t & instead of a device_config * * for many devices, the static config structure member names over- lapped the device's names for devcb_* functions; in these cases the members in the interface were renamed to have a _cb suffix * changed the driver_enumerator to only cache 100 machine_configs because caching them all took a ton of memory; fortunately this implementation detail is completely hidden behind the driver_enumerator interface * got rid of the macros for creating derived classes; doing it manually is now clean enough that it isn't worth hiding the details in a macro
* Fixed issues with latest change by adding safety 16bit handling (no whatsnew) Miodrag Milanovic2011-04-261-1/+1
|
* Fixed i86/i386 POP SP and POP ESP thanks to bug report for Xenix boot by ↵ Miodrag Milanovic2011-04-261-1/+1
| | | | bs666 [Miodrag Milanovic]
* i286 - Fixed protected mode boundary check [Miodrag Milanovic] Miodrag Milanovic2011-04-101-1/+1
|
* Created new enum type address_spacenum for specifying an address Aaron Giles2011-03-272-22/+22
| | | | | | | | | | | | space by index. Update functions and methods that accepted an address space index to take an address_spacenum instead. Note that this means you can't use a raw integer in ADDRESS_SPACE macros, so instead of 0 use the enumerated AS_0. Standardized the project on the shortened constants AS_* over the older ADDRESS_SPACE_*. Removed the latter to prevent confusion. Also centralized the location of these definitions to memory.h.
* Get rid of state_save_register_device_* macros in favor of direct Aaron Giles2011-02-092-58/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | calls on the device object. Regex used: state_save_register_device_item( *)\(( *)([^,]+), *([^,]+),( *)([^ )]+)( *)\) \3->save_item\1\(\2NAME\(\6\),\5\4\7\) state_save_register_device_item_array( *)\(( *)([^,]+), *([^,]+),( *)([^ )]+)( *)\) \3->save_item\1\(\2NAME\(\6\),\5\4\7\) state_save_register_device_item_2d_array( *)\(( *)([^,]+), *([^,]+),( *)([^ )]+)( *)\) \3->save_item\1\(\2NAME\(\6\),\5\4\7\) state_save_register_device_item_bitmap( *)\(( *)([^,]+), *([^,]+),( *)([^ )]+)( *)\) \3->save_item\1\(\2NAME\(\*\6\),\5\4\7\) state_save_register_device_item_pointer( *)\(( *)([^,]+), *([^,]+),( *)([^,]+), *([^ )]+)( *)\) \3->save_pointer\1\(\2NAME\(\6\),\5\7,\5\4\8\) this->save_ save_ (save_item[^;]+), *0( *)\); \1\2\); (save_pointer[^;]+), *0( *)\); \1\2\);
* Cleanups and version bump.mame0141u1 Aaron Giles2011-01-242-78/+78
|
* Fixed handling 80186 instructions [Phill Harvey-Smith] Miodrag Milanovic2011-01-103-112/+135
|
* running_device -> device_t Aaron Giles2010-12-312-3/+3
| | | | | They both already existed. No sense in having two names for the same object type.
* Add directxor parameter to direct memory accessors. Update all callers Aaron Giles2010-12-311-5/+4
| | | | | | | | | that manually XORed addresses to pass the XOR instead. This improves behavior when direct accessors hit non-RAM regions, or when watchpoints are used, because we now know the original, un-xored address and can fall back to standard read/write handlers properly. Also fixes glitched disassembly when read watchpoints are enabled.