Pico三昧(22) Raspberry Pico 2、C/C++ SDKで吉例Lチカ

Pico2_Blink
Joseph Halfmoon

前回、Raspberry Pi Pico 2を受領したのに、一時寝かせてしまいました。老眼の目にはピンヘッダのハンダ付けが辛い、さらにPico 2用にソフトウエアのアップデートがメンドクセーです。まあ、折角手に入れたボードに火も入れずに打っちゃっておくのも気が咎めるので、なんとか吉例Lチカやってみましたぞ。

“Pico三昧(22) Raspberry Pico 2、C/C++ SDKで吉例Lチカ” の続きを読む

Pico三昧(21) Raspberry Pico 2 着弾、Arm M33とRISC-V

Pico2
Joseph Halfmoon

久しぶりにラズパイPicoです。辺境の老人のもとにも「Pico 2」やってまいりました。文明開化。前のPicoに搭載されていたRP2040は、デュアルコアのArmを搭載してましたが、コアはお手頃なやつでした。しかし今回Pico 2は、デュアルArm M33だけではなく、デュアルRISC-Vも搭載とな。どうなってるんだ?
“Pico三昧(21) Raspberry Pico 2 着弾、Arm M33とRISC-V” の続きを読む

ぐだぐだ低レベルプログラミング(182)x86(16bit)、ADD以下同文?微妙に非対称?

8086ADCopcode
Joseph Halfmoon

前回、x86の16ビット命令セットからADD命令を練習。実はADDが分かれば、ADC、AND、XOR、OR、SBB、SUB、CMPの残り7命令も「ほぼほぼ以下同文」てことで理解できます。でも「ほぼほぼ」って何だ?そこで、この辺でCISCらしいx86のオペコードエンコーディングを復習。ほんとメンドクセーんだが、これ。 “ぐだぐだ低レベルプログラミング(182)x86(16bit)、ADD以下同文?微妙に非対称?” の続きを読む

ソフトな忘却力(60) FreeDOS、FreePASCAL、GDBでデバッグ

gdbVersion
Joseph Halfmoon

前回FreeDOS上にFreePASCALコンパイラをインストール、吉例Hello worldできました。今回はFreePASCALで生成したオブジェクトプログラムのデバッグを実施。使用するのはみんな大好きGDBです。FreeDOS上にインストールしたFreePASCAL処理系には主だったGNUのツール共が同梱。

“ソフトな忘却力(60) FreeDOS、FreePASCAL、GDBでデバッグ” の続きを読む

ソフトな忘却力(57) FreeDOS、WSL2上のUbuntuでのキー入力あれこれ

ERROR_k_curses
Joseph Halfmoon

前回、Raspberry Pi OS上でQEMUを実行しているのと同じ方法でWSL2上のUbuntu上のQEMUでもFreeDOS動くだろ~と甘い見通しで作業開始。FreeDOS、動きはするけれどもいろいろビミョ~。その後、あれこれ設定を確かめていって、まあ、こんなもんかいという線に近付きつつある?ので中間報告?

“ソフトな忘却力(57) FreeDOS、WSL2上のUbuntuでのキー入力あれこれ” の続きを読む

ぐだぐだ低レベルプログラミング(181)x86(16bit)、ADDオペランド何でもありすぎ

ADDregs
Joseph Halfmoon

前回から元祖x86、16bitCPU、8086/8088の命令セットの復習を始めました。うん十年ぶり。忘れてます。しかしArmとかRISC-Vとかの後に改めて8086の命令をみると確かに複雑、CISCだからあたりまえか。今回は整数足し算、ADD命令を練習してみます。命令にとれるオペランドがいろいろありすぎ、何でもあり?

“ぐだぐだ低レベルプログラミング(181)x86(16bit)、ADDオペランド何でもありすぎ” の続きを読む

ソフトな忘却力(54) FreeDOS、MS-DOSを継承するメモリ管理のあれこれ

MSDOS_memoryMaps
Joseph Halfmoon

MS-DOS互換の「魔改造OS」FreeDOSを、あろうことかArmコアのラズパイ4機上で定番CPUエミュレータQEMU使って動かしてます。いろいろ触っていくために、古の時代のMS-DOSのメモリ管理を思い出す必要に迫られました。今回は「面倒かった」記憶だけが残るMS-DOSのメモリ管理の復習ってことで。
“ソフトな忘却力(54) FreeDOS、MS-DOSを継承するメモリ管理のあれこれ” の続きを読む

