컴퓨터 랜드 ‘내가 만들었어요’

중학교 시절부터 시작한 프로그래밍..
아주 예전에 학생과학 월간잡지의 별책 부록인
컴퓨터 랜드에 ‘내가 만들었어요’ 라는 코너가 있었다.
이 코너는 당시 주류 언어였던 GW-BASIC이나 Q-BASIC으로 만든 프로그램을
선별하여 싥어주는 코너 였다.
이 코너에 싥린 코드중 선별하여 책으로 묶어 나왔었다.

computer_land

여기에 내가 만든 코드도 싥렸었다.

2

calendar.pdf

예전에 이 책이 있었던것 같은데.. 지금은 어딜 갔는지…

Sound Blaster Vibra 16 DOS 드라이버

Sound Blaster Vibra 16 (CT2810) 도스 드라이버 설치 파일.
실제 머신에서 테스트 되었음.

압축 파일내에 본 설치 디스켓과 엑서사리 디스켓이 있음.
두개다 디스켓으로 복사해서 설치하는것이 좋음.

vibra16

참고로 아래와 같이 칩셋에 ViBRA 16 뒤에 알파벳 없는 버전은
OPL3(YMF262) 칩셋을 내장하고 있기에 가급적이면 알파벳 없는 버전을 구하는게 좋음.

vibra16_chipset

Creative_Vibra_16.rar

Sound Blaster 16 DOS/Windows 3.1 드라이버

설치시 IRQ 및 기타 정보들을 자동으로 감지하여 적용해줌.
실제 머신에서 테스트 완료 했음.
압축 파일을 보면 install 폴더내의 파일들만 디스켓으로 옮겨서 설치하시면 됨.
확인해보니 1.44MB 디스켓 한장에 들어감.

참고로 사블 16은 사블 2.0과 다르게 IRQ 셋팅 점퍼가 없어서..
(한참 보드를 쳐다봤음.. -_-)
드라이버를 통해서만 변경 및 셋팅이 가능하므로 반드시 설치해야함.

2

SB16_Dos_Install_Disks.rar

Sound Blaster 2.0 DOS 드라이버

사운드 블래스터 2.0 드라이버 설치 파일임.

자질구리하게 AUTOEXEC.BAT나 CONFIG.SYS 를 만질 필요 없이
설치시 IRQ 등 환경을 자동으로 감지하여 적용해 준다.
실제 머신에서 테스트 완료.

압축 파일내 4개의 디스켓 폴더가 보이는데,
1.44MB 디스켓 두장으로
첫번째 장엔 Disk 1, 2 폴더내의 파일들을..
두번째 장에는 Disk 3, 4 폴더내의 파일들을 복사하시면 됩니다.

1

Sound_Blaster_2.0_CT-1350B_Install_Disks.rar

도스용 디스켓 이미지 생성 프로그렘

Teledisk
http://www.classiccmp.org/dunfield/img54306/teledisk.htm

teled216.zip

DISKCOPY
http://www.drdosprojects.de/index.cgi/download.htm

아래에서 다운받아 압축 풀면 있음.
dr70101b.zip

DISKCOPY R2.04    Diskette copying utility
Copyright (C) 1990,1997 Caldera, Inc.  All rights reserved.

DISKCOPY [SOURCE] [DESTINATION] [/1][/A][/M]

SOURCE and DESTINATION may be a disk drive, or a disk image file
(only disk drives supporting removable media may be used).

  /1            copy only the first side of the disk
  /A            audible warning of disk change and copy complete
  /M            make multiple copies of a single disk or image file
  /V            verify that the disk is being copied correctly

Examples:
  DISKCOPY A: A: /M
      Make multiple copies of a disk using only drive A:
  DISKCOPY B: C:\IMAGE\DISK1.IMG
      Generate an image file from disk in drive B:
  DISKCOPY C:\DISK2.IMG A:
      Copy the image file C:\DISK2.IMG to disk drive A:

XMODEM, YMODEM, ZMODEM 프로토콜을 이용한 파일 전송 윈도우즈 프로그램

출처: http://www.extraputty.com/features/zmodem.html

sz_tz_zmodem.zip

1990년대 PC통신에 접속해서 파일 업/다운로드 시에 사용된 프로토콜인
XMODEM, YMODEM, ZMODEM 이용한 파일 송/수신 윈도우즈용 프로그램.

C:\Users\user>C:\Temp\rz.exe -help
C:\Temp\rz.exe version
Usage: C:\Temp\rz.exe [options] [filename.if.xmodem]
Receive files with ZMODEM/YMODEM/XMODEM protocol
    (X) = option applies to XMODEM only
    (Y) = option applies to YMODEM only
    (Z) = option applies to ZMODEM only
  -+, --append                append to existing files
  -a, --ascii                 ASCII transfer (change CR/LF to LF)
  -b, --binary                binary transfer
  -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)
  -c, --with-crc              Use 16 bit CRC (X)
  -C, --allow-remote-commands allow execution of remote commands (Z)
  -D, --null                  write all received data to /dev/null
      --delay-startup N       sleep N seconds before doing anything
  -e, --escape                Escape control characters (Z)
  -E, --rename                rename any files already existing
      --errors N              generate CRC error every N bytes (debugging)
  -h, --help                  Help, print this usage message
  -m, --min-bps N             stop transmission if BPS below N
  -M, --min-bps-time N          for at least N seconds (default: 120)
  -O, --disable-timeouts      disable timeout code, wait forever for data
      --o-sync                open output file(s) in synchronous write mode
  -p, --protect               protect existing files
  -q, --quiet                 quiet, no progress reports
  -r, --resume                try to resume interrupted file transfer (Z)
  -R, --restricted            restricted, more secure mode
  -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds
  -S, --timesync              request remote time (twice: set local time)
      --syslog[=off]          turn syslog on or off, if possible
  -t, --timeout N             set timeout to N tenths of a second
  -u, --keep-uppercase        keep upper case filenames
  -U, --unrestrict            disable restricted mode (if allowed to)
  -v, --verbose               be verbose, provide debugging information
  -w, --windowsize N          Window is N bytes (Z)
  -X  --xmodem                use XMODEM protocol
  -y, --overwrite             Yes, clobber existing file if any
      --ymodem                use YMODEM protocol
  -Z, --zmodem                use ZMODEM protocol

PCem with MT-32 Emulator

DosBox와는 지향하는 바가 다른 고전 PC 에뮬레이터 PCem 이 날로 발전중임.
아래는 PCem 과 MT-32 Emulator를 이용하여 도스 게임에서 MT-32 음원을 들어보는 방법을 적음.

1. MT-32 Emulator (Munt) 설치

현재 최신버전 1.5.0 (munt-1.5.0-win32.exe) 을 다운받아 설치한다.
http://sourceforge.net/projects/munt/files/munt/1.5.0/Win32/

다음 드라이버 업데이트를 받아 설치한다.
http://sourceforge.net/projects/munt/files/munt/1.5.0-Updates/

64비트 Windows: mt32emu_win32drv-1.1.1-amd64.zip
32비트 Windows: mt32emu_win32drv-1.1.1-win32.zip

1

다음 Munt 를 실행한다.

2

MT-32 롬파일들을 구글링하여 다운 받은후.. 디렉토리를 추가해준다.

3

2. PCem 사운드 카드 셋팅

4

이렇게 사운드 카드를 셋팅후 PCem을 재 부팅하면 윈도우즈 하단에 Munt가 붙었단 메세지가 나옴.

5

3. SoftMPU 설치

이제 도스용 SoftMPU 를 설치함. 아래에서 다운을 받고.
http://bjt42.github.io/softmpu/

다음 PCem 하드로 복사함.
그리고 아래와 같이 Autoexec.bat를 셋팅.

6

다음 PCem을 재부팅하면 아래와 같이 SoftMPU와 Munt가 연결됨.

7

4. MT-32 지원 도스 게임 플레이.

이제 도스 게임중 MT-32가 지원되는 게임을 찾아 사운드 셋팅을 MT-32 로 변경해서 플레이함.

CentOS 에서 USB 하드 마운트 시키기

우선 USB 하드를 꼽고, fdisk -l을 입력함.

% fdisk -l
...
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x03f92b08

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1      121602   976762528    7  HPFS/NTFS
...

다음 마운트해본다.

% mount /dev/sdb1 /home/usb
mount: unknown filesystem type

ntfs 파일 시스템을 인식못함.

% yum install -y yum-priorities 
% vim /etc/yum/pluginconf.d/priorities.conf
[main]
enabled = 1
check_obsoletes = 1 <-- 추가
priority = 2 <-- 추가

다음 아래 싸이트에 가서 내 시스템에 맞는 rpm을 설치한다.
http://pkgs.repoforge.org/rpmforge-release/

% rpm -ivh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
% yum check-update
% yum install fuse fuse-ntfs-3g dkms dkms-fuse

이제 마운트해본다.

% mount /dev/sdb1 /home/usb