원작 소스
1991~1996년에 QuickBasic 4.5로 짠 소스입니다.
옛 PC의 C:\FLAG와 C:\LAN\QB 폴더에 있던 소스 가운데 직접 짠 것만 골라 옮겼습니다.
파일 이름은 내용을 알 수 있게 새로 붙였고, 각 페이지에 원래 이름을 적었습니다.
원본은 CP949(BIO.BAS는 조합형) 텍스트이거나 QB 4.5 바이너리 저장본이었습니다.
여기 있는 .bas는 모두 UTF-8 텍스트입니다.
- 같은 프로그램이 여러 벌 남아 있던 것은 가장 발전된 것 하나만 두었습니다.
뺀 파일은 해당 페이지의 "정리하면서 뺀 파일"에 적었습니다. - 내용이 똑같은 사본
FLAG2.BAS(=VOICE.BAS),BE.BAS(=GE.BAS)는 하나만 옮겼습니다. - Microsoft 예제(
QCARDS,SORTDEMO,TORUS,REMLINE,CAL/MAL,WAVE,DIR_SCAN,CALL_EX)는 옮기지 않았습니다. - SVGAQB 라이브러리 배포본,
PCX2,LIB,LIB2,LIB3폴더의 라이브러리, 남이 짠NTYPE,PCX16,PCX16F,PCXVIEW도 옮기지 않았습니다.GREAD.BAS는 SVGAQB 설명서의 GIF 예제를 그대로 옮긴 것이라 뺐습니다.
프로그램
웹 버전으로 다시 만든 프로그램의 원작입니다.
| 파일 | 원래 이름 | 연도 | 내용 |
|---|---|---|---|
그림판paint.bas | D2.BAS | 1992 | 허큘리스(SCREEN 3) 그림판의 메뉴 부분. 메뉴 이동까지만 만든 미완성입니다. |
바이오리듬biorhythm.bas | BIO.BAS | 1993 | 생년월일로 건강·감성·지성 주기를 텍스트 화면에 그리고, 달력처럼 인쇄합니다. |
계산기calculator.bas | CALCU2.BAS | 1993 | 숫자를 한 줄씩 적어 내려가며 결과를 누적하는 전표식 계산기. |
계산 연습 RANDOMcalc-add-sub.bas | RANDOM.BAS | 1994 | 0~99 두 수의 덧셈 또는 뺄셈 20문제. |
계산 연습 MULTIcalc-multiply.bas | MULTI.BAS | 1994 | 0~99 × 0~9 곱셈 20문제. |
청기백기flag-game.bas | FF4.BAS | 1995 | 음성 명령을 듣고 깃발 키를 누르는 게임. SVGAQB로 640×480 256색 그림을 띄우고 사운드블라스터로 음성을 냅니다. |
퍼즐 그림 맞추기puzzle-game.bas | PUZZLE.BAS | 1996 | 장미 그림을 3×3으로 잘라 화살표 키로 맞추는 슬라이딩 퍼즐. |
계산 연습 CPcalc-practice.bas | CP.BAS | 1996 | "Calculation Practice Trainer". 항 개수와 자릿수를 정해 덧셈·뺄셈 암산 문제를 냅니다. |
청기백기와 퍼즐을 만들 때 쓴 도구와 시험 코드
1995~1996년 SVGAQB 라이브러리로 그림, 스프라이트, 소리를 다루려고 만든 것입니다.
| 파일 | 원래 이름 | 연도 | 내용 |
|---|---|---|---|
PCX 읽기 모듈 (SVGAQB판)pcx-svga.bas | PCX-SV.BAS | 1995 | PCX 그림 디코더. QB 내장 그래픽 명령을 SVGAQB 호출로 바꿔 256색 고해상도에 그립니다. |
PCX 보기 (SVGAQB판)pcx-svga-viewer.bas | PCXREAD2.BAS | 1995 | 명령행으로 받은 256색 PCX 파일의 정보를 보여 주고 크기에 맞는 해상도로 띄웁니다. |
깃발 내린 스프라이트 만들기flag-sprite-down.bas | MDATA.BAS | 1995 | DOWNBN.GIF에서 청기·백기를 내린 그림을 잘라 bd.spr, wd.spr로 저장합니다. |
깃발 올린 스프라이트 만들기flag-sprite-up.bas | MDATAUP.BAS | 1995 | UPBN.GIF에서 청기·백기를 올린 그림을 잘라 bu.spr, wu.spr로 저장합니다. |
깃발 스프라이트 확인flag-sprite-check.bas | GREADS.BAS | 1995 | DOWNBN.GIF를 띄우고 그 위에 bu.spr를 찍어 스프라이트가 제대로 저장됐는지 봅니다. |
사운드블라스터 음성 재생 시험sb-voice-test.bas | VOICE.BAS | 1995 | 사운드블라스터 포트를 직접 다뤄 DON2.WAV를 DMA로 재생합니다. |
WAV 파일 길이 시험wav-size-test.bas | OVERLF.BAS | 1995 | DON2.WAV를 RANDOM 파일로 열어 LOF 값을 정수 변수에 넣어 봅니다. |
퍼즐 빈 칸 스프라이트 만들기puzzle-blank-sprite.bas | MKPU.BAS | 1996 | board.gif의 왼쪽 위 88×122 영역을 잘라 board.spr로 저장합니다. |
퍼즐 조각 좌표 계산puzzle-piece-coords.bas | DAT.BAS | 1996 | 3×3 퍼즐 칸마다 왼쪽 위·오른쪽 아래 좌표를 찍어 봅니다. |
작은 프로그램과 시험 코드
웹 버전은 없고 소스만 남깁니다.
| 파일 | 원래 이름 | 연도 | 내용 |
|---|---|---|---|
data.msg 만들기make-data-msg.bas | MAKEDATA.BAS | 1991 | 1부터 29까지를 쉼표로 이어 data.msg 파일에 씁니다. |
암호 잠금password-lock.bas | QU.BAS | 1991 | 다섯 글자 암호를 맞힐 때까지 "Enter password."를 반복합니다. |
타이틀 화면title-screen.bas | MAIN.BAS | 1991 | 허큘리스 화면에 "Begin !!"을 크게 키워 그리고 한 글자씩 안내문을 찍습니다. |
격자 스프라이트 편집기sprite-grid-editor.bas | GE.BAS | 1991 | 20×20 격자에서 점을 찍어 작은 그림을 만들고 GET 배열로 저장합니다. |
허큘리스 화면 BSAVE 시험hercules-bsave.bas | BSAVE.BAS | 1991 | 허큘리스 그래픽 화면 메모리(B000:0000부터 32KB)를 파일로 저장합니다. |
.pic 그림 불러오기pic-loader.bas | READPIC.BAS | 1991 | "AH" 머리의 압축 .pic 그림을 풀어 허큘리스 화면 메모리에 바로 씁니다. |
화면 반전 채우기screen-fill-test.bas | DDD.BAS | 1991 | 검은 글자·흰 바탕 색으로 바꾸고 빈 줄을 찍어 화면을 위로 밀어 올립니다. |
마우스 시험mouse-test.bas | MOUSETE.BAS | 1991 | 허큘리스 화면에서 mouse SUB를 부르는 세 줄짜리 시험. SUB 본체는 남아 있지 않습니다. |
텍스트 모드로 돌아가기text-mode-switch.bas | TS.BAS | 1993 | 그래픽 화면에서 멈춘 모니터를 SCREEN 0으로 돌려놓는 작은 유틸리티. |
타일 지도 그리기tile-map.bas | DE.BAS | 1993 | MAP 파일의 1을 20×20 벽돌 그림으로 바꿔 허큘리스 화면에 찍습니다. |
한 줄 입력 SUB (Kinput)line-input.bas | KINPUT.BAS | 1993 | INPUT 대신 쓰려고 만든 한 줄 편집 SUB. 보이는 폭보다 긴 글을 옆으로 밀며 고칠 수 있습니다. |
텍스트 화면 저장과 복원text-screen-save.bas | TSS.BAS | 1993 | 텍스트 화면 메모리를 BSAVE로 저장했다가 화면을 지운 뒤 BLOAD로 되살립니다. |
DOS 시계 (1/100초)dos-time.bas | DOSINCLO.BAS | 1995 | DOS 인터럽트 21h 2Ch로 시각을 읽어 1/100초가 바뀔 때마다 찍습니다. |
아날로그 시계analog-clock.bas | CLOCK.BAS | 1995 | SCREEN 12에 색 점을 뿌리고 DRAW의 TA(회전) 명령으로 시침·분침·초침을 그립니다. |
큰 글자 타자big-letters.bas | S12ASC.BAS | 1995 | 친 글자를 화면 위에 찍고 POINT로 읽어 상자 모양 점으로 크게 다시 그립니다. |