- Renamed `cpp11_thread.cpp` to `thread.cpp`
- Removed features that are only supported by Win32 threads (`thread_wait` with timeout and mutex with spinlock)
- Fixed formatting in `thread.cpp`
Added the AT&T 2xc498 Precision RAMDAC.
Added 1MB configurations to the Cirrus Logic GD5434 as well as re-organized the memory size options of the other Cirrus cards.
Separated the et4000w32/i blitter from the standard et4000w32p blitter and properly implemented the X/Y Count route.
Added several Diamond Cirrus cards.
Added Number Nine S3 cards (868 and 968-based).
Fixed the WD90c30 1MB modes.
Re-organized the video card names.
- Remove icon functions from plat.h.
- Fix some indentation problems.
- Remove unused parameter from win_stbar.c
- Rename win_lang.c to win_progsett.c
- Remove stub functions from unix.c
- Move win_load_icon_set() to ui_init()
- Replace the translated texts to English, and let the translators translate them
- Fix the control IDs in dialogs.rc.
- Use the requested solution in win_icon.c for setting the array variables.
Added a timer to improve perfomance of the 3D engine.
Made the Trio3D/2X available for all.
Reserved bit 2 of CR33 is now always set to make sure Win95's Trio3d/2X drivers work along with a workaround for the memory size.
Added preliminary DMA bus master capabilities.
This is a portable computer based around 80C86 processor and Chips &
Technologies chip set. It features a 640x200 monochromatic LCD display,
and up to two 720k 3.25" floppy drives.
It can optionally contain a hard drive controller along with 20M 3.25" MFM
hard drive in place of one floppy drives, which is not emulated yet.
Also not emulated is the expanded memory over 640K.
At least two versions of BIOS have been seen in the wild -- one from
89/09/04 another from 09/12/20.
The MD5 checksums of the ROM images (a pair of chips for each BIOS versions
and a character ROM) are as follows:
SHA1(ce39ab220de25bbd824dbd5c7411c88f3a8d7430) =
roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Even.rom
SHA1(9b374cf5aa48186577293c3a83250cdc1aed7c9a) =
roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Odd.rom
SHA1(57015c8b85aecb10890d4ddd4a0d133e1ba4ca49) =
roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_122089_Even.rom
SHA1(1d3217e9fde7410167cd462ad82b360bf546b9d0) =
roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_122089_Odd.rom
SHA1(59ff86fcfea479b02075c32da12c6c1579d71df5) =
roms/machines/v86p/v86pfont.rom
The 82C425 is a CGA-compatible display controller chip. On top of being
able to drive a regular CRT display like an ordinary CGA card, it can
be configured to drive a monochrome 640x200 LCD panel instead.
The chip along with a LCD panel are notably used in the Victor V86P
laptop comupter.
When driving a monochrome LCD, the controller is able to employ some clever
tricks to compensate for he lack of color: by alternately turning dots on
and off with various duty cycles it can achieve displaying 4 or 8 shades
of gray. It can also enhance contrast between the text glyphs and their
background when it's less than the configured minimum (with "SMARTMAP"
algorithm).
The emulation is fairly complete. The 320x200 graphical mode uses 4 gray
shades along with stretching the pixels horziontally much like the real
hardware would. SMARTMAP is implemented for text mode and also matches
the real hardware pretty closely.
The missing bits are:
* Configurable blink rates
* Mapping the character map into host address space
The code is based on the T1000 display controller emulation and
still bears strong resemblance to it.