アルカディアでのテトリスの作り方のその4です。画面周りの検証はこれで最後…のはず。
8命令の8bitxorshiftを作ったんですがすごない?
なおアルカディア以外での使い道はない模様
--------------
xorshift8:
loda,r0 RandomBytes
rrl,r0 ; r0 <- r0 << 1
strz r1 ; r1 <- r0
rrl,r1 ; r1 <- r1 << 1
andi,r1 05Fh ; r1 <- r1 & 0x5F
eorz r1 ; r0 <- r0 ^ r1
stra,r0 RandomBytes
retc,un
--------------
コメントや広告やギフトやいいねありがとうございますm(_ _)m
----
(追記)
エミュの画面が停止中かどうか、わかりやすいようにアニメ差し替えて、II(ポーズマーク)を追加しました。分り難くてごめーん。
・物理的な制限があるリソース
垂直帰線期間中に利用可能なCPUクロック(VRAMに何してもちらつかないことが保証されている期間)も結構貴重なリソースです。
なんせ1フレームに200命令弱とかですから。
まあ、今回の検証で少し下にずらしてれば、落下処理がこの200命令から多少はみ出しても大丈夫だろう、とわかったので、CPUとRAMの節約のためVRAMルートを選択しています。
・コメ返>>TGM20Gモード
テトリス詳しくないんですがこんなモードが。
1フレームで落下ですか。下から生えるように見えるとかすごいですね。
落下判定自体は帰線期間外でもできるので、実装は可能だと思います。
約束はできませんが、一通り完成した後で余裕とやる気があったらやってみます。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ソースを置いてあるgithubは下記になります。
ライセンスはNYSLです。煮るなり焼くなりお好きにどうぞ。
https://github.com/alcadia-kiritan/tetris- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
参考資料:
アルカディアのゲームを作ろう(提案).mp1(nuu様)
https://www.nicovideo.jp/watch/sm40419289Signetics 2650 User Manual(アミガンソフトウェア様)
https://amigan.yatho.com/2650UM.htmlコーディングガイド(アミガンソフトウェア様)
https://amigan.yatho.com/a-coding.txt上記を含むマニュアル類のページ(アミガンソフトウェア様)
https://amigan.yatho.com/#manuals- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -