HP(゚∀゚) > KAIZO(´∀`) > KAISEKI(^w^)

れどめに書いてあるコード書式をもとに作れるもの?人柱版なので全部うごくかは不明
旧版てすと用

連続書き込み(_NWR)
論理演算(_NRW)
シリアル(_MLA,_MLO,_MLE)
複数行判定(_TES)
コピー(_PCY,_PST)
ポインタ(_PIN)
ポインタシリアル(_PMA,_PMO,_PME)
ポインタコピー(_PPC,_PST)
多重ポインタ(_PTR)
パッド(_PAD)

[連続書き込みコード]
4-bit連続書き込み
_NWR 0x1000 0x0aaaaaaa 0x0000000v
アドレスaaaaaaa+0x8800000に値vを書き込み続ける

8-bit連続書き込み
_NWR 0x2000 0x0aaaaaaa 0x000000vv
アドレスaaaaaaa+0x8800000に値vvを書き込み続ける

16-bit連続書き込み
_NWR 0x4000 0x0aaaaaaa 0x0000vvvv
アドレスaaaaaaa+0x8800000に値vvvvを書き込み続ける

24-bit連続書き込み
_NWR 0x6000 0x0aaaaaaa 0x00vvvvvv
アドレスaaaaaaa+0x8800000に値vvvvvvを書き込み続ける

32-bit連続書き込み
_NWR 0x8000 0x0aaaaaaa 0xvvvvvvvv
アドレスaaaaaaa+0x8800000に値vvvvvvvvを書き込み続ける

4-bitマスク連続書き込み
_NWR 0x2200 0x0aaaaaaa 0x000000vv
アドレスaaaaaaa+0x8800000にある値に4bitANDMASKしvv&0xFFFFFFF0との論理和を書き込む?


[論理演算コード]
4-bit AND
_NWR 0x1010 0x0aaaaaaa 0x0000000v
アドレスaaaaaaa+0x8800000の値とvの論理積を書き込む

8-bit AND
_NWR 0x2010 0x0aaaaaaa 0x000000vv
アドレスaaaaaaa+0x8800000の値とvvの論理積を書き込む

16-bit AND
_NWR 0x4010 0x0aaaaaaa 0x0000vvvv
アドレスaaaaaaa+0x8800000の値とvvvvの論理積を書き込む

32-bit AND
_NWR 0x8010 0x0aaaaaaa 0xvvvvvvvv
アドレスaaaaaaa+0x8800000の値とvvvvvvvvの論理積を書き込む

4-bit OR
_NWR 0x1020 0x0aaaaaaa 0x0000000v
アドレスaaaaaaa+0x8800000の値とvの論理和を書き込む

8-bit OR
_NWR 0x2020 0x0aaaaaaa 0x000000vv
アドレスaaaaaaa+0x8800000の値とvvの論理和を書き込む

16-bit OR
_NWR 0x4020 0x0aaaaaaa 0x0000vvvv
アドレスaaaaaaa+0x8800000の値とvvvvの論理和を書き込む

32-bit OR
_NWR 0x8020 0x0aaaaaaa 0xvvvvvvvv
アドレスaaaaaaa+0x8800000の値とvvvvvvvvの論理和を書き込む

4-bit XOR
_NWR 0x1030 0x0aaaaaaa 0x0000000v
アドレスaaaaaaa+0x8800000の値とvの排他的論理和を書き込む

8-bit XOR
_NWR 0x2030 0x0aaaaaaa 0x000000vv
アドレスaaaaaaa+0x8800000の値とvvの排他的論理和を書き込む

16-bit XOR
_NWR 0x4030 0x0aaaaaaa 0x0000vvvv
アドレスaaaaaaa+0x8800000の値とvvvvの排他的論理和を書き込む

32-bit XOR
_NWR 0x8030 0x0aaaaaaa 0xvvvvvvvv
アドレスaaaaaaa+0x8800000の値とvvvvvvvvの排他的論理和を書き込む
#_NWR横のオプションは_MLA,_PST,_PWR,PMA,_PPSでも使うことができる?


[シリアル(圧縮)コード]
4-bitシリアル
_MLA 0x1000 0x0aaaaaaa 0x0000000v
_MLO 0x0000 0x0000bbbb 0x0000000w
_MLE 0x0000 0x0000tttt 0x00000000
アドレスaaaaaaa+0x8800000からtttt個のアドレスになるように
bbbbアドレスずつずらしながら値vを書き込む
vもw分ずつ増加して書き込まれる

8-bitシリアル
_MLA 0x2000 0x0aaaaaaa 0x000000vv
_MLO 0x0000 0x0000bbbb 0x000000ww
_MLE 0x0000 0x0000tttt 0x00000000
アドレスaaaaaaa+0x8800000からtttt個のアドレスになるように
bbbbアドレスずつずらしながら値vvを書き込む
vvもww分ずつ増加して書き込まれる

16-bitシリアル
_MLA 0x4000 0x0aaaaaaa 0x0000vvvv
_MLO 0x0000 0x0000bbbb 0x0000wwww
_MLE 0x0000 0x0000tttt 0x00000000
アドレスaaaaaaa+0x8800000からtttt個のアドレスになるように
bbbbアドレスずつずらしながら値vvvvを書き込む
vvvvもwwww分ずつ増加して書き込まれる

32-bitシリアル
_MLA 0x8000 0x0aaaaaaa 0xvvvvvvvv
_MLO 0x0000 0x0000bbbb 0xwwwwwwww
_MLE 0x0000 0x0000tttt 0x00000000
アドレスaaaaaaa+0x8800000からtttt個のアドレスになるように
bbbbアドレスずつずらしながら値vvvvvvvvを書き込む
vvvvvvvvもwwwwwwww分ずつ増加して書き込まれる


[コピーコード]
_CPY 0xB000 0x0aaaaaaa 0x00000000
_PST 0xB000 0x0bbbbbbb 0x00000000
アドレスaaaaaaa+0x8800000からbbbbbbbbbにB*4bit分コピーする

[複数判定コード]
4-bit一致
_CPY 0x1000 0x0aaaaaaa 0x00000000
_TES 0x1000 0x000000nn 0x0000000d
アドレスaaaaaaa+0x8800000の値がdと一致するとき下のnn行分のコードが実行される

4-bit不一致
_CPY 0x1000 0x0aaaaaaa 0x00000000
_TES 0x1001 0x000000nn 0x0000000d
アドレスaaaaaaa+0x8800000の値がdと一致するとき下のnn行分のコードが実行される

4-bit比較大
_CPY 0x1000 0x0aaaaaaa 0x00000000
_TES 0x1002 0x000000nn 0x0000000d
アドレスaaaaaaa+0x8800000の値がd以上のとき下のnn行分のコードが実行される

4-bit比較小
_CPY 0x1000 0x0aaaaaaa 0x00000000
_TES 0x1003 0x000000nn 0x0000000d
アドレスaaaaaaa+0x8800000の値がd以下のとき下のnn行分のコードが実行される

8-bit一致
_CPY 0x2000 0x0aaaaaaa 0x00000000
_TES 0x2000 0x000000nn 0x000000dd
アドレスaaaaaaa+0x8800000の値がddと一致するとき下のnn行分のコードが実行される

8-bit不一致
_CPY 0x2000 0x0aaaaaaa 0x00000000
_TES 0x2001 0x000000nn 0x000000dd
アドレスaaaaaaa+0x8800000の値がddと一致するとき下のnn行分のコードが実行される

8-bit比較大
_CPY 0x2000 0x0aaaaaaa 0x00000000
_TES 0x2002 0x000000nn 0x000000dd
アドレスaaaaaaa+0x8800000の値がdd以上のとき下のnn行分のコードが実行される

8-bit比較小
_CPY 0x2000 0x0aaaaaaa 0x00000000
_TES 0x2003 0x000000nn 0x000000dd
アドレスaaaaaaa+0x8800000の値がdd以下のとき下のnn行分のコードが実行される

16-bit一致
_CPY 0x4000 0x0aaaaaaa 0x00000000
_TES 0x4000 0x000000nn 0x0000dddd
アドレスaaaaaaa+0x8800000の値がddddと一致するとき下のnn行分のコードが実行される

16-bit不一致
_CPY 0x4000 0x0aaaaaaa 0x00000000
_TES 0x4001 0x000000nn 0x0000dddd
アドレスaaaaaaa+0x8800000の値がddddと一致しないとき下のnn行分のコードが実行される

16-bit比較大
_CPY 0x4000 0x0aaaaaaa 0x00000000
_TES 0x4002 0x000000nn 0x0000dddd
アドレスaaaaaaa+0x8800000の値がdddd以上のとき下のnn行分のコードが実行される

16-bit比較小
_CPY 0x4000 0x0aaaaaaa 0x00000000
_TES 0x4003 0x000000nn 0x0000dddd
アドレスaaaaaaa+0x8800000の値がdddd以下のとき下のnn行分のコードが実行される

32-bit一致
_CPY 0x8000 0x0aaaaaaa 0x00000000
_TES 0x8000 0x000000nn 0xdddddddd
アドレスaaaaaaa+0x8800000の値がddddddddと一致するとき下のnn行分のコードが実行される

32-bit不一致
_CPY 0x8000 0x0aaaaaaa 0x00000000
_TES 0x8001 0x000000nn 0xdddddddd
アドレスaaaaaaa+0x8800000の値がddddddddと一致しないとき下のnn行分のコードが実行される

32-bit比較大
_CPY 0x8000 0x0aaaaaaa 0x00000000
_TES 0x8002 0x000000nn 0xdddddddd
アドレスaaaaaaa+0x8800000の値がdddddddd以上のとき下のnn行分のコードが実行される

32-bit比較小
_CPY 0x8000 0x0aaaaaaa 0x00000000
_TES 0x8003 0x000000nn 0xdddddddd
アドレスaaaaaaa+0x8800000の値がdddddddd以下のとき下のnn行分のコードが実行される

論理積マスク判定一致
_CPY 0x8000 0x0aaaaaaa 0x00000000
_PST 0x8010 0x0000bbbb 0x00000000 //bbbb=1000~3FFC
_NWR 0x8000 0x0000bbbb 0xMMMMMMMM
_CPY 0x8000 0x0000bbbb 0x00000000
_TES 0x8000 0x000000nn 0xdddddddd
アドレスaaaaaaa+0x8800000の値とMMMMMMMMとの論理積がddddddddと一致するとき下のnn行分のコードが実行される


[ポインタコード]※基準アドレスが0x8800000以下または0xA000000以上時の場合実行されない。
4-bit書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x1000 0x0iiiiiii 0x0000000v
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値v
を基準アドレス+iiiiiiiiに書き込む

8-bit書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x2000 0x0iiiiiii 0x000000vv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vv
を基準アドレス+iiiiiiiiに書き込む

16-bit書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x4000 0x0iiiiiii 0x0000vvvv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vvvv
を基準アドレス+iiiiiiiiに書き込む

32-bit書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x8000 0x0iiiiiii 0xvvvvvvvv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vvvvvvvv
を基準アドレス+iiiiiiiiに書き込む

4-bit書き込み(オフセマイナス)
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x1100 0x0iiiiiii 0x0000000v
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値v
を基準アドレス-iiiiiiiiに書き込む

8-bit書き込み(オフセマイナス)
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x2100 0x0iiiiiii 0x000000vv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vv
を基準アドレス-iiiiiiiiに書き込む

16-bit書き込み(オフセマイナス)
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x4100 0x0iiiiiii 0x0000vvvv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vvvv
を基準アドレス-iiiiiiiiに書き込む

32-bit書き込み(オフセマイナス)
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PWR 0x8100 0x0iiiiiii 0xvvvvvvvv
アドレスaaaaaaa+0x8800000に入ってる値を基準アドレスとし値vvvvvvvv
を基準アドレス-iiiiiiiiに書き込む

ポインタシリアル書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PMA 0xB000 0x0iiiiiii 0xvvvvvvvv
_PMO 0x0000 0x0ppppppp 0xwwwwwwww
_PME 0x0000 0x0000tttt 0x00000000
アドレスaaaaaaa+0x8800000にある値を基準アドレスとし、基準アドレス+iiiiiiiからpppppppの間隔で
tttt個のアドレスにB*4bit分vvvvvvvvを書き込む。この時vvvvvvvvもwwwwwwwwずつ増加する

ポインタコピー1
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PCP 0xB000 0x0iiiiiii 0x00000000
_PPS 0xB000 0x0zzzzzzz 0x00000000
基準アドレス+iiiiiiiにある値を
基準アドレス+zzzzzzzにB*4bit分だけコピー

ポインタコピー2
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PCP 0xB000 0x0iiiiiii 0x00000000
_PST 0xB000 0x0bbbbbbb 0x00000000
基準アドレス+iiiiiiiiにある値を
アドレスbbbbbbbにB*4bit分だけコピー

ポインタオフセット判定
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PCP 0x8000 0x0iiiiiii 0x00000000
_TES 0x8000 0x000000nn 0xdddddddd
基準アドレス+iiiiiiiiにある値を
ddddddddと比較して一致するとき次のnn行のコードを実行する。

多重ポインタ
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PTR 0x8T00 0x0iiiiiii 0x00000000
....
_PWR 0x8T00 0x0zzzzzzz 0xvvvvvvvv
aaaaaaa+0x8800000=ポインタアドレス、第1基準アドレスがあるところ
vvvvvvvv=書き込む値
T=オフセットの+/- 0でプラス、1でマイナス
iiiiiii=第1ベースに+/-するオフセット
....
zzzzzzz=最後+/-するオフセット(Tに依存)

第1基準アドレス=aaaaaaa+0x8800000にある値
第2基準アドレス=第1基準アドレス+/-iiiiiiiにある値
.....
最終書込アドレス=最後の基準アドレス+/-zzzzzzzになる

多重ポインタシリアル書き込み
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PTR 0x8T00 0x0iiiiiii 0x00000000
....
_PMA 0xB000 0x0zzzzzzz 0xvvvvvvvv
_PMO 0x0000 0x0ppppppp 0xwwwwwwww
_PME 0x0000 0x0000tttt 0x00000000
最後の基準アドレス+zzzzzzzからpppppppの間隔で
tttt個のアドレスにB*4bit分vvvvvvvvを書き込む。この時vvvvvvvvもwwwwwwwwずつ増加する

多重ポインタコピー1
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PTR 0x8T00 0x0iiiiiii 0x00000000
....
_PCP 0xB000 0x0zzzzzzz 0x00000000
_PPS 0xB000 0x0sssssss 0x00000000
最後の基準アドレス+zzzzzzzにある値を
最後の基準アドレス+sssssssにB*4bit分だけコピー

多重ポインタコピー2
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PTR 0x8T00 0x0iiiiiii 0x00000000
....
_PCP 0xB000 0x0zzzzzzz 0x00000000
_PST 0xB000 0x0bbbbbbb 0x00000000
最後の基準アドレス+zzzzzzzにある値を
アドレスbbbbbbbにB*4bit分だけコピー

多重ポインタオフセット判定
_PIN 0x8000 0x0aaaaaaa 0x00000000
_PTR 0x8T00 0x0iiiiiii 0x00000000
....
_PCP 0x8000 0x0zzzzzzz 0x00000000
_TES 0x8000 0x000000nn 0xdddddddd
最後の基準アドレス+zzzzzzzにある値を
ddddddddと比較して一致するとき次のnn行のコードを実行する。

[パッドコード]
_PAD 0x8000 0x000000nn 0xPPPPPPPP
PPPPPPPPはパッドの合計値(論理和OR)、nn行分実行される

_PAD 0x8001 0x000000nn 0xPPPPPPPP
ボタンを押している間だけコードが無効になる。

HP(゚∀゚) > KAIZO(´∀`) > KAISEKI(^w^)
  プロフィール  PR:無料HP  合宿免許 二輪  Webデザイン 学校  WPサスペンション  中古ホイール 沖縄  タイヤ エリシオン 新品  自動車整備 専門  IKD  特殊免許 取得  水晶  宮城 合宿免許  音楽 専門学校 福岡  タイヤ 取付 神戸市  中古マンションをリノベする