bochs環境在Mac下 安裝

$ brew install bochs

安裝完後

vim ~/.bash_profile
將下面2行加入mac環境

export BXSHARE="$HOME/opt/bochs/share/bochs"
export PATH="$PATH:$HOME/opt/bochs/bin"

source .bash_profile Mac重新加載配置

拷貝 ~/opt/bochs/share/doc/bochs/bochsrc-sample.txt 名爲bochsrc.txt
,修改配置文件,找到如下配置行 並修改。

romimage: file=$BXSHARE/BIOS-bochs-latest 

vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest

# 1.44=磁盤鏡像位置
floppya: 1_44=boot.img, status=inserted

# 從軟盤啓動
boot: floppy
#輸出日誌
log: bochsout.txt

# 置鼠標不可用
mouse: enabled=0
#鍵盤配置
keyboard: keymap=#$BXSHARE/keymaps/x11-pc-us.map
#內存容量
megs: 32

文件中有2行需要註釋掉,行前面加 # 如下

#sound: driver=default, waveout=/dev/dsp. wavein=, midiout=
...
#ata0-master: type=disk, mode=flat, path="30M.sample"

接下來創建磁盤

首先,bximage命令創建一個軟盤鏡像boot.img(對應配置文件中的floppya):
在這裏插入圖片描述

這裏 寫一個例子 在屏幕輸出hello,world 來測試模擬器。

    org 0x7c00
    jmp entry
    db 0x90
entry:
    mov ax,0
    mov ss,ax
    mov sp,0x7c00
    mov ds,ax
    mov es,ax
    mov si,msg
putloop:
    mov al,[si]
    add si,1
    cmp al,0
    je fin
    mov ah,0x0e
    mov bx,15
    int 0x10
    jmp putloop
fin:
    hlt
    jmp fin
msg:
    db 0x0a,0x0a
    db "hello world!"
    db 0x0a
    db 0
    times 510 - ($-$$) db 0
    dw 0xaa55

編譯

nasm boot.asm -o boot.bin

將引導程序寫進軟盤鏡像

dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc

啓動bochs

bochs -f bochsrc.txt #-f 加上配置文件的絕對路徑
在這裏插入圖片描述

在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述在這裏插入圖片描述
bochsrc.txt下載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章