Back to the future


Posted in:
somjate's picture

บทความนี้เอาใจคนที่เกิดในยุคหลังปี 60 หรือช่วงยุคหลังเพลง rock'n roll เริ่มเข้าสู่ยุคปี 70 คนช่วงนี้จะได้ยินเพลงสากลที่นำเสนอในหลากหลายรูปแบบ อายุอานามก็น่าจะประมาณ 35 ขึ้นไป ถ้าได้อ่านบทความนี้แล้วอาจจะ “อิน” เหมือนดูหนังเรื่อง “แฟนฉัน” อารมณ์ประมาณนั้นเลย ...

คอมพิวเตอร์เริ่มเข้ามามีบทบาทมากมายต่อมนุษยชาติ พัฒนาจากเครื่องระดับเมนเฟรมมาเป็นมินิเมนเฟรม แต่จะมีใช้เฉพาะกับหน่วยงานรัฐหรือบริษัทใหญ่ๆเท่านั้น ใครอยู่ยุคนี้คงจะได้เห็น สื่อนำเข้าข้อมูล ที่เป็นกระดาษเจาะรู ต่อมาเปลี่ยนเป็นเทป เป็นแผ่นดิสต์ สุดท้ายก็เป็นฮาร์ดดิสต์ และนาย Steve Job ก็มาเป็นผู้พลิกโลกว่า คอมพิวเตอร์นั้นก็เป็นสิ่งที่ทุกคนสามารถจับต้องได้ บรรพบุรุษของพีซีคอมพิวเตอร์ก็กำเนิดขึ้นมา Apple-I ที่มีสถานะปัตย์แค่ 4 bit มาเป็น Apple-II ที่ใช้ซีพียู Z-80 สถาปัตย์แบบ 8 bit ความเร็ว 2.5 MHz โดยใช้ระบบปฏิบัติการ(OS)สุดท้ายคือ CP/M

ตอนนั้นไม่เคยมีใครคาดคิดว่า Apple จะล้มไม่เป็นท่า เพราะ Apple มีอิทธิพลในตลาดคอมพิวเตอร์อย่างมากมายในขณะนั้น จนได้ฉายาว่าเป็นยักษเล็กของวงการคอมพิวเตอร์ เพราะความชะล่าใจในผลิตภัณฑ์ของตัวเอง สุดท้ายกก็พลาดท่าเสียทีทางธุรกิจให้กับยักษ์ใหญ่ของวงการ IBM ที่เชี่ยวชาญเครื่อง MainFrame และ Mini Computer ได้ซุ่มพัฒนาคอมพิวเตอร์ส่วนบุคคล และได้กำเนิดคอมพิวเตอร์รุ่นแรกและได้กลายเป็นบรรพบุรุษของคอมพิวเตอร์ในยุคปัจจุบัน “IBM Personal Computer” หรือคำย่อ PC รุ่นแรกใช้ซีพียูแบบ Intel 8088/8086 สถาปัตย์16 bit ความเร็วเริ่มต้นที่ 4.77MHz ผู้ผลิตซีพียูก็คือ Intel ก็ได้เป็นเจ้าครองตลาดซีพียูมาจวบจนปัจจุบันนี้ มาทางฝั่งระบบปฏิบัติการบ้าง IBM เลือก MS-DOS เจ้าของก็คือบริษัทไมโครซอฟท์ คุณรู้จัก Bill Gate มั้ย! เขานี้แหล่ะเจ้าของ และได้กลายเป็นอภิมหาเศรษฐี ที่รวยจนเรียกได้ว่าตายไปสิบชาติเกิดมาใหม่ก็อาจจะใช้เงินไม่หมด ...

ยุคนี้ถือว่าเป็นช่วงที่มีการนำคอมพิวเตอร์มีใช้งานจริงๆจังๆในทุกภาคส่วน ดังนั้นใครเดินถือกระดาษพิมพ์ต่อเนื่อง ดูแล้วเท่ห์จริงๆ หรือเห็นถือกล่องดิสต์เก็ตขนาด 5.25 นิ้ว ไม่ว่ายี่ห้อ IBM,Maxell,Verbatim จะรู้สึกว่าเขาคอยาวขึ้นกว่าปกติ ...

ถ้าจำกันได้ซอฟท์แวร์ที่เคยใช้เพื่อพัฒนาชาติไทยให้รุ่งเรืองมาถึงทุกวันนี้ก็คือ Dbase และ Lotus 1-2-3 และ WordStar เป็นโปรแกรมบุกเบิกในยุคแรกๆ ขณะที่ภาษาไทยในยุคนั้นถือเป็นเรื่องยากมากๆต้องใช้เทคโนโลยีของฮาร์ดแวร์เข้าช่วย ซอฟท์แวร์ภาษาไทยตัวแรกที่โด่งดังตอนนั้นก็คือ RW-Word (ราชวิถีเวิร์ด) พัฒนาโปรแกรมเลียนแบบการทำงานของ WordStar แต่การใช้งานภาษาไทยต้องใช้ควบคู่กับการ์ดแสดงผลที่นำมาโมดิฟายภาษาไทยใหม่ (Hercules Card) ตอนนั้นแสดงผลภาษาไทยหนึ่งจอภาพได้แค่ 8 บรรทัดเท่านั้น แต่ผู้ใช้งานทั่วไปก็มีความสุขกับภาษาไทยดังกล่าว ในเวลาต่อมาโปรเจคที่เริ่มโดยนิสิตภาควิศกรรมของจุฬา ได้สร้างโปรแกรมมีชื่อว่า CW-Word (เวิร์ดจุฬา) ปฏิวัติวงการภาษาไทยในช่วงนั้นคือ การแสดงผลสร้างด้วยซอฟท์แวร์ล้วนๆ ทำให้สามารถแสดงผลภาษาไทยได้มากกว่า 8 บรรทัด และไม่กี่ปีถัดมา Microsoft Windows 3.0 กับ Office 1.0 ก็มาทำให้ยุคเฟื่องฟูของ DOS ค่อยๆปิดฉากลงไปอย่างเงียบๆ ...

มาดูหน้าตาโปรแกรมเหล่านี้กัน

DBASE โปรแกรมฐานข้อมูลยอดนิยม

LOTUS 1-2-3 สุดยอดโปรแกรมสเปรดชีตของ DOS

RW 2.4 เป็นรุ่นสุดท้ายที่พัฒนาขึ้น จะมีสถาปัตย์คล้ายกับ CW

CW 1.6 ก็เป็นรุ่นสุดท้ายเช่นเดียวกัน

แหล่งดาวน์โหลด
http://www.vetusware.com/
ftp://ftp.chula.ac.th/pub/cuword/
http://www.mahamodo.com/downloads/programsdetail.aspx?id=76

จริงๆแล้วคุณ tunyawat ได้เคยรีวิวเรื่องนี้ไว้ในบล็อกเว็บนี้มาก่อน แต่ผู้เขียนก็อยากเขียนเรื่องนี้เพิ่มเติมในรูปแบบของตัวผู้เขียนเอง หวังว่าผู้อ่านคงจะไม่เบื่อหรือเซ็งกันก่อน ...

http://www.ubuntuclub.com/node/156

ผู้เขียนจะพาท่านเจาะเวลาหาอดีตอันแสนชุ่มฉ่ำกับโลดแล่นไปกับยานพาหนะตัวนี้ DOSBox


http://dosbox.sourceforge.net

(หมายเหตุคัดลอกมาจากบทความเดิมที่เคยเขียนไว้ใน “ไทยลินุกส์คาเฟ่” ถือว่าเป็นบทความแรกที่เขียนขึ้นบนโลกไซเบอร์ และเป็นแรงจูงใจให้ผู้เขียนศึกษาโปรแกรมโอเพ่นซอร์สโดยไม่เคยเบื่อมาจนถึงปัจจุบัน อีกปราการก็คือใช้พื้นที่บล็อกนี้เป็นสำเนาบทความอีกแหล่ง)
http://www.thailinuxhosting.com/yabbse/index.php?action=display&board=16...

DOSBox คือโปรแกรมจำลองหรือเลียนแบบการใช้งาน MS DOS ใช้ SDL-library เป็นพื้นฐานในการพัฒนาโปรแกรม สำหรับ DOSBox สามารถใช้ได้ในหลายๆแพลตฟอร์ม Windows / BeOS / MacOS X และ Linux โปรแกรม DOSBox จะจำลอง CPU Intel 80286 / 80386 / 80387 ในลักษณะแบบ real mode/protected mode ทำให้สามารถใช้เมมโมรี่ EMS/XMS ได้ ทางด้านกราฟฟิค สามารถจำลอง Graphic Card ที่นิยมในอดีตมากมาย CGA / HERC / EGA / VGA / VESA / SVGA / BIOS / TANDY ส่วนการจำลองซาวนด์ต่างๆ ก็หลากหลายเช่นกัน LIB / PC-SPEAKER / TANDY / SBLASTER / CMS / DISNEY / GUS และอุปกรณ์เสริมอื่นๆ เช่น Joystick ฯลฯ

DOSBox นอกจากถูกพัฒนาขึ้นมาเพื่อเกมส์ DOS เก่าๆแล้ว ยังรวมถึงโปรแกรมใช้งานด้านต่างๆ ที่นิยมใช้งานบนดอสในอดีต ซึ่งปัจจุบันมาตราฐานฮาร์ดแวร์และซอฟท์แวร์ ไม่สามารถทำให้โปรแกรมเหล่านี้ใช้งานได้ DOSBox ได้ชุบชีวิตโปรแกรมต่างๆเหล่านี้ให้มีชีวิตชีวา และโลดเล่นบนโลกไอทีแห่งนี้ได้อีกครั้ง ทำให้คนรุ่นเก่าได้รำลึกถึงความหลังอันแสนสนุกในช่วงวัยเยาว์ และคนรุ่นใหม่ได้เห็นการพัฒนาการด้านไอทีจากอดึตจนถึงปัจจุบัน...

การติดตั้ง DOSBox

สำหรับผู้ใช้งาน Ubuntu การติดตั้งโปรแกรม DOSBox นั้นเป็นเรื่องง่ายๆ ตัวโปรแกรมเล็กนิดเดียวแต่ใจใหญ่ ลักษณะ “จิ๋วแต่แจ๋ว” ด้วยคำสั่งนี้ผ่านคอมมานด์ไลน์

sudo apt-get install dosbox

หลังจากเรียกติดตั้งโปรแกรมเรียบร้อยสามารถเรียกโปรแกรมผ่านทางเมนู หรือจะเรียกด้วยคอมมานต์ไลน์ก็ตามสะดวก พิมพ์คำว่า dosbox จะปรากฏหน้าจอดังกล่าว

การปรับแต่งค่า DOSBox

เมื่อเริ่มใช้ DOSBox จะมีหน้าจอขนาดเล็ก หน่วยความจำ 16 MB และ เริ่มทำงานที่ Drive Z: ตัวอย่าง ผู้เขียนต้องการให้แสดงผลเต็มหน้าจอ ใช้หน่วยความจำ 64 MB และให้มาอยู่ ณ ตำแหน่ง Drive C: และเป็นที่จุดผู้เขียนเก็บโปรเกมส์ดอสต่างๆ มีวิธีทำดังนี้ สร้างไฟล์ .conf ขณะที่อยู่ในโปรแกรม DOSBox

config -writeconf /home/[ชื่อยูสเซอร์ที่ล็อกอิน]/DOS/[ชื่อตามต้องการ].conf

ให้ออกจากโปรแกรม DOSBox แล้วไขไฟล์ .conf ด้วยโปรแกรม editor ตามถนัด เช่น mydos.conf คือไฟล์ของผู้เขียน

gedit mydos.conf

ภายในแฟ้มดังกล่าว จะเป็นค่าเริ่มต้นของ DOSBox และสามารถแก้ไขปรับปรุงได้ตามความต้องการ

