unkar
板一覧
昔のPC
削除依頼
いいね!
つぶやく
元スレ
ファミリーベーシック活用テクニック|ツリー抽出(13件 >>396)
[975res]
全部
1-
101-
201-
301-
401-
501-
601-
701-
801-
901-
最新50
リンク抽出 :
URL
[
+
]
スレッド
[
+
]
画像
[
+
]
動画
[
+
]
書庫
[
+
]
396
:
ナイコンさん
: 2008/01/20(日) 03:27:54
どなたかファミリーBASICのキャラクターROMデータを直接
読む方法をご教授願います。例えばAの文字などの場合、
&h38;,&h6c;,&hc6;,&hfe;,&h82;,&h82;,&h82;,&h00; みたいなデータで
保存されているのではないかと思い、エミュレータ上でPEEK命令を
使ってみたのですが、それらしいデータが見つからないもので・・。
大昔、発見した気がするのですが、あまりに昔のことで覚えてない
のです。
400
:
ナイコンさん
[sage] : 2008/01/20(日) 09:38:28
>>397,398
違うと思うぞ。
>>396
ファミリーベーシックは持ってないので想像だけど
ROMの領域だから&H8000;以降ではないかな。
ググってみたけどメモリーマップは見つからなかった。
401 :
396
[sage] : 2008/01/20(日) 12:48:10
>>400
ありがとうございます。取説のメモリマップには、
プログラムROMは&H8000;~&HFFFF;と書いてありますが、
キャラジェネはPPUからですので、単なるPEEK命令では
読み込めないかも知れないですね。もう少し頑張ってみます。
397
:
ナイコンさん
[sage] : 2008/01/20(日) 04:56:40
for i=0 to 255:print chr$(i);:next i
のこと?
コード知りたきゃ
print asc("A")
でAのキャラクターコード表示されるとオモ。
407
:
ナイコンさん
[sage] : 2008/01/24(木) 21:42:25
http://ossan.fam.cx/up/gazo/src/1201178170132.jpg
>>396
のやりたいことを、Z80使いの漏れが6502で作ってみたが、
6割方値は読むので考え方は間違っていないのだろうけど、
完全に読めていない。何が悪いんだろう。割り込み関係かな?
.org $6d1f
sei
lda #$14 ; $1000+asc("A")+16の値が入る。
sta $2006
lda #$10 ; Aなので、$1000+65*16=$1410。
sta $2006
ldx #8
ldy #0
label01:
lda $2007
sta data,y
iny
dex
bne label01
rts
data:
.db 0
408
:
ナイコンさん
[sage] : 2008/01/25(金) 11:31:06
>>407
V3? どっちにしてもCLEAR&H;○○○○で、自分用の領域を確保しないとやばい。
409
:
ナイコンさん
[sage] : 2008/01/25(金) 14:05:12
http://ossan.fam.cx/up/gazo/src/1201237165551.jpg
>>396
とりあえず出来た。ギコを参考に、PPUを読む際にスプライトとBGの表示をオフにしたら読めた。
最初の1個は何故か20Hが読まれるけど、次からの8バイトはちゃんと読めている。
POKEで6021Hと6026Hを変えれば他の文字も読めるので、このプログラムから応用が利くのでは。
昨日のリストから、seiを除いて、
最初に lda #%00000110 sta $2001でスプライト・BGを非表示に、
最後に lda #%00011110 sta $2001でスプライト・BGを表示。
ldx #8 を ldx #9 にして、9バイトを読んでいる。
(ファミコンの場合、BG1個につき16バイトのデータで構成されているけど、
この用事に必要なのは頭8個だろう)
>>408
サンクス。CLEARの使い方はこれでいいのかな?
412
:
ナイコンさん
[sage] : 2008/01/26(土) 15:23:26
>>409
RAMアクセス以外でも、表示を消さないとダメだったんだっけか。
CLEARはそれで良いと思った。
スクロールがずれるのであれば↓の技でどうだろう。(2006とスクロールレジスタは内部が共有している)
734 :名前は開発中のものです。(sage):2007/09/04(火) 01:24:17 ID:GQvI0rE0
>>732
112行目に下のコードをはさんでみ
lda #$3F
sta $2006
lda #$00
sta $2006
sta $2006
sta $2006
414 :
ナイコンさん
[sage] : 2008/01/26(土) 16:24:49
画像ロダに、簡潔に機械語を纏めたリストを貼った職人が…
機械語たった9バイト、すげぇ。
ちなみに、漏れが書いた
>>411
のプログラムに
>>412
のコードを挟んでも、画面ブレがなくなった。サンクス。
411
:
ナイコンさん
[sage] : 2008/01/26(土) 12:47:58
http://ossan.fam.cx/up/gazo/src/1201318925048.png
BGパターンを読む際に、画面が一瞬チカッとするのが気に入らない。
$2006に値を入れた瞬間に画面が乱れるみたいなので、
Vブランク回避などを試みているが、今ひとつ上手く行かない。
が、BGパターンは間違いなくちゃんと読めている。
ファミコンの画面表示って面倒くさいのな。
732
:
ナイコンさん
[sage] : 2010/08/15(日) 10:15:18
キーボードが付くと俄然"コンピューター"って感じがするよね。
413 :
396
[sage] : 2008/01/26(土) 16:23:03
>>408-411
やってみました! まさに私のやりたかった事でしたよ。
実は、ご教授いただいた直後、昔は意味も分からず眺めて
いた某書籍をさらに発掘したので、色々調べてみました。
・読みたいアドレスを&H004A;と&H004B;に書いてから、
&H0063;に「5」の値を書き込んで、垂直ブランキングを
待つと、CG-ROMの中身を読み込んで、結果を&H0073;に返す・・らしい。
普通、わかりませんよね。こんなこと(^^;。
他の表示部分を、そのまま使わせていただき手直ししました。
ちらつきもほとんど無くなったかと思います。
http://ossan.fam.cx/up/gazo/src/1201331220154.png
お陰さまで本当に助かりました。皆様、有難うございました。
415 :
ナイコンさん
[sage] : 2008/01/26(土) 16:26:19
と思ったら、
>>396
本人だったのね。
[975res]
全部
1-
101-
201-
301-
401-
501-
601-
701-
801-
901-
最新50
リンク抽出 :
URL
[
+
]
スレッド
[
+
]
画像
[
+
]
動画
[
+
]
書庫
[
+
]