Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/niwakadev/x86_emulator_2
x86 emulator written in C++
https://github.com/niwakadev/x86_emulator_2
emulator ia-32 x86 x86-32 x86-emulator
Last synced: about 2 months ago
JSON representation
x86 emulator written in C++
- Host: GitHub
- URL: https://github.com/niwakadev/x86_emulator_2
- Owner: NiwakaDev
- License: mit
- Created: 2021-11-15T11:21:01.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-07-25T13:44:08.000Z (5 months ago)
- Last Synced: 2024-10-18T21:21:29.576Z (2 months ago)
- Topics: emulator, ia-32, x86, x86-32, x86-emulator
- Language: C++
- Homepage:
- Size: 73.4 MB
- Stars: 43
- Watchers: 5
- Forks: 2
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# X86_EMULATOR_2
X86_EMULATOR_2 is a x86 emulator written in C++.
![demo](https://user-images.githubusercontent.com/61189782/144729289-fe16a09d-d5dd-4b7d-8583-3b19e9381b3d.gif)
![スクリーンショット 2021-12-01 8.35.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373549/39b0e3eb-4877-4f96-b63b-30673e38221f.png)
![富士山](https://user-images.githubusercontent.com/61189782/143998297-d17dd067-b59a-4762-8bde-caebc8ca174b.png)
FreeDOS(REAL MODE)
![FreeDOS](https://user-images.githubusercontent.com/61189782/145657637-3331b9cf-021e-4a1e-867c-b1b49b31a852.png)
![スクリーンショット 2021-12-12 21 33 31](https://user-images.githubusercontent.com/61189782/145712414-eed58221-06ef-42d8-9c6f-28fad542ae25.png)
test386
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
```
./x86 -i os_image
```This project includes `full.img` and `haribote.img`. You can immediately run both of them on the emulator.
Language
c++14How to use mouse
Move mouse into window
```
Click mouse on the window
```Move mouse out of window
```
left-ctrl+left-alt+g
```※Press left-ctrl+left-alt first, then g.
Reference
Real Mode
https://bitbucket.org/7shi/8086run/FONT
https://github.com/dhepper/font8x8Contact
Feel free to open an issue.
Welcome any content!!