#แสดงผลเต็มหน้าจอ
[sdl]
fullscreen=true

#ให้มีหน่วยความจำ 64 MBytes
[dosbox]
memsize=64

#กำหนดค่าเริ่มต้น ให้อยู่ที่ C: (ซึ่งชี้มาตำแหน่งที่ผู้ใช้ต้องการ)
[autoexec]
mount c /home/userone/Desktop/DOS/Games
c:
cls

รู้ไว้ใช่ว่า ใส่บ่าแบกหาม ถ้าคนเคยใช้ DOS มาก่อนจะเข้าใจดี

คำสั่งภายนอก External Command

BOOT Have DOSBox load and run an alternative operating system.
COMMAND The DOSBox DOS.
CONFIG Creates configuration and language files.
IMGMOUNT A utility to mount disk images and CD-ROM images in DOSBox.
(INTRO)? Displays a short introduction into DOSBox
LOADFIX Application used to eat some low-memory.
MEM Displays the amount of free memory inside DOSBox.
MIXER Displays the current sound/mixer volume settings.
MOUNT Connects your real directories to DOSBox directories.
RESCAN Clears the drive-caching of DOSBox.

คำสั่งภายใน Internal Command

CHDIR Change Directory.
CLS Clear screen.
COPY Copy files.
DIR Directory View.
DELETE Removes files.
ECHO Display messages and enable/disable command echoing.
EXIT Exit from the shell.
MKDIR Make Directory.
RMDIR Remove Directory.
SET Change environment variables.
IF Performs conditional processing in batch programs.
GOTO Jump to a labeled line in a batch script.
TYPE Display the contents of a text-file.
REM Add comments in a batch file.
RENAME Renames files.
PAUSE Waits for 1 keystroke to continue.
CALL Start a batch file from within another batch file.
SUBST Assign an internal directory to a drive.
LOADHIGH Run a program. For batch file compatibility only.
CHOICE Waits for a keypress and sets ERRORLEVEL.
ATTRIB Does nothing. Provided for compatibility.

ปุ่มควบคุมพิเศษSpecial Keys

ALT-ENTER Switch to full-screen (and back).
CTRL-F1 Show the keymapper configuration screen,
CTRL-F4 Update cached information about mounted drives.
CTRL-F5 Save a screenshot (goes to capture folder).
CTRL-F6 Start/Stop recording sound output to a wave file.
CTRL-ALT-F7 Start/Stop recording of OPL commands.
CTRL-ALT-F8 Start/Stop the recording of raw MIDI commands.
CTRL-F7 Decreases frameskip.
CTRL-F8 Increases frameskip.
CTRL-F9 Kill (close) DOSBox.
CTRL-F10 Capture/Release the mouse
CTRL-F11 Decrease DOSBox cycles (slows down the emulation).
CTRL-F12 Increase DOSBox cycles (speeds up the emulation).

นี่คือภาพแรกของเกมส์แรกในเชิงพาณิชย์ "Pong" กับบรรพบุรุษของเครื่องเล่น Video Game ที่สามารถนำมาต่อกับโทรทัศน์ ผู้เขียนเป็นคนหนึ่งล่ะที่มีโอกาสได้เห็นแบบตัวเป็นๆมาแล้ว คิดแล้วเป็นบุญตาจริงๆ ...

สำหรับรุ่นเก๋าๆที่ต้องการเล่นเกมส์เก่าๆของ DOS สามารถตามผู้เขียนไปแจมกันได้ในบอร์ด Ubuntu Entertainment

http://forum.ubuntuclub.com/ubuntu-entertainment/dos-games-dosbox/