ぐだぐだ低レベルプログラミング(180)x86(16bit)、INC/DECにCISCを見?

Joseph Halfmoon

さて前回よりx86の最初のステップ、16ビットモードに入りました。いままでRISC-V、ArmとRISC系(Armはそれにしちゃ命令多過ぎだが)を練習してきましたが、今回からは「バリバリの」CISCデス。それほど意識することはないけれども、違いは確実にあるので気づいたところから見ていきます。 “ぐだぐだ低レベルプログラミング(180)x86(16bit)、INC/DECにCISCを見?” の続きを読む

ぐだぐだ低レベルプログラミング(179)x86、16/32/64bit、整数レジスタの発展?

x86IntRegisters
Joseph Halfmoon

長らく練習してきたArmを終え(まだ他所でやるケド)、今回からx86に入ります。Armの命令多過ぎなどと文句を垂れてきましたが、x86の命令「もっと」多過ぎ、死ぬまでに舐め終わらない気がします。そのうえ屋上屋を重ねる拡張により「古い16ビット命令」は「64ビット機では練習しずらく」なってます。どうするの?

“ぐだぐだ低レベルプログラミング(179)x86、16/32/64bit、整数レジスタの発展?” の続きを読む

帰らざるMOS回路(76) Xilinx Vivado、risc-vコア、FPU追加してみる

compareUtilization
Joseph Halfmoon

前回、RISC-V(MicroBlaze-V)のコアの設定画面、各チェックボックス、プルダウンメニューの一つ一つに神だか悪魔だかが宿っておるということで調べてみました。その中でも大物といえばFPUデス。小さなSpartan-7 FPGAに収まるのかどうかちょいと不安だけれども追加してみましたぞ。追加するだけなら簡単。
“帰らざるMOS回路(76) Xilinx Vivado、risc-vコア、FPU追加してみる” の続きを読む

帰らざるMOS回路(75) Xilinx Vivado、risc-vコアの設定のいろいろ、1

Optimization
Joseph Halfmoon

前回、Vitis IDEでデバッガを使うために、RISC-V(MicroBlaze-V)のコアを再設定しました。ハッキリ分かっているわけじゃないんだけれども、まあ「こんなもんだろ~」的な成り行きで設定してました。しかし、待てよと、それぞれのチェックボックス、プルダウンメニューの一つ一つに神だか悪魔だかが宿っておると。

“帰らざるMOS回路(75) Xilinx Vivado、risc-vコアの設定のいろいろ、1” の続きを読む

モダンOSのお砂場(92) Arm Mbed、2026年7月 End of Life

Joseph Halfmoon

Arm Mbed環境は、オンラインでArmベースのマイクロコントローラのRTOSプログラムをお楽に作れるので重宝させていただいてきました。しかし、本日2024年7月11日、Arm Mbed様から End of Lifeの予告を受け取りました。ちょっとビックリ。まあ、2年の猶予はあるのだけれども。

“モダンOSのお砂場(92) Arm Mbed、2026年7月 End of Life” の続きを読む

帰らざるMOS回路(74) Xilinx Vivado、risc-v練習プラットフォーム改良

Running
Joseph Halfmoon

前回、Vitis IDEから「ソフトウエア・デバッガ」を使いました。使いやすいじゃん。しかし「プラットフォーム」のRISC-V(MicroBlaze-V)コアの設定がデバッガのことを無視した設定になっていたので、デバッガの機能を十分に引き出すことができませんでした。そこでハードを作り直しね。こういうときFPGAはお楽。
“帰らざるMOS回路(74) Xilinx Vivado、risc-v練習プラットフォーム改良” の続きを読む

帰らざるMOS回路(70) Xilinx Vitis、RISC-Vから吉例Lチカ

BlinkCircuitT
Joseph Halfmoon

前回は、FPGA上のRISC-Vコアで走るソフトウエアでHello Worldできました。ようやくだったな。となれば今回はハードウエアでは吉例な「Lチカ」です。FPGAに書き込むビットストリームにはGPIOを搭載済です。Vitis IDEでHello Worldソースをチョイ直したらLチカできるハズ。 “帰らざるMOS回路(70) Xilinx Vitis、RISC-Vから吉例Lチカ” の続きを読む