プチコンではBGやスプライトなどのリソースデータはそれぞれ独自にセーブできるが、プログラムリストとして公開するには向いていない。そこで便利なのがこの実用プログラムだ。
プログラムを実行して、リソースデータを読み込むと画面上部にそのデータが一覧表示される。カーソルを十字ボタンで動かして、データ化したい画像の上に乗せると(見づらいリソースデータであれば1行目に表示される座標値を手がかりにしよう)、キャラクタ情報が表示されるぞ。
左リンクのサンプル動画では、最初にプチコン付属の「CHRED」でデフォルトのリソースデータを保存するところから撮影されているので参考になるだろう。プログラム再起動時に同じファイル名を読み込むのであれば、「0」を指定すればファイル名は省略できるぞ。
反動
サークル反動冥土の反動と申します。
ベーマガ世代ですので、プチコンに見事ハマっています。
豊富にキャラクター文字があるのでそれを使ってもいいのですが折角なのでドット絵のゲームも配信して欲しいと思い、このツールを作りました。
昔ベーマガを見ながらひたすらDATA文のデータを打ち込んでいた苦行を思い出してくださいw
CHRSET
命令に使う〈画像文字列〉じゃな。詳しくはマニュアル参照じゃが、このまま書き写すだけでプログラムの中にリソースデータを含めることができるのじゃからリスト公開派のショクンには有用なツールじゃぞ。CHRSET
命令の中に入れるのもいいけど、数が多いようならDATA
文に列記して、READ
命令で読み出すのがやっぱり基本かな。
- ’***RTD2***
- @J
- CLS:SPCLR
- LOCATE 0,8
- FN1$=FN$
- INPUT”FILENAME(0-”+FN$+”)”;FN$
- IF FN$==”0” THEN FN$=FN1$
- ’
- INPUT”1)SPU 2)BGU”;A
- IF A==1 THEN RN$=”SPU0”:GOTO @J1
- IF A==2 THEN RN$=”BGU0”:GOTO @J1
- GOTO @J
- ’
- @J1
- INPUT”PALET”;PL
- IF PL<0 OR PL>15 THEN @J1
- ’
- RN1$=RN$+”:”+FN$
- LOAD RN1$,FALSE
- ’
- N=0
- IF A==2 THEN @LOOP
- GOTO @LOOP2
- ’***SPRITE
- @LOOP2
- FOR Y=0 TO 3
- FOR X=0 TO 15
- SPSET N,N,PL,0,0,3
- SPOFS N,X*16,Y*16
- N=N+1
- NEXT
- NEXT
- X=0:Y=0
- ’
- @J2
- CLS
- BT=BUTTON()
- X=X+(BT == 8)-(BT == 4)
- Y=Y+(BT == 2)-(BT == 1)
- IF BT AND 16 THEN @J
- IF X>15 THEN X=15
- IF X<0 THEN X=0
- IF Y>3 THEN Y=3
- IF Y<0 THEN Y=0
- CHRNO=X*4+Y*64
- LOCATE 0,8:? STR$(X)+”,”+STR$(Y)
- J=9
- FOR I=CHRNO TO CHRNO+3
- CHRREAD(RN$,I),C$
- LOCATE 0,J:?C$
- J=J+2
- NEXT
- XX=X*2:YY=Y*2
- COLOR RND(7)
- LOCATE XX,YY: ?”╂╂”
- LOCATE XX,YY+1:?”╂╂”
- COLOR &HF
- VSYNC(5)
- GOTO @J2
- ’***BGCHR
- @LOOP
- N=0
- FOR Y=0 TO 7
- FOR X=0 TO 31
- GPUTCHR X*8,Y*8,”BGU0”,N,PL,1
- N=N+1
- NEXT
- NEXT
- X=0:Y=0
- ’
- @J3
- CLS
- BT=BUTTON()
- X=X+(BT == 8)-(BT == 4)
- Y=Y+(BT == 2)-(BT == 1)
- IF BT AND 16 THEN @J
- IF X>31 THEN X=31
- IF X<0 THEN X=0
- IF Y>7 THEN Y=7
- IF Y<0 THEN Y=0
- ’
- COLOR RND(7)
- LOCATE X,Y:?”╂”
- COLOR &HF
- LOCATE 0,8:? STR$(X)+”,”+STR$(Y)
- LOCATE 0,9:CHRREAD(RN$,X+(Y*32)),C$
- ? C$
- VSYNC(5)
- GOTO @J3