LoginSignup
2
0

More than 3 years have passed since last update.

(自論)コンピューターにおけるエンジンといふモノ

Last updated at Posted at 2020-05-03

プログラミングに関して、なるべく一般人が馴染みやすい話を
書いていこうと思う。

前には、下記のプログラムの書き出しの話を書いた。
https://qiita.com/motochan1969/items/efec9bfa5a8fca27a32b

今日はちょっと趣旨が違うのであるが、
プログラミングというのは、はっきり言えば、キリの無い世界だという事を
まず、最初に書いておきたい。

なぜ、こんな話を書くかと言えば、自分が最初に触った
パーソナルコンピュータ、PC8001の話である。

コロナ休暇の中、何気にネットで調べていたら、こんな記事に出会った。
https://twitter.com/PasocomMini

なんと40年ぶりに、NECのパソコンの復刻版が出たと言うではないか!

もうかなり懐かしくなり、その後、自分の作ったBASICマガジンの
記事を探し回り、下記のブログに上げて頂いた方に
直接コンタクトして、懐かしい自分の投稿の記事のPDFを
頂くことが出来た。
http://relaxwind.info/88mag/be-maga/pc-8001/hagetaka/hagetaka.html

001.png
p4.png
p5.png
p6.png

脱線しまくるが、後半のZ-80のマシン語は、
当時、ネットなどの情報もなく、ひたすら芸夢狂人さんの、
ギャラクシアンのコードを、逆アセンブラでノートに書いて
勉強したものだ・・・

それと2パスアセンブラというのは、ROMで提供されていた奴だ。

ラベル付き逆アセンブラなんていうのも懐かしい。
昔はロール紙に長々と、プリンターで印字したものだ。
(すべては、ノスタルジックな自分の思い出に浸っている)

さて、このゲームを作った35年以上も前であるが、
はっきり言って、ゲームの面白さや、プログラム作成の
エッセンスなんていうものは、時代を経ても
全く変わっていない。

自分の未開のことを、自分で調べて、やり遂げる
それだけの知的好奇心の遊びだ。

あのころは、16進数のコードを見ても、
何の暗号かも分からず、ただただニーモニック表を眺めながら
解読をしていたのだ。

しかし、考えてみたら、この16進数のアセンブラの羅列なんて、
いまのエンジニアが、いったいどこまで理解できるのであろうか?

かなり話題が脱線したのであるが、
要するにプログラム作りなどと言うものは、
結局は、その時代にある、できる物をもがき集めて
ただ、ただ、シコシコと頑張るものなのである。

最近になって、NODE.JSを触り始めたのであるが、
プログラムというものは、コンピュータと言うマシンの
パフォーマンスをどこまで引き出せるのか?
やはり、それに尽きるのである。

このレースゲームもそうだが、結局は当時のBASICでは
反射神経が要求されるような、エキサイトなゲームを
作ることが限界だったので、メインルーチンは機械語で書いている。

高速に画面がスクロールしたり、乱数で左右に揺れたり、
それが動いた時の興奮はいまでも、忘れることができない。

コンピュータの性能が上がり、
最近はスクリプトでも結構早く動く時代になったが、
いまなお、それを担うソフトウェアの部分が大きい。

NODE.JSもまさに、このようなエンジンを積んでいるのだ。
https://ja.wikipedia.org/wiki/V8_(JavaScript%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3)

そんな訳で、自分の過去に作ったレースゲームと、
コンピュータのエンジンというものに触れてみた。

プログラムの前に、マシンの性能や、積んでいるエンジンなど
そういうところを意識しなくてはいけない。

それにしても、最近は時代の進歩がすさまじいと感じる。

だって12万以上もしたパーソナルコンピュータが
手のひらサイズで、生まれ変わる時代である。
https://www.pcmini.jp/product_pc-8001/

そんな訳で、この連休は懐かしい自分のパソコン少年時代を
振り返り、もう一度、原点に立って、自分が進むべき道を
見つめなおしてみたいと思う。

2
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
2
0