สุดท้ายผู้เขียนมีคำถามมาให้เล่นสนุกๆ

  • LOTUS 1-2-3 ใช้ปุ่มใดเรียกเมนู?
  • RW ใช้ปุ่มคีย์บอร์ดใดในการสลับภาษาไทย/อังกฤษ?
  • CW ทำอย่างไรให้แสดงเสียงประจำ ม.จุฬาฯ เมื่อเปิดโปรแกรมใช้งาน?
  • คิดถึงอดีตจริงๆ

    ขอบคุณ คุณสมเจตมากเลย ที่ทำให้นึกถึงอดีต สมัยที่เป็นนักศึกษาแล้วหัดบ้าคอมพิวเตอร์ใหม่ๆ ตอนนั้นก็พกดิสเก็ตเป็นกล่องๆ เครื่องคอมพิวเตอร์ที่หัดเขียนโปรแกรมเครื่องแรกๆ ก็เป็น Apple II
    ผมขอขอบคุณทุกๆ ท่านที่ช่วยกันต่อยอดความรู้ โดยเฉพาะอย่างยิ่งคุณสมเจตน์ ที่เป็นหัวเรื่ยวหัวแรงสำคัญในการพัฒนาชุมชนโอเพนซอร์ส
    http://oss.nn.nstda.or.th/Dos.html <=== Dosbox ของคุณสมเจตน์ ทำให้ผมระลึกถึง บทความการใช้ Dos บนลีนุกซ์ ซึ่งในขณะนั้นมีคนอ่านขึ้นเป็นอันดับหนึ่งใน www.openarch.net ของคุณมะระ ตอนนั้นยังอิง host คุณมะระ อยู่ ต่อมา พอ สวทช. เข้ามา ผมก็เอาเว็บไปอิงกับ สวทช.
    ซึ่งพวกเรามีวัฒนธรรมในการแลกเปลี่ยนความรู้กัน ต่อยอดความรู้ให้กันมาเรื่อยๆ แหละครับ เติมส่วนที่ขาดให้กันและกัน
    สิ่งที่อยากจะบอกกับทุกๆ คนใน Club ก็คงจะเป็นว่า ชุมชนโอเพนซอร์ส ไม่ได้เติบโตเพียงลำพังคุณมะระ กับทีมบริหาร club แต่เกิดจากทุกๆ คนในคลับ ร่วมแรงร่วมใจกันผลักดันและสนับสนุนในการเผยแพร่เทคโนโลยีโอเพนซอร์ส
    ทุกๆ วันนี้ผมก็ท้อถอยกับปัญหาต่างๆ ในชีวิต แต่เมื่อได้เห็นว่าผมเองกับพวกเราได้ต่อสู้กันมามากแค่ใหน ทำให้รู้สึกว่าความเหนื่อยที่ผ่านมาเป็นเพียงเรื่องเล็กน้อย

    คุณสมเจตน์ครับ ผมจำได้แต่ว่า RW ใช้ปุม ESC ในการสลับภาษา
    ส่วน CW นั้น จะต้องไปตั้งค่าจากในเมนู จำได้แค่นั้นแหละครับ

    ประธานกลุ่มคอมพิวเตอร์และอินเตอร์เน็ต
    121 ม.3 ต.สง่าบ้าน อ.ดอยสะเก็ด จ.เชียงใหม่
    50220
    http://www.sangaban.org

    gumara's picture

    คุณเอ๋ทำผ

    คุณเอ๋ทำผมคิดถึง openarch จริงๆ อยากหยิบมาทำต่อนะ แต่กิจกรรมคลับก็ เยอะจะแย่แล้ว + ความรู้ด้าน computer graphic ของผมแทบไม่เหลือแล้ว

    somjate's picture

    ยกเครดิตให้

    ขอบคุณครับอาจารย์

    เขียนไตเติ้ลนี้ด้วยความอ่อนล้า นอนดึกมาหลายวัน เช้ามาตรวจบทความ เขียนได้งงๆดีแท้ โดดไปโดดมา เลยต้องมาปรับความสัมพันธ์ของบทความใหม่ ...

    ผมรู้จักกับ DOSBox ครั้งแรกก็จากลิงค์ของอาจารย์แหล่ะครับ เครดิตบล็อกไตเติ้ลนี้ผมยกให้กับอาจารย์นะครับ ...

    ^^

    ผมคงจะไม่กล้ารับเครดิต

    ผมคงจะไม่กล้ารับเครดิต อะไรมากมายขนาดนั้น เพราะลำพังผมคนเดียวก็ทำอะไรมากมายขนาดนี้ไม่ได้
    ความรู้หลายๆ อย่าง ผมก็ไม่ได้คิดเอง ศึกษาเองเอง ผมเองก็ได้รับมาจากคนที่รักโอเพนซอร์ศ หลายๆ ท่าน ทั้งที่เป็นคนไทย แล้วก็คนต่างชาติ แล้วผมก็เอามาเรียบเรียงให้เป็นบทความ
    แต่อาศัยความร่วมแรงร่วมใจจากทุกๆ คนที่ได้ชวยเหลือผม บางท่านช่วยเหลือผม โดยไม่หวังผลอะไร ทั้งท้องถิ่นโอเพนซอร์ส ที่ผมทำ ผมก็ได้รับแรงสนับสนุนจากหลายๆ ท่านในด้านความรู้ เพื่อให้การพัฒนาเป็นไปอย่างเป็นประสิทธิผล และพวกเราก็ได้สิ่งที่พวกเราอยากจะได้ ก็คือ ความรู้ในการพัฒนาโอเพนซอร์ส ว่าต้องทำอย่างไร
    แค่ผมเห็นโอเพนซอร์สมันเติบโตขึ้น ผมก็ดีใจแล้วครับ

    ประธานกลุ่มคอมพิวเตอร์และอินเตอร์เน็ต
    121 ม.3 ต.สง่าบ้าน อ.ดอย
    สะเก็ด จ.เชียงใหม่
    50220
    http://www.sangaban.org

    โอ้วม่าย

    โอ้วม่าย เห็นแล้วนึกถึงอดีต ได้ใช้เกือบหมด(ยกเว้น dbase) ให้ละลึกความหลังนิดๆ(เหมือนดักอายุคนตอบไงไม่รู้แฮะ)

    ตอบได้ข้อ

    ตอบได้ข้อเดียวอ่ะ lotus 1-2-3 ใช้ปุ่ม / เปิด menu ครับ อิอิ
    เคยเล่นสมัย อายุยัง 1 หลักอ่ะ

    dbase ก็เคยลองนะ สร้าง table ทำ relation สร้าง form อ่ะ สนุกดี

    rw-cw เคยเรียนตอน ป.4 แต่จำไม่ได้ว่าทำไง ตอนนั้นใช้ 3.1 แระ

    บางครั้งบ

    บางครั้งบางครา ผมยังแอบเอางานเขียนเก่าๆ ซึ่งเคยกระทำบนเวิร์ดจุฬามานั่งอ่านนั่งดูบนจอดำๆ ตัวหนังสือเขียวๆ ได้อารมณ์พิลึก

    อ้อ... คุณสมเจตน์ลืม Harvard Graphic อีกตัวหรือเปล่า
    เพราะตอนนั้นหากจะสร้างแผนภูมิ กราฟ เพื่อนำเสนอ ก็ขาดตัวนี้ไม่ได้เลย

    +++++++++++++++++++++++
    http://my.opera.com/mekong/

    somjate's picture

    ใช่ ใช่

    ใช่ ใช่ ครับ Harvard Graphic จำได้แต่ชื่อ แต่นึกหน้าตาไม่ออกแหะ คงใช้งานกับมันน้อย...

    สมัยนั้นมีโปรแกรมดังๆไม่กี่ตัวที่ใช้งานกัน ตำรับตำราก็มีน้อย อินเตอร์เน็ตก็ไม่มี ประมาณจ๊าบตามยุคสมัย ...

    ูู^^

    Post new comment

    The content of this field is kept private and will not be shown publicly.
    • Web page addresses and e-mail addresses turn into links automatically.
    • Lines and paragraphs break automatically.
    • Allowed HTML tags: <i> <center> <span> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <br> <dt> <dd> <object> <embed> <hr> <img> <blockquote> <b> <u> <del> <div> <p> <table> <tr> <td> <font>

    More information about formatting options