Skip to content

Instantly share code, notes, and snippets.

@eidas
Created October 10, 2011 03:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eidas/1274599 to your computer and use it in GitHub Desktop.
Save eidas/1274599 to your computer and use it in GitHub Desktop.
IMPORT FROM GRP for Petitcom
'GRPデータヲ ファンクションキー ニ カキダシ
THISPRG$="LTEFNK"
SPC$=" "
GPAGE 1
IF LEN(MEM$)==0 THEN MEM$=SPC$+"2"
P$=MID$(MEM$,0,8)
@ENT_NM
SAVEPRG$=""
FOR I=0 TO LEN(P$)-1
Q$=MID$(P$,I,1)
IF ("A"<=Q$ AND Q$<="Z") OR ("0"<=Q$ AND Q$<="9") OR Q$=="_" THEN SAVEPRG$=SAVEPRG$+Q$
NEXT
IF SAVEPRG$=="" OR LEN(SAVEPRG$)>8 THEN INPUT "PRG NAME=";P$:GOTO @ENT_NM
FOR I=2 TO 5
KEY I,CHR$(13)
NEXT
L=GSPOIT(0,0)*256+GSPOIT(1,0)+2
IF L==0 THEN @ERR_END
N=VAL(MID$(MEM$,8,5))
IF N<2 THEN N=2
K=2
IF L<N THEN @INI_FNK
J$=""
@LOOP
J=GSPOIT(N%256,FLOOR(N/256))
IF J==0 THEN J=32
J$=J$+CHR$(J)
N=N+1
IF L<N THEN KEY K,J$:GOTO @FIN
IF LEN(J$)==256 THEN KEY K,J$:J$="":K=K+1
IF K>5 THEN @FIN
GOTO @LOOP
@FIN
P$=MID$(SPC$,0,8-LEN(SAVEPRG$))
MEM$=SAVEPRG$+P$+STR$(N)
KEY 1,"SAVE"+CHR$(34)+SAVEPRG$+CHR$(34)+":EXEC"+CHR$(34)+THISPRG$+CHR$(34)
LOAD SAVEPRG$
END
@INI_FNK
KEY 1,"FILES"
KEY 2,"LOAD"+CHR$(34)
KEY 3,"SAVE"+CHR$(34)
KEY 4,"CONT"
KEY 5,"RUN"
MEM$=""
END
@ERR_END
?"ERROR!"
?"GRP ヲ LOAD シテクダサイ"
END
@eidas
Copy link
Author

eidas commented Oct 10, 2011

プチコンまとめWikiのQRエクスポートで出力されるGRPファイル互換形式(GRP-P形式)から、ファンクションキー経由でプログラムへインポートするプログラムです。
使い方は「プチコンで遊ぼう」からご覧ください。

@eidas
Copy link
Author

eidas commented Oct 16, 2011

40行目のCHR$(34)が「CHR$(34)$」と、$が余計に入っていましたので修正しました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment