2019-05-14
IchigoJam 1.3で容量を使い切ってしまって不具合修正もできず困っていた中、C言語で書く例外処理を学んだ結果、容量の大幅圧縮に成功。なんと、864byte空きました。


複雑な計算式で計算用のメモリが溢れた際「Complex expression」の代わりに「Segmentation Fault」が発生します。たまに、当たりどころが悪く(?)固まってしまうことがあるようなので、要調査。割込中の割込じゃないかと予想。

?((((15)))) Segmentation Fault

マシン語でROM領域であるアドレス0へ無理やり書き込んでみます。 [R0]=R0; RET (asm15)

10 POKE #700,0,112,112,71 20 ?USR(#700,0) RUN Segmentation Fault

落ちません!マシン語の敷居がちょっと低くなりました。
はじめてのマシン語 - IchigoJamではじめるArmマシン語その1

LPC1114の4KBのRAMの使い方が変わって、スタック、仮想RAM、システム用データ、IAP用領域の順となっています。詳細は、以前のバージョンのメモリマップも合わせてご参照ください。
IchigoJam BASIC RAM 4kbyte のつかいかた(メモリマップ)


先日、IchigoJamでプログラミングを紹介に伺った、ネパールの学校「SHREE MADAN-AASHIRIT ADARSHA BASIC SCHOOL」より、ステキな証明書が届きました! ありがとうございます!
Let's get smiles of kids! Programming for students of Tribhuvan University in Nepal
世界中のこども達向けに、もう一弾、更なる改善が図れそうです!

IchigoJam 1.3 beta 7 のダウンロードはこちらからどうぞ。
ichigojam-1.3b07.zip
問題報告やご要望、ぜひお送りください! → IchigoJam-FAN on Facebook / #IchigoJam on Twitter

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS