Giter Site home page Giter Site logo

helloworld-pc98's Introduction

HelloWorld-PC9801

OSなしのPC-98シリーズ(以下PC98)で実行できるHelloWorldブートローダです。
ついでにBeepを鳴らすおまけ付きです。

実行するには

hello98.TFD をフロッピーに書き込めばPC98で使えます。
しかし、ほとんどの人がPC98本体を持っていないと思うので、エミュレータをおすすめします。
例えば、 「Neko Project II」 であれば、フロッピードライブに hello98.TFD を設定して起動すればHelloWorld出来ます。

「Neko Project II」の導入についてはこちら
インストールガイド [導入編]

実機で実行するなら

PC98実機を持っている酔狂な方は以下の手順で実行できます。 まず、フロッピーディスク(以下FD)をPC98でフォーマットします。
次に、「Read/Write FD」などで hello98.TFD をFDにバイナリ書き込みします。
この時注意しなければいけないのが、書き込みを行うFDドライブは「3モードフロッピーディスクドライブ」というものでなければなりません。
手に入りやすいものであれば以下のようなものがあります。

Amazon
BUFFALO FD-USB(USB接続3.5インチフロッピーディスクドライブ)

あとはそのFDをPC98に差し込んで起動するとHelloWorld出来ます。


ビルド方法

make.bat を実行するとビルドされます。
※この時、nask.exe を常に管理者権限で実行するように設定していないとエラーになります。  

ビルドの流れ

nask.exe はNASM風のアセンブラです。
hood は今回のプログラムにはあまり関係ないFAT12フォーマットのおまじない(論理ボリューム)バイナリです。

やってることは以下のことだけです。

  1. hello98.nashello98.sysnask.exe でアセンブリします。
  2. hello98.syshood をバイナリ結合して hello98.TFD とします。

プログラムについて

プログラムのソースは hello98.nas のみです。
中身の具体的な説明はほとんどソースコードのコメントに書いています。
コメントについている (ハード-001) , (BIOS-001) などは、「PC‐9800シリーズ テクニカルデータブック」の参照ページです。

Amazon
PC‐9800シリーズ テクニカルデータブック
PC‐9800シリーズ テクニカルデータブック〈HARDWARE編〉
PC‐9800シリーズ テクニカルデータブック〈BIOS編〉

「興味はあるけど本を買うのはなぁ・・・」って人は書籍名でググるといいことがあるかもしれません。


謝辞

アセンブラの NASK は、「OSASK」OSの開発や「30日でできる! OS自作入門」の著書を行なっている 川合秀実 様 が公開しているものです。
改変・再配布自由ということでしたのでリポジトリに含ませて頂きました。
ここに感謝の意を表します。

helloworld-pc98's People

Contributors

takedahiromasa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

comekome

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.