Skip to content

NiwakaDev/X86_EMULATOR_2

Repository files navigation

X86_EMULATOR_2

X86_EMULATOR_2 is a x86 emulator written in C++ .

Haribote OS

demo

スクリーンショット 2021-12-01 8.35.34.png

富士山

FreeDOS(REAL MODE)

FreeDOS

osz

スクリーンショット 2021-12-12 21 33 31

diagnostic code Status
0x01(Conditional jumps and loops) passed
0x02(Quick tests of unsigned 32-bit multiplication and division) passed
0x03(Move segment registers in real mode) passed
0x04(Store, move, scan, and compare string data in real mode) passed
0x05(Calls in real mode) passed
0x06(Load full pointer in real mode) passed
0x08(GDT, LDT, PDT, and PT setup, enter protected mode) passed
0x09(Stack functionality) passed
0x0A(Test user mode (ring 3) switching) passed
0x0B(Moving segment registers) passed
0x0A(Test user mode (ring 3) switching) passed
0x0C(Zero and sign-extension) passed
0x0D(16-bit addressing modes (LEA)) passed
0x0E(32-bit addressing modes (LEA)) passed
0x0F(Access memory using various addressing modes) passed
0x10(Store, move, scan, and compare string data in protected mode) passed
0x11(Page faults and PTE bits) failed

Build

make

Run

Run Haribote OS

./x86 -i haribote.img

Run FreeDOS

./x86 -i fd.img

Run osz

./x86 -i full.img

Language and Library

c++14, SDL2

test : googletest

How to use mouse

Mouse into the emulator

Click mouse on the emulator 

Mouse out of the emulator

left-ctrl+left-alt+g

※Press left-ctrl+left-alt first, then g .

Test

./test.sh

or

make clean
make x86_test
./x86_test

Reference

Real Mode

https://bitbucket.org/7shi/8086run/

FONT

https://github.com/dhepper/font8x8

Contact

Feel free to contact me .

フロッピーディスクの音源について

※これは廃止になりました。

OtoLogicの素材を使用(https://otologic.jp/)

フロッピーディスクの音源ファイル:Floppy_Disk_Drive02-1(Operating_Noise).mp3