Short emulator development history (accordingly to "What's New" and legacy pages):
----------------------------------------------------------------------------------

============================================
SPC/AT/XT/Korvet/BK etc. - New times (2012+)
============================================

Multiplatform engine versions.

//TODO - released versions description (in progress)

[--- Autumn (fall) of 2009 - beginning of 2012 - pause --------------------------]
[--- Sometimes some working on multiplatform emulation core and related things --]


======================================
Script PC - Medieval times (2008-2009)
======================================

Script based engine versions.

//TODO - released versions description (in progress)


========================================
Soviet PC - Ancient history times (2007)
========================================

Primary purpose was to emulate Soviet x86 clones (up to 386-compatibles),
with realistic CPU and hardware emulation, and with real BIOS support.
Was based on Korvet emulation core (due to very similar hardware, except
processor). At early stage i8086(88) CPU core was tested by running
Poisk-1 BIOS and comparing correctness with what BIOS should do
accordingly to its listings.

[-------- November 2007 - May 2008 - pause; transition to new emucore sometimes ------]

Version 0.18.2 (14.11.2007)  (unreleased because started migration to Script PC core):
 - removed all Korvet emulation code (x86 emulator solely now);
 - improved CPU faults emulation (Terminal Velocity now works);
 - fixed keyboard bugs (again :)
 - added scripting language to extend emulation core via scripts.

Version 0.18.1 (07.10.2007)  "Alpha 1"
 - fixed all real-mode bugs, introduced in 0.18 version :);
 - improved emulation of AT-kbd controller i8042 (much less bugs);
 - substantially improved recompilation cache usage. "Cached %" almost 
   always sufficiently high even in demanding applications now;
 - some small optimizations and speedups.

Version 0.18.0 (02.10.2007)  "Alpha 0"
 - added preliminary protected mode emulation (based on info from books,
   techdocs, manuals and my own low-level programming expirience). Not 
   fully completed and almost untested yet, but many DOS applications must
   be runnable,  especialy if used with dos4gw extender (shareware Doom and 
   so on).  Emulation is not very optimized (and as such slower than will be). 
   (Don't forget to activate fast OpenGL-rendering in "Video" menu!)
 - several fixes in PIC and keyboard emulatiion;
 - some fixes in EGA/VGA emulation (640x480x16 mode and so on);
 - small  improvement in "Auto CPU Speed" mode.
 - added selection of recomp. cache size (if "cached %" low, try lager);
 - removed support of old "static" x86 CPU cores (they are very dated);
 - removed BIOS-emulation of XMS (use "himem.sys" for native support);
   NOTES: When trying to boot OSes (Linux and such) better to switch to
   CGA adapter, because VGA emulation is not realy complete yet. Bootable 
   HDD is not supported yet, use bootable floppies for boot OS-es. Ready to 
   use formatted empty HDD images can be extracted from archive
   "hdimages.zip" and must be inserted to C or D drives (A and B - floppy 
   drives). Emulator keep loaded disk images in memory (to undo changes 
   if needed), i.e. they eat piece of memory equal to their size (in addition
   to emulated RAM size and Recompilation Cache). AT keyboard controller
   not fully emulated too and can cause some glitches. And, finally, don't use 
   in this version EMM386/QEMM and other such expanded memory emulators, 
   which use mode VM86 - it is not fully completed and tested yet. Extended 
   memory managers (such as himem) often needed for protected mode 
   applications and fully supported already,  because they worked in pure 
   PMode (use something like "device=himem.sys" and optionally
   "dos=high" in "config.sys"). As I said, this is pure "Alpha" version and 
   as such not very usable yet :)

Version 0.17 (08.09.2007) (Dynarec/JIT)
 - have developed and added dynamic recompilation CPU/FPU x86-32 core.
   Not very fast yet, around 486DX2/DX4  (50-100 Mhz)  on AXP 2 Ghz. 
   Speed mainly depends on emulated code quality ("cachability" of code).
   Frequent usage of self-modified code can noticeably degradate speed.
 - added dynamical versions of CPUs 8086/286/386/486/P5 (only real
   mode supported yet, protected and virtual modes in development);
 - improved timer emulation (now floating-point for maximum precision);
 - several EGA/VGA fixes (will be more in ongoing 0.17x updates);
 - added "select relevant" option for sync frequency and CPU speed;
 - (!) if some real mode software can't work, try it with lower CPU speed;
 - (!) capital of BSSR (Minsk) is 940 years of age now! Happy birthday! :)

[-------- 18 Jul.2007 - 08 Sep.2007 -------] Dynarec/JIT development for X86 CPU.

28.06.2007:
 - attempt to move to sovietpc.old-games.ru (with rollback later due
   my slow home internet at time, which cause big delays with
   their fat blog pages (in comparison with fast upload of pages
   to primary site). Sorry :)

Version 0.16 (27.06.2007-15.07.2007) 
 - improved and fixed CPU i8086, added CPU i286/ i386 (Real Mode);
 - added FPU i387 support (i287XL with CPU i286);
 - optimized emulation kernel (386 up to 40-50 Mhz on AXP 2 Ghz);
 - added experimental support of adjustable CPU Speed (i.e. "Auto" mode);
 - added preliminary emilation of EGA/VGA 256Kb video ;
 - added BIOS-support of HDD (C: and D: drives);
 - added BIOS-support of EMS (expanded memory, for 8086 and better);
 - added BIOS-support of XMS (extended memory, for 80286 and better);
 - XMS-emulation supports HMA (high memory area), which can be used
   by DOS to maximize free base RAM (DOS=HIGH in CONFIG.SYS);
 - added preliminary BIOS-emulation of mouse (very incomplete yet);
 - added support of OpenGL screen rendering (much faster than GDI mode);
 - temporaly removed "Poisk-1" support (no time to keep it up-to-date);
 - some other bugfixes and improvements.

Version 0.15 (01.06.2007)
 - improved CPU i8086 emulation;
 - improved CGA emulation (palette colors, hardware cursor, speed);
 - improved Speaker sound emulation;
 - added autodetection of floppy disk format (by size);
 - added emulation of PC "Poisk-1" (i8086/88) with original ROM support;
 - some other bugfixes and improvements.

Version 0.14 (22.05.2007)
 - added preliminary PC/XT emulation (I8086/CGA);
 - added FAT support to disk manager;
 - added CPU overclocking support (slowdown/speedup);
 - emulator has renamed to "Soviet PC" multi-emulator (for old Soviet computers emulation).


===============================================================
Virtual Korvet - Prehistorical times (2004 - beginning of 2007)
===============================================================

Soviet school computer "Korvet" emulation.
Was designed from scratch, w/o any previous experience in emulation.
At early stage was tested side-by-side with BIOS running in 
Sergey Erokhin emulator (with closed sources at time) - 
thanks to him and to the Korvet Community for the
etalon emulator and collected software and documentation.

Version 0.12(9) (22.04.2007)
 - CPU Z80 completly emulated (in documented part) and tested with several utils/ROMS;
 - file names of files which imported via disk manager are more compatible with CP/M now.

Version 0.12 (15.04.2007)
 - added disk manager to view and edit floppy disk images (Ctrl+DblClick); 
 - user now asked about preserving or discarding floppy changes on emulator exit;
 - added partial CPU Z80 emulation (8080-compatible instructions).

Version 0.11 (09.04.2007)
 - fully emulated 3-channel system timer i8253(54);
 - rewrited sound emulation and synchronization, all timer modes have supported now;
 - added support of FDC and system timer interrupts;
 - Korvet almost completly emulated now.

Version 0.10 (20.03.2007)
 - complete emulation of interrupt controller (PIC) i8259A (only video IRQ line attached to it currently);
 - implemented stubs for unemulated modes of system timer (some non-working games become workable now).

Version 0.09 (18.03.2007)
 - added emulation window resizing support.

Version 0.08 (15.03.2007) (come back)
 - simplified PC Speaker usage and installation (with the help of
   direct-port access driver "UserPort" (ñ) Tomas Franzon).

Version 0.07 (25.12.2005) 
 - fixed white background on some buttons in new OS-es; 
 - fixed save/load state related bug.

(-------- 2005 - 2006  - pause --------)

Version 0.06a (01.10.2004)
 - floppy disk writing support;
 - Korvet ROM selection support;
 - text mode now supports switch of char size (32 or 64 chars per line);
 - up to 4x VRAM pages supported now (192 Kb of video memory totally);
 - inversion attrubute could be changed via PPI also (used by some software);
 - more exact VBLANK interval timings;
 - fixed some keys on keyboard picture.

Version 0.06 (01.10.2004)
 - floppy disk writing, ROM selection, 32/64 text modes, 4 vram pages;
 - some fixes and improvements.

Версия 0.06 (22.09.2004): 
 - preliminary WaveOut sound generation support implemented (i.e. via sound card);
 - experimental support of saving and loading states;
 - floppy disk image size no more strictly checked (to allow "games1.zip" usage).

Версия 0.05 (15.09.2004): 
 - emulation core and synchronization have rewritten and optimized (almost completly);
 - added "disable synchronization" ability (to gain maximum possible FPS);
 - fixed floppy controller emulation bug (notorious moving from zero track);
 - addes support of the all 32 memory map configurations of Korvet;
 - emulated all keyboard registers (TREAS etc. now work properly);
 - fixed some amount of small emulation bugs;
 - so emulator is even more usable now :)

Версия 0.04 (10.09.2004): 
 - fixed problems with sound generation (RALLY,ANTON,MAFIA etc.);
 - added preliminary sound synchronization support (relatively to real time);
 - so emulator is mostly usable now.

Версия 0.03 (09.09.2004): 
 - fixed Korvet text screen bugs (chars has correct colors in XART, ANTON, TROLL and so on);
 - base address of interrupt table is changeable now (BOMBER, PACMAN are workable now);
 - added support of interrupt masking (TETRIS is workable now);
 - so far, most of games correctly work with this version of the emulator.

Версия 0.02 (08.09.2004)
 - emulated VRAM reading support (both modes);
 - fixed CPU emulation (was DAA instruction bug, which was broking OLD.COM test);
 - improved keyboard emulation (ESC and other control keys);
 - added support of text mode attributes for Korvet text screen (based on tech docs);
 - added support of alternate character set for Korvet text screen;
 - VBLANK flag now switched on each frame (Karate, XART, Anton now more or less workable); 
 - emulation now paused when entering main menu (to prevent timer desynchronization);
 - "key down/alt2" no more the same as "alt5" key by default;
 - emlulator correctly passed primary tests from OLD.COM.

Version 0.02 (08.09.2004)
 - VRAM reading, text mode attributes, VSYNC;
 - some bugfixes and impuvements.

Version 0.01 (30.08.2004)
 - GUI completly redone, virtual keyboard have drawn;
 - internal sychronization using CPU timer;
 - added preliminary sound support (via PC Speaker directly);
 - some optimizations of Korvet screen rendering;
 - first public release.

Version 0.00 (10.08.2004)
 - Korvet emulator development started, version for internal usage;
 - almost no interface, except two buttons on window;
 - video memory dumped to disk as bitmap by key press;
 - emulated CPU i8080, basic emulation core.

--------------------------------------------------------------------------------



Web Hosting