Skip to content
This repository has been archived by the owner on Apr 15, 2023. It is now read-only.

sksat/emu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

emu

master: Build Status develop: Build Status

https://github.com/sk2sat/vm の設計とか色々見直して新しく作っているx86エミュレータ

ビルド

make

ビルドには以下のオプションが指定できます.

  • BUILD_TYPE: ビルドのタイプを指定できます. DebugReleaseが選択可能です. Debugを指定すると,DOUT()マクロによるデバッグ情報がエミュレーション時に表示されます. Releaseを指定すると,同マクロを無効化してコンパイルします. デフォルトではDebugが指定されています.

サンプル実行

make run

サンプルのバイナリのエミュレーションのテストが行えます. これには以下のオプションが指定できます.

  • ARCH アーキテクチャが選択できるような見た目をしていますが気のせいです. x86しか指定できないと思って下さい.

  • MEMSIZE メモリサイズを指定できます. 単位はMBです. デフォルトでは4MBになっています.

  • BIOS BIOSを指定できるような見た目をしていますが,これも気のせいです. 必ず--junk-biosを指定してください.

  • FLOPPY フロッピーディスクイメージが指定できます. ようはブートデバイスを設定するところです. --fda hoge.imgのように指定してください.

  • UI ユーザーインターフェースを選択できます. デフォルトでは--guiが指定されています. UI=""のようにすると,ウィンドウを出さないで実行します.

エラー

全然実装が進んでいないため、よくエラーが発生します。ここにはエラーの種類のメモをしておきます。

not implemented

このエラーは、実装されていない動作が要求された時に発生します。このエラーのうち、

not implemented: code = 16進数

となっているものは、16進数が示す機械語が実装されていない、というエラーです。