Monday, 7 January 2019

8bit CPUのせこいテクニック

まぁねぇ。メモリの1byteは血の一滴な時代だったので仕方ないんですけどね。

  フラグの使いまわし。しかもbit単位。
  表の属性を0で区切って表し、線形サーチする。
  しかも、その属性数はコンパイルしてる文法の場所に依存する
  似た関数を無理に共有しフラグで動作を変える
  ラベルをケチって、bra *+3 とかを多用

そういうのが楽しい時期だったことは認めるけどさ。

  mallocがサイズしかheadに書いてなくてfree時のチェックが雑

おかげで、free にbreak pointかけて監視する羽目に。

362C: 86 01 LDA #$01
362E: 97 01 STA <$01
3630: A6 20 LDA +$00,Y
3632: BD B4 32 JSR $B432
3635: A6 00 LDA +$00,X

大域変数と局所変数のframeをXとYを使ったので、少し6809っぽいソースになりました。

No comments: