Эмулятор 8086 ПК (чисто в vb6) – VB 6.0 – База кода

Скачать

Название (оригинал): A 8086 PC emulator (Pure VB6)

Описание:
Англ (оригинал)Hello, I’ve been working on this 8086 PC emulator written completely in pure VB6, called vb8086. So basically, this emulator supports the basics of the old 8086 style PC hardware platforms. The CPU instructions are totally emulated, minus the bug I mentioned. The i8253 timer chip is emulated, as well as the i8259 interrupt controller. Disk functionality is emulated for both floppy and hard drives through interrupt 13h calls. Many games run very well in it right now, but some are crippled by the IMUL/IDIV bug. One in particular that runs awesomely is Ultima 6. I’ve beaten the whole game inside my emulator without any issues. Ms Pacman runs well too, and a lot of other older ones. The PC speaker is emulated kind of poorly, but it’s there.
As far as video emulation support, it supports the CGA video and text modes, as well as 320×200 8-bit VGA/MCGA mode.
So, I’m providing all of the source code as well as a few data files with the font and BIOS. I didn’t include the .EXE to comply with the forum rules, but you can easily compile it yourself. Just load the vb8086.vbp file and compile. If you get any errors compiling or running, run the resreg.bat file with will register dx8vb.dll and comdlg32.ocx with Windows and try again.
I also included a blank 20 MB hard drive image to use in the emulator with the bare files for booting DOS 6.22. Use a utility like WinImage to insert files for DOS applications or games into the file drive0.raw, so that you can run them in the emulator.
I’d love feedback. Being VB6, it’s not very fast. You’ll want at least a 3 GHz CPU.
Here are all the files: http://s000.tinyupload.com/index.php…25203733885475 (about a 1.4 MB download, expands to over 20 MB mostly just from the blank hard drive image)
Please see: http://www.vbforums.com/showthread.php?697199-Pure-VB6-8086-PC-emulator!
Here are some screenshots of it running just to give an idea of what it looks like and can do:
Рус (машинный)Здравствуйте, я работаю на этом эмуляторе 8086 компьютера полностью написана на чистом в vb6, называется vb8086. Так что в принципе, этот эмулятор поддерживает основы старого 8086 стиль аппаратных платформ ПК. Инструкции процессора полностью эмулируется, за вычетом ошибок я уже упоминал. В чип таймера i8253 эмулируется, а также контроллера прерываний i8259. Функциональность диск эмулируется как для гибких и жестких дисков через прерывания 13h звонки. Многие игры очень хорошо работают в нем сейчас, но некоторые из них подкосил IMUL/исключением idiv ошибка. В частности, что работает грозно это Ультима 6. Я бил всю игру внутри эмулятора без каких-либо проблем. Мисс Пакман работает хорошо, и много других старых. Динамик ПК эмулируется вроде плохо, но она есть.
Насколько поддержка эмуляции видео, он поддерживает РГР видео и текстовом режимах, а также 320×200 8-битный VGA и/ГАТМ режиме.
Итак, я обеспечиваю весь исходный код, а также несколько файлов данных с помощью шрифта и BIOS. Я не включают .Exe в соответствии с правилами форума, но вы можете легко скомпилировать его самостоятельно. Просто загрузите vb8086.вбп файл и компилировать. Если вы получаете любые ошибки компиляции или запуска, запустить resreg.Bat файл с пропишут dx8vb.dll и comdlg32.ocx с Windows и попробуйте снова.
Я также включил пустой 20 Мб Жесткий диск изображения для использования в эмуляторе с голыми файлы для загрузка DOS 6.22. Воспользоваться утилитой типа помощью winimage, чтобы вставить файлы для DOS приложений или игр в drive0 файл.RAW, так что вы можете запускать их в эмуляторе.
Я люблю обратную связь. Будучи в vb6, это не очень быстро. Вам понадобится как минимум 3 ГГц.
Здесь собраны все файлы: http://s000.tinyupload.com/index.php…25203733885475 (около 1,4 Мб Скачать, расширяется до более чем 20 Мб в основном из пустой образ жесткого диска)
Пожалуйста, см.: http://www.vbforums.com/showthread.php?697199-Pure-VB6-8086-PC-emulator!
Вот некоторые скриншоты он работает просто чтобы дать представление о том, как это выглядит и можете сделать:

база кода