TomW
b5a498683a
Writing to read-only data selector now causes a fault.
2015-06-21 14:54:58 +01:00
TomW
fd2fc0e02b
Implemented serial scratch register.
...
Serial IER register only 4 bits wide.
2015-06-21 14:52:53 +01:00
TomW
de6369b82f
Disc function pointers cleared when disc ejected.
...
Read address on an ejected disc now times out.
Write protect bit in ST3 now set correctly (Sense Drive Status command).
Fixes discs on Windows 95.
2015-06-21 14:51:58 +01:00
TomW
b7947bd68b
Fixed BIOS ROM file offset for IBM VGA. Marked VGA as working.
2015-06-13 20:16:02 +01:00
TomW
63d33deb10
Added Mobile Pentium MMX CPUs (120-300 MHz).
2015-06-13 16:50:53 +01:00
TomW
f3607c2308
Added code generation for :
...
- FCOM/FUCOM
- FSUBR/FSUBRP/FDIVR/FDIVRP
- FLDCW/FSTCW
- FILD/FIST/FISTP (16-bit, 32-bit and 64-bit variants)
- FLD/FST/FSTP double precision
- Integer and double precision variants of FADD/FSUB/FMUL/FDIV
Also added 64-bit readmemq/writememq functions.
2015-06-13 16:14:35 +01:00
TomW
f5a920e2e5
Voodoo buffer swaps now processed when VGA passthrough enabled - fixes Re-Volt.
2015-06-06 14:26:38 +01:00
TomW
a44be6194c
Further fixes to framebuffer read hangs in Voodoo - fixes International Rally Championship.
2015-06-05 20:48:29 +01:00
TomW
685e2460d4
Added RGB555 and ARGB1555 LFB formats for Voodoo.
2015-06-04 21:49:09 +01:00
TomW
75fa159caf
Reworked Voodoo thread synchronisation, helps performance.
2015-06-01 19:17:26 +01:00
TomW
ca7bd3740b
Fixed hang in Voodoo emulation when a framebuffer read occurs while a swap request is pending - fixes Tomb Raider.
2015-05-31 16:43:55 +01:00
TomW
90aa13aa29
Voodoo PCI mapping disabled if base address is zero - fixes Voodoo + Sis496/497.
2015-05-31 12:30:52 +01:00
TomW
4b2eb2e252
Added Power on Setup register (46e8) for OAK OTI-067 - no longer goes to monochrome after reset.
2015-05-31 11:19:06 +01:00
TomW
05de040433
Added codegen_ops_shift.h file missing from rev 247.
2015-05-30 22:31:54 +01:00
TomW
cb2df9e3cf
Flush memory lookup cache when mappings re-calculated - fixes soft reset on AMI 386 clone.
2015-05-30 20:25:59 +01:00
TomW
880bec1ea0
FDC now implements write protect error correctly.
2015-05-30 17:35:39 +01:00
TomW
9061c5d2fc
Added code generation for :
...
- TEST immediate
- register versions of NOT and NEG
- fixed shift versions of SHL, SHR and SAR
- MOVZX and MOVSX
- LEA
- CMP with memory destination
- JL, JNL, JLE, JNLE, JBE, JNBE
2015-05-30 17:08:54 +01:00
TomW
6d95f00c36
POP SS correctly disables interrupts on the next instruction.
2015-05-20 20:52:42 +01:00
TomW
62b2bf03aa
Implemented Voodoo pixel pipeline-processed framebuffer writes - fixes at least Jedi Knight and Populous The Beginning
2015-05-20 20:30:02 +01:00
TomW
52a27a9256
FPU copy should now work.
2015-05-18 20:33:33 +01:00
TomW
226b63d682
Fixed typo in Voodoo alpha combine.
2015-05-14 20:30:15 +01:00
TomW
2c818c4b1b
Increased resolution of Voodoo S/T iterators.
2015-05-12 21:28:32 +01:00
TomW
9e9cf8060a
Added configurable Voodoo framebuffer and texture memory.
2015-05-11 21:31:04 +01:00
TomW
9954a29348
Improved Voodoo subpixel correction.
2015-05-11 19:48:34 +01:00
TomW
2624745c67
Implemented Voodoo mipmapping. Probably buggy.
2015-05-09 20:03:41 +01:00
TomW
1802996443
Added missing FYL2XP1 instruction.
2015-05-03 20:53:18 +01:00
TomW
1b927d9f4b
Writes to code pages now always marked as dirty even if data doesn't change - BeOS now works under recompiler.
2015-05-03 20:36:22 +01:00
TomW
0854c5da89
Fixed crash introducted in rev 234.
2015-05-03 20:31:55 +01:00
TomW
736eab845a
Enabling LFB on ViRGE disables VGA bitplanar functionality.
...
RctFll command now aborts if height is zero.
Helps BeOS.
2015-05-03 16:12:32 +01:00
TomW
d2206f91c9
PIIX command register now honours bit 2.
...
All IDE interrupts now set PIIX IDE Interrupt Status.
Helps BeOS.
2015-05-03 16:10:11 +01:00
TomW
28a2336aae
MOV DRx now loads/stores from 'dummy' DRx registers (BeOS).
2015-05-03 14:42:34 +01:00
TomW
1e5b46c077
Added Voodoo 2x2 dither pattern.
2015-04-29 21:09:17 +01:00
TomW
fe38137074
Fixed Voodoo unfiltered 16-bit alpha-palette textures.
2015-04-28 20:05:19 +01:00
TomW
66d4ac6d9a
Voodoo now allows invalid LFB write buffer select - BreakNeck now works.
2015-04-27 20:36:49 +01:00
TomW
b279cb75e8
Voodoo optimisations.
2015-04-27 17:58:44 +01:00
TomW
8f1f7e01c0
Fixed stupid bug in FPU rounding mode in recompiler, fixed particle explosions in Quake.
2015-04-22 19:26:52 +01:00
TomW
50b74dcb2a
Illegal instruction interrupt caused by disabled FPU has correct return address - Turok works again.
2015-04-21 17:39:04 +01:00
TomW
15bca849c8
Added code generation for first batch of FPU instructions; instructions added are most common instructions used in Quake.
2015-04-19 08:42:04 +01:00
TomW
f1551a8f76
Fixed some warnings in the recompiler.
2015-04-14 20:50:49 +01:00
TomW
9d3a3132ac
Makefile.mingw clean now uses rm instead of del.
2015-04-14 20:43:18 +01:00
TomW
bbf0011e95
Added code generation for JCXZ, LOOP, JE, JNE, JS, JNS, JB, JNB, JO, JNO, JP and JNP.
2015-04-14 20:40:40 +01:00
TomW
1fb4de4507
Dynamic recompiler now works on Linux (32-bit only)
2015-04-11 18:31:51 +01:00
TomW
6caeca2c7c
Tweaks to generated code, should reduce size slightly.
2015-04-11 16:06:50 +01:00
TomW
feaf399a2d
Cache setting now handled correctly on startup.
2015-04-07 18:06:03 +01:00
TomW
644d17fc7f
Fixed bug which ejected discs on hard reset.
2015-04-02 19:54:47 +01:00
TomW
1098b1f870
Fixed stupid typo which broke hard reset with dynamic recompiler.
2015-04-01 19:38:22 +01:00
TomW
a97e89e857
Added code generation for register and immediate PUSH/POP, RET, relative CALL and JMP instructions.
2015-03-30 20:42:33 +01:00
TomW
42155b4c6a
Added correct Voodoo dithering.
2015-03-23 21:03:42 +00:00
TomW
d6908a5450
Slight bugfix to Voodoo subpixel correction.
2015-03-22 13:56:03 +00:00
TomW
95dd53e4d7
Implement more faithful Voodoo PCI FIFO emulation - slight slowdown, but fixes issues with Unreal and probably other games.
2015-03-21 20:41:12 +00:00