.pic 그림 불러오기

pic-loader.bas

원래 파일
LAN/QB/READPIC.BAS
날짜
1991-10-08
크기
1,327바이트, 54줄
저장 형식
QB 4.5 바이너리 저장본("Fast Load and Save")을 QB에서 텍스트로 다시 저장한 뒤 UTF-8로 바꿈
내려받기
pic-loader.bas (UTF-8)

설명

.pic 파일을 512바이트씩 읽어 허큘리스 화면 메모리(B000)에 POKE합니다.
첫 블록은 "AH" 머리와 7번 바이트가 7인지 확인합니다.

어떤 프로그램이 만든 형식인지는 남아 있지 않습니다.
웹 그림판의 .pic 저장은 이 코드를 거꾸로 만든 것입니다.

소스

CLEAR : SCREEN 0: CLSINPUT "File name(.pic)"; filename$DIM buffer(511)DEF SEG = &HB000OPEN filename$ + ".pic" FOR BINARY AS #1MemCount = 0Plane = 0Count = 10SCREEN 3: CLSChangePlane:FOR getdata = 0 TO 511buffer(getdata) = ASC(INPUT$(1, #1))NEXT getdataIF Count = 10 THENIF (buffer(0) <> &H41) OR (buffer(1) <> &H48) THEN GOTO quitIF buffer(7) <> 7 THEN GOTO quitEND IFLoopStart:flag = buffer(Count)Count = Count + 1SELECT CASE flagCASE &H80Count = 0GOTO ChangePlaneCASE 0GOTO quitCASE ELSESELECT CASE (flag AND &H80)CASE 0FOR loop1 = 1 TO (flag AND &H7F)POKE MemCount, buffer(Count)Count = Count + 1MemCount = MemCount + 1NEXT loop1CASE &H80Dummy = buffer(Count)IF Dummy <> 0 THENFOR loop1 = 1 TO (flag AND &H7F)POKE MemCount, DummyMemCount = MemCount + 1NEXT loop1ELSEMemCount = MemCount + (flag AND &H7F)END IFCount = Count + 1END SELECTEND SELECTGOTO LoopStartquit:CLOSE : DEF SEGPLAY "o1 c20 e20 g20"WHILE INKEY$ = "": WENDSCREEN 0END