遊戲開拓者 正文 第二章 軟件分析
    既然打算研究,自然先從軟件開始。

    我從軟盤盒內把隨機軟件一張張抽出來仔細看,這時候的軟盤還是5寸的大軟盤,根據軟盤上的標籤來看,這對軟盤中包括兩張AppleDOS盤、一張VisiCalc電子錶格軟件、一張看起來像是字處理軟件的盤、還有幾張遊戲盤。

    我先試了一下遊戲盤,都比較簡陋,習慣了後世絢麗畫面的遊戲,乍一看Apple-II上簡陋綠色柵格構成的遊戲畫面還真不習慣,好在這裡面居然還有一個貌似有些熟悉的遊戲《HEADON》,雖然畫面比較簡單,但玩起來頗有一種吃豆子的感覺。

    簡單看了一下遊戲盤後,我又把AppleDOS拿出來研究。現在Apple-II的操作系統還比較簡陋,基本上做不了什麼,連目錄也不支持,文件管理功能也基本上沒有,其實只是一個磁盤操作接口而已,我記得似乎還要過幾年才會出現一個功能比較強的ProDOS,那時候Apple-II上才算有了真正的磁盤操作系統。

    簡陋的AppleDOS,陌生的命令行,讓我終於受不了了,反正現在大把空閒時間,閒著也是閒著,乾脆重寫一個操作系統算了。其實也不能完全算重新寫,這要感謝後世發達的網絡,雖然那時的Apple-II早已成為老古董,但是有那麼一些人卻對這些老電腦情有獨鍾,甚至還有專門研究Apple-II的技術研討會和利用Apple-II研發低成本的組織。

    我就曾經在網上參加過這樣的組織,還一起分析過如何搭建性能更強的Apple-II操作系統,經過長達一年的反覆研討,我們最終拿出一個經過認真取捨和優化的操作系統,在編寫過程中我們還參考了一些微內核Linux的設計思想。當時考慮到Apple-II的硬件配置不高,在編寫操作系統代碼時做了盡可能的優化,最終的核心程序大約只有1500行。

    我仔細回憶了一下,曾經熟悉的代碼很快從腦海中浮現出來,我深吸一口氣,開始按照記憶錄入代碼,兩個多小時過去了,完成了代碼的輸入和初步核對。

    我馬上存盤,然後將軟盤的引導區作了修改,以便軟盤啟動後能順利引導新系統。重新啟動電腦,隨著一陣讀盤聲,新系統開始慢慢啟動,很快屏幕上出現了一個「LOGIN:」的提示符,輸入默認用戶名和密碼後,進入了命令行。

    這個新系統是根據後世常見的一些磁盤操作系統來設計的,可以支持磁盤、支持層次型目錄,提供文件管理功能,有內存調度功能,還能實現多任務(例如在運行文字處理軟件時需要某些數據,可以通過駐留的管理程序調出需要的其他軟件,查出來後又可以切換回文字處理軟件)。不過現在系統功能還不完整,暫時只完成了內核部分的代碼,還需要增加一些輔助程序,而且試運行過程中發現了一些小Bug,看起來代碼部分可能還有點問題,還需要做進一步的調試和優化。不過這款操作系統名字我倒是已經想好了,打算叫kylin。

    接下來的幾天裡,我天天泡在電腦室,上午是優化調試我的操作系統和增加一些輔助程序,下午則是指點趙叔使用Apple-II和翻譯《BASIC使用指南》。一個星期過去,我的操作系統基本完工,趙叔也學會了Apple-II的基本操作和利用BASIC寫點簡單程序,只是寫代碼的時候常常還需要看看我寫的手抄版BASIC使用手冊。

    「樂行,不錯嘛,這才個把星期就弄出一本手冊來,趙叔會用這新機器可全靠你呀。」趙叔邊翻BASIC手冊邊感謝我。

    「沒什麼的,我其實也是看了隨機資料才寫出來的,差不多就是翻譯一下而已。」我對趙叔擺了擺手。

    「我覺得你挺不錯的,比廠裡那兩個大學生有本事多了。」趙叔說道:「我看你挺喜歡計算機的,有沒有興趣過來幫趙叔的忙。」

    「趙叔,我行嗎?我才多大,廠裡能讓我進?」我有些懷疑。

    「沒事,你本來就是廠裡的家屬,廠長是我以前的戰友,趙叔幫你去說說,準沒問題,包在趙叔身上了。」趙叔拍拍胸口,把這事擔下來了。

    「趙叔,那這事可真麻煩您啦。」我心裡暗暗高興,嘴上不忘感謝趙叔。

    ---------------------------------------------

    過了兩天,我開始構思給操作系統增加一個C語言編譯器,因為C語言擁有良好的可移植性,這樣我編寫的代碼換到新電腦上很容易就可以利用起來,修改量會很小,畢竟明年IBM-PC就會發佈,雖然國內好像要到85年左右才開始引進,這可是未來幾十年的平台,可不是蘋果機能比的。

    快到中午時,我還在努力地堆著代碼時,趙叔突然滿臉興奮的衝進電腦室。

    「樂行,走,趙叔帶你吃午飯去。」趙叔樂呵呵的拉著我就走。

    到了廠裡的食堂,趙叔忍不住比平常多多打兩個菜,油汪汪的紅燒肉燉豆角干,看著就讓人眼饞。

    邊吃午飯趙叔邊向我解釋:「這兩天我去找廠領導了,把你寫的這個BASIC手冊拿出來一擺,當時就把人鎮住了。再加上我把你這段時間的一些情況往好了說,蘑菇了兩天,總算把這事辦下來了。樂行,以後你就算是廠裡的職工了,工資每月八塊五,另外考慮到你的情況,廠裡再每月補助四塊。今後你就跟趙叔一個地方上班了,下午我帶你去辦手續去。」

    聽到這,我心中暗暗得意,嘴上也不忘記感謝趙叔這幾天的幫助。

    吃完午飯,趙叔帶著我到廠裡辦手續,一下午轉下來,人事科、檔案室、財務室……,差不多把所有辦公室都轉完,手續才基本辦完,只等廠裡上報人事局批准即可正式上班。以後我可以光明正大的到電腦室去用電腦,完全不用擔心別人的閒話了。

    第二天,我正式開始C語言編譯器的設計。C語言編譯器主要由六個部分組成,詞法分析、語法分析、語義分析、中間代碼生成、代碼優化、目標代碼生成,這裡面最影響代碼運行效率的是最後兩步,如果能針對某種CPU優化設計,將能大幅提高最終代碼的運行效果。幾天下來,C編譯器正式完工。為了檢查編譯器,我寫了一些測試程序,都正常編譯通過,看來編譯器已經可以正常工作。為了進一步測試編譯器的性能,我以後世記憶中的《挖金子》為藍本,寫了一個C語言版本的,經過編譯,發現可以正常運行,用彙編語言編寫的作對比,運行速度差別不大,看來這款編譯器性能不錯,唯一有點缺憾的是Apple-II處理器性能一般,導致程序編譯速度比較慢,不過還好不影響最終運行效果。

    沉迷於紙上BASIC世界的趙叔偶然一抬頭,發現我在玩的《挖金子》,立刻好奇的跑過來觀看。

    「樂行,這好像是新遊戲,以前沒看到過。」趙叔好奇的問道。

    「嗯,是啊,我才寫的。」正在思考問題的我隨口回答道。

    「來,給趙叔拷一份。」一張軟盤伸到我的面前。

    我苦笑了一下,把我的遊戲盤給趙叔複製了一份,趙叔興高采烈的拿著軟盤收到自己的軟盤盒裡,估計是打算下午的時候去玩。

    看到C編譯器效果還不錯,我開始對操作系統做進一步優化。首先對內存管理做了一些調整,減少了操作系統內存的佔用;其次是增加了磁盤壓縮功能,變相將軟盤容量從160K提升到220K,這樣一張軟盤可以裝下更多的東西。

    操作系統和C編譯器完工後,趁著星期日好好休息了一天,我又開始編寫一個重要的軟件--Apple-II上的電子錶格軟件。  
本站首頁 | 玄幻小說 | 武俠小說 | 都市小說 | 言情小說 | 收藏本頁