0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

実機で確かめるBIOSリセットベクタの動作

Posted at

目的

BIOSはCS=F000h, IP=FFF0hから実行を始める。
MS-DOS及びブートローダからこの行へ跳び、パソコンが再起動するか実機で動かし観察する。

MS-DOS上で実験

実行すると一度だけ再起動してMS-DOSが起動した。
image.png
image.png

nasm -f bin test.asm -o test.com
test.asm
org 0x100

start:
    jmp 0F000h:0FFF0h

    ; DOS終了
    mov ah, 0x4c
    xor al, al
    int 0x21

ブートセクタで実験

ブートセクタに書いている為、無限に再起動を繰り替えした。
image.png
image.png

lsblk
sudo umount /media/test/5400-8E31
sudo dd if=test2.bin of=/dev/sdb bs=512 count=1 conv=notrunc
test2.asm
[org 0x7C00]
bits 16

start:
    jmp 0xF000:0xFFF0

times 510-($-$$) db 0
dw 0xAA55

実行環境

実験環境:
・PC: Pocket8086
・CPU: 8086
・BIOS: PC-XT System BIOS
・OS: MS-DOS 6.22

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?