Commit Graph

914 Commits

Author SHA1 Message Date
OBattler
a491b3a35c Reverted the meaning of video_fullscreen_first to what it used to be. 2021-09-18 21:33:13 +02:00
OBattler
0f69aa7ff7 Some fixes, fixes PCjr when the emulator is started in full screen, fixes #1702. 2021-09-18 15:24:00 +02:00
OBattler
065b8cc0c3 Using MoveWindow instead of SetWindowPos to move the window now, which actually works. 2021-09-18 00:01:39 +02:00
David Hrdlička
719d155393 cmake: fix pthread linking on Windows 2021-09-15 12:50:33 +02:00
OBattler
df30b47aa7 And fixed the behavior of that. 2021-09-14 22:20:20 +02:00
OBattler
07eb764df6 Locking a window to a specified size now also makes it remember the position, closes #1683. 2021-09-14 22:17:47 +02:00
OBattler
3c2ac29c68 Switched threads to pthread for all platforms (on Windows, you can compile with Win32 threads using PTHREAD=n). 2021-09-14 21:58:15 +02:00
ts-korhonen
bce7c07880 Make OpenGL 3.3 renderer use only one memcpy 2021-09-14 08:56:26 +03:00
OBattler
96faa28eeb Removed the useless y1 and y2 parameters from the renderers' blit functions (and other places). 2021-09-13 23:19:10 +02:00
OBattler
7473a1c4b9 Fixed the OpenGL 3.3 renderer. 2021-09-13 21:28:44 +02:00
OBattler
13dc05cfd2 Removed the useless double-buffering in video/video.c, improves performance and reduces RAM usage. 2021-09-13 21:02:15 +02:00
David Hrdlička
2e58958f38 mark us as win10 compatible 2021-09-10 20:31:04 +02:00
OBattler
0c4003caa3 Added the C&T 82C100 chipset needed by the Victor V86P. 2021-09-07 23:41:17 +02:00
Lubomir Rintel
f482ad54f6 Add the Victor V86P Machine
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
2021-09-07 21:34:18 +02:00
Lubomir Rintel
a05f5d493f Add Chips & Technologies 82C425 CGA LCD/CRT controller emulation
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.
2021-09-07 21:34:18 +02:00
Miran Grča
2d6194aecc Merge pull request #1644 from 86Box/tc1995
S3 & TVP3026: Part 1.
2021-09-02 20:17:06 +02:00
OBattler
84f4b8cac7 Added a bunch of parameters (including one to specify custom ROM path), fixed a warnings, removed excess commented out code from video/vid_voodoo.c, and made Makefile.mingw quiet again. 2021-09-02 20:15:46 +02:00
TC1995
296df745ed S3 & TVP3026: Part 1.
Initial implementation of the tvp3026 ramdac, (clock still missing, will be added later).
2021-09-02 16:04:58 +02:00
OBattler
448aec5d40 SDL now makes sure the mutex is not NULL before attempting to lock it. 2021-09-02 15:33:17 +02:00
Miran Grča
e4197b8ca4 Merge pull request #1631 from laciba96/master
Add support for overridable VM name
2021-09-01 15:02:10 +02:00
OBattler
64aee0481c Removed the non-working keyboard hook, and with it, the NOHOOK make parameter. 2021-08-29 13:59:05 +02:00
David Hrdlička
139268c749 fix copyright sign in version information 2021-08-29 08:49:46 +02:00
David Hrdlička
88295f807c cmake: fix pure clang/win32 build 2021-08-29 07:23:33 +02:00
Ompronce
2596c0143c Make the Innovation SSI-2001's IO address configurable (#1636) 2021-08-29 06:40:21 +02:00
OBattler
4222570553 The makefile now links libgcc on ARM64. 2021-08-27 13:49:27 +02:00
OBattler
ddc7c5b78a Reorganized some CPU structures a bit and fixed inappropriate behavior of some mem.c functions on 64-bit binaries (and made mem.c aware of ARM64 as well), fixes both 64-bit recompilers, closes #1215. 2021-08-27 13:31:47 +02:00
Laci bá
13ff9af7e1 Add support for overridable VM name
- A global variable added as vm_name
- This variable can be filled with the `--vmname "Name"` or `-V "Name"` parameter.
- If there are no such a parameter definied this variable will filled up with the directory name.
- The Discord module displays this global variable, as VM name.
- Various 86Box managers can use this feature to display fancy VM names, instead of GUID folder names.
- This variable can be easily used later for adding cool things, like the VM name in title bar, etc.
2021-08-26 20:30:37 +02:00
Miran Grča
6f639cd866 Merge pull request #1587 from lemondrops/feature/sndgain
Make the sound gain dialog accessible from the menu bar
2021-08-05 16:23:08 +02:00
Alexander Babikov
709357f668 The sound gain dialog is now accessible from the menu bar in the "Tools" menu 2021-08-05 14:56:25 +05:00
Alexander Babikov
9632f99552 Make the Game Blaster's I/O address configurable 2021-08-05 03:54:19 +05:00
RichardG867
9d953623e5 Merge branch 'master' of https://github.com/86Box/86Box into feature/savquest 2021-08-03 21:45:54 -03:00
OBattler
2cdd6fec56 And another typo fix in win/win_settings.c, reported by lemondrops. 2021-08-02 22:14:29 +02:00
OBattler
6b8d4a21b6 Fixed a SCSI-related bug in win/win_settings.c . 2021-08-02 20:32:35 +02:00
OBattler
43aed39016 Fixed a compile-breaking typo in win/win_ui.c . 2021-07-30 19:37:50 +02:00
OBattler
9050fb3a08 If the graphics card is automatically set to "None", the configure button is now disabled, closes #850. 2021-07-30 19:33:23 +02:00
OBattler
79f83cc928 Fixed "Hide status bar" check mark, fixes #1569. 2021-07-30 19:17:46 +02:00
OBattler
03068f9ee3 Removed the last leftovers of IDM_CONFIG_LOAD and IDM_CONFIG_SAVE, should fix compile. 2021-07-30 04:45:05 +02:00
OBattler
d1991ac763 Added the ability to hide the status bar, closes #1530. 2021-07-30 04:01:46 +02:00
OBattler
24002d1882 More cartridge-related fixes. 2021-07-30 02:08:07 +02:00
RichardG867
4c307fd945 Merge branch 'master' of https://github.com/86Box/86Box into feature/savquest 2021-07-29 20:00:30 -03:00
OBattler
347a8fa011 Fixed win_stbar.c warning reported by lemondrops and committed the icons. 2021-07-30 00:41:05 +02:00
OBattler
7144d32960 Removed from the makefile that, which was not supposed to be there. 2021-07-29 20:42:06 +02:00
OBattler
949dea3524 Added IBM PCjr cartridge support. 2021-07-29 20:34:55 +02:00
OBattler
026bed4e53 Fixed cassette ejecting and made write protection actually work, closes #1564. 2021-07-29 05:36:10 +02:00
OBattler
ca6863540c Some fixes. 2021-07-28 03:29:14 +02:00
OBattler
6cad6cc784 One thing I forgot. 2021-07-28 00:59:11 +02:00
OBattler
45b3e13450 Cassette improvements and fixes. 2021-07-28 00:58:19 +02:00
OBattler
24a6d5051c .WAV and .RAW are now recognized cassette file types, equivalent to .PCM, must be 44.1 kHz, 8-bit, mono. 2021-07-27 06:20:19 +02:00
OBattler
827065c0bc Ported the cassette emulation from PCE, closes #835. 2021-07-27 06:12:09 +02:00
RichardG867
b5e0cbd152 Merge branch 'master' of https://github.com/86Box/86Box into feature/savquest 2021-07-23 00:55:28 -03:00