Help us understand the problem. What is going on with this article?

「30日でできる! OS自作入門」をMac向けに環境構築する

More than 1 year has passed since last update.

tl;dr

https://github.com/tatsumack/30nichideosjisaku のREADMEを読んで環境構築する

背景

「30日でできる! OS自作入門」はWindowsでの開発が前提で書かれているが、先人たちのおかげでMacでも環境構築ができる。
https://github.com/sandai/30nichideosjisaku

がしかし、14日目の「高解像度にしよう(1)」のharib11dを動かしたところ、画面が真っ暗になり、小一時間ハマった。
同様の症状が出ていた記事(http://lv4.hateblo.jp/entry/2012/06/17/165640) を発見したが、同じようにVRAMの番地を変更してもダメ。
エミュレータのバグを疑って、Q.appではなく、homebrewからqemuをインストールして動かしたところ、表示されるようになった。

後に続く人たちが同じハマり方をしないように、オリジナルのレポジトリからforkして、qemuを使うようにMakefileを変更した。
https://github.com/tatsumack/30nichideosjisaku/blob/master/z_tools/qemu/Makefile

El Capitan 10.11.2では動くことを確認したが、Sierraではまだ確認できていないので気が向いたら確認する。

追記 (2018/03/22)

macOS Sierra(10.12.5)、qemu(2.5.0)で動かしたところ、harib11dで真っ黒画面になっていた。
asmhead.nasで指定しているVRAMのアドレスを0xfd000000に変更したところ表示されるようになった。

asmhead.nas
MOV    DWORD [VRAM],0xfd000000

追記 (2019/01/19)

qemu 3.1.0で-localtimeオプションが廃止されたので、qemuに渡すオプションを修正。
また、必要なツール群をレポジトリに抱き込むようにして、レポジトリをcloneすればだいたい動くようにした。

参考

http://qiita.com/chojuku/items/fea8adbb63410590e123
http://d.hatena.ne.jp/sandai/20120728/p2

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした