星期三, 10月 15, 2014

第一次嘗試加入額外圖像配置...

老實說  我對OB的喜好主要還是來自於連接TO的世界觀
我是先玩TO再玩OB的玩家  因此初玩OB時
對於少了沃倫報告、編成時角色頭像 
感到有些遺憾(投入感不足的意味)

沃倫報告是不可能加啦  就算能加也沒官方資料
不過編成時加上角色頭像倒是有些希望...
至少重要角色不會只是棋子  還有個頭像可以表現
也增加愛用的程度和投入感
PS版OB是在編成畫面左下角  加入兵種戰鬥時的立繪
不過我覺得還是看不出這是"誰"
所以我透過ASM在BG1裡加入了頭像  大概如下圖所示


不過現在基本上不算完成啦  
現在只是成功在BG1特定位置加上圖並追加色盤
還沒真的做到根據角色替換頭像圖與對應色盤
(應該是蠻有機會可以改出來的啦)

不過另一個問題是...mh4g發售了(眼神死)
這次為了免於等待、被水貨商賺
直接跟amazon和capcom各訂了一台同捆
再從日本代收公司空運寄回(台幣600) 
結果一台含運也只花8200 (amazon賣原價9.5折)
週一就先拿到貨了 (另一台capcom含運8500)

...只是我最近連這個都沒什麼時間玩orz

星期一, 9月 15, 2014

生存報告

呃...隔了1年半沒更新  主要還是因為太忙了
中文化畢竟是做興趣的  所以工作一忙或是別的興趣吸引了我就...
然後10月初又有 MH4G  所以可能10月後又...(默)

不過最近因為買了超低價模擬器掌機  在找Rom的過程中意外發現
皇一竟然有韓文化版本!而且還是2004年就有!

   

玩了才發現...原來真正難搞的所有8x8小字體還是用8x8 =__=;

名字也只能取英文名  不過這也讓我突然有了解析完最後部分的衝動
所以這週末就開始弄最後的主角取名選單和記錄讀取選單...

不過數小時後我就放棄取名選單  決定弄成只提供英文字母了XD
原因很簡單  這邊的函式在其他地方也會被調用  
如果隨便改了  也會影響到其他約半數改好的顯示結果
因此最簡單的方法是  只提供8x8英文給玩家取名
(就像韓文版  只是韓文版連敵我角色名也都是英文)
不過這樣看起來會有點好笑...只有主角是英文名其他都中文名

那麼...乾脆就讓想要中文名主角的玩家  自己透過金手指改出吧!
這樣就只要簡化取名選單  將記錄讀取選單改成可正常顯示中文就好

記錄讀取選單這邊的顯示函式蠻獨立的  不過改起來也還是挺麻煩的
最後花了一天  根據暫存器三種數值範圍(對應最多3個存檔的中文名)
重新追加了20幾行指令  從字庫動態挑出會用到的3~24個字來顯示


這樣只要8x16字庫裡有的字就能透過金手指改名並顯示
事實上  因為中文化裡會用到的8x16字只有700個上下
所以可以留下 24空白字在字庫裡  想要什麼字就自己刻....

所有技術問題至此都解決完畢了  未來有空的話會繼續翻譯刻字

"有空的話....."

星期日, 2月 17, 2013

OB opening完成(...again)

假期最後一天....心血來潮更新了片頭
解析是...3年前就做過的   所以時間都花在字圖產生上
原文有的漢字(古昔力鋼教魔支配時代)都留用
其他就用古印體加一些圖像處理產生 至少是比之前好多了
(之前:http://lulastoblog.blogspot.tw/2010/04/ob-opening.html)

因為手邊沒有適當的影像工具   意外的花時間呢....orz



星期六, 2月 16, 2013

各戰場標題畫面完成

全30章的戰場標題填上了
OB每個戰場過關前是章節標題、過關後是地方名稱
這邊很好改   所以一下就完成了
現在好像只剩翻譯、刻字、跟主角命名畫面(含音樂模式)的程式修改了....


翻譯趁春節翻到了第5~10章、刻字還有8~900字(不想碰的夢魘)....
祈禱僅剩的300字空間夠應付   不然就要再改一下函式了(抖~)




星期日, 2月 03, 2013

戰鬥圖示文字完成

之前也提到過.....處理上很麻煩的地方完成了

這邊跟地圖上16x16的spirit圖示文字不同  是用8x8的spirit顯示
不但是跟同畫面的戰鬥人物在同個函式下畫出
而且spirit位置又是用類似迴圈方式指定的  所以沒辦法隨便變動
原本8x8的spirit圖示是

1 2 3 4 5 6 7 8的排法

要改成

1 2 3 4
5 6 7 8的排法才夠顯示4個8x16中文字

最後只好依照"spirit的y位置與判斷第4個迴圈"
來增加第5 6 7 8個spirit的y位置   順便調整x位置後回存
這樣在下個迴圈開始   就會畫到下面一排的地方

老實說這種作法還挺危險的  因為這個spirit顯示函式會不斷被呼叫
不過我想這是最簡便的改法了   目前也看不到因此而引起的其他錯誤
目前這類圖示文字都改完了   劇情翻譯則正要翻到第5章(全30章...orz)
現在最怕的是劇情文字不夠用吧   1800字的空間大概用掉1300字了
之後每章平均只能多15~20個新字附近.....微妙呢~~



星期三, 1月 16, 2013

劇情寫入開始☆

劇情總算是開始寫入了   這兩個月工作實在是忙到不行
明明理論上自由時間應該很多的   可是其實雜事多到不行
好不容易最近才開始空閒些   可以繼續推點進度

劇情的解壓取出跟回填程式都寫好了(如下圖)
一堆按鈕跟選項都是對應不同部分的翻譯
話說這介面從TO->TOG->OB都沒啥大改呢(笑)
當然功能上幾乎都要重寫就是   畢竟每個遊戲壓縮法都不同...
我基本上都是像這樣寫個視窗程式  
先抽出原日文   翻譯好後再用程式自動轉成二進位回填

結果大概就像下面幾張圖   不過其實還一堆新字沒刻...orz
(例如左下圖的"団"其實是"鎮"  只是還沒刻XD)
劇情翻譯也才剛翻到第1章   看看春節能翻到哪吧www
技術方面沒剩什麼大問題  除了主角命名那邊還沒去解析
其他都知道怎麼處理了

之後大概就是...翻譯、刻字、補些小技術問題
翻譯跟補技術都還蠻有趣的  所以要跟無聊的刻字交替著做
不過最大問題大概還是.....我工作太忙吧

まぁ.....反正這本來就是休閒活動   慢慢來吧www



星期四, 11月 08, 2012

圖示選單文字完成....大多數....


我記得網路上唯一有"部分"(這部份的量約略是1%)中文化的OB  
就是把8x8圖示選單文字換成了高度8的中文字(視覺效果很...微妙)
因為這是少數沒壓縮又能直接改的地方  所以整個OB就只有改這邊
(不過老實說...OB很不好弄是真的  小字太多  大字又代碼不夠用)

 其實我本來這邊也是要用英文字混過去的(艸

因為原本就只有8的高度  硬改16通常表示手續很麻煩  
不過這週還是趁空檔改了出來  畢竟用英文也還蠻怪的
"結果比預想中簡單一點" ....正當我這麼想時....

掯!  戰鬥時的8x8圖示選單文字竟然是另外處理的!

而且看來是要在VRam上直接加才行....(暈
因為如此   所以總數31種圖示選單文字(嚴格說來是圖)中
有5種出現在戰鬥畫面裡的還未處理....這OB真是折騰人!



星期一, 10月 29, 2012

8x16地名、地圖地名完成

嗯....差點被這地名搞死....

之前一直忘了加8x16地名上去   所以回頭補上
本來以為這跟武器、人名等名詞沒兩樣
結果要填時才發現....
因為每章每個地名要快速顯示
所以是先要用1個"章節索引"指到章節中的第一個"地名索引"
再用"地名索引"指到後續的該章節地名
每章地名資料緊跟在每章最後一個地名索引後面
所以其實各章是獨立卻串在一起
超麻煩~(技術相關因為太囉唆所以淺色字體XD)
因為地名也有幾百個多到不行
最後還是寫了個程式跑完....orz
效果就大概如下面第1個圖

又因為在改8x16地名時   有些地名是大地圖上也會被用到的
為了怕大地圖上的地名文字有硬體限制   所以決定再去弄這部份。
果然.....大地圖上的地名文字完全不是用16x16劇情文字
而是把會用到的幾個字獨立壓縮起來放到某處
要用時再解到ram  然後根據"另一段函式"拼成地名放到Vram
其實難的不是壓縮部分  因為我OB跟TO的處理方式不同
我在OB都是等原程式資料解壓完放到ram/Vram後
隨即直接把一塊無壓縮的新資料用狸貓換太子的方式  
覆蓋掉原本ram/Vram的資料  讓畫面顯示出我放的中文字
當然要選擇在哪裡換就很重要  雖然通常越快換越好
但也會遇到同一個函式被使用在其他無關的地方
導致其他地方出問題的悲劇
這時就要自行在ram裡設flag用其他方法判斷  變得超~麻煩
有時則是原本安排的ram空間不夠  也會變得很吐血

這次能用的ram空間就只有1800 bytes
...大概相當於96個16x16字翻成中文後最少也要~110字
....沒辦法....只好想辦法調整字的位置
最後靠著"修改拼地名的程式+適當調整字的位置"
硬是把110個字塞進去   塞完剛好只剩半個字的空間=___=|||
(我好像常幹這種把大象塞進冰箱的事...之前TO的op也是orz)
效果大概如下面第2、3個圖(還沒加外框)

目前看來  絕大部分的技術問題都解決了
劇情部分  解壓寫出的程式已經好了 
寫入只是找塊地方用無壓縮規則反操作而已

技術上唯一還沒解決的就是主角取名字的部分
這部份的份量雖小  但感覺函式也要動很大T___T
所以放在長假....大概春節再做吧   畢竟我其實平常也蠻忙的

老實說   OB中文化我覺得技術面比TO難2倍以上  這是我當初沒想的
光是原本沒有的新函式就加了22段以上  還不包括其他一堆的修改函式
不過我想目前看來   要像TO,TOG一樣100%中文化應該沒問題










星期日, 10月 14, 2012

占卜翻譯完成

與其說是在翻譯   倒不如說幾乎都在刻字跟寫導入程式....
接下來就是一章一章的翻譯了  不過看來還有些東西要改....






星期一, 9月 24, 2012

16x16劇情文字開始翻譯

....說是這樣說啦   不過最近工作又開始忙了
進度上完全沒法掌握呢   尤其是這該死的刻字....

目前系統訊息翻譯完了.....文字大概快用掉千字了(躺








星期一, 8月 27, 2012

16x16刻字開始(吐血)

.....開始刻字了  電動時間減少了
(P4U才剛買說....)

目前確定會用到的字約700字
這700字其實就是主要的8x16字
左邊是目前刻好的256字
約一半是沿用原漢字  一半是新刻

一般人應該分不出來吧?
比較簡單的分法是....
越難看的越可能是原版(我說真的)
 
因為YY-CHAR不太支援它的格式
所以一個字會分成文字跟外框

老實說  隨便找個10x10字型取代
再寫程式自動加外框
大概不用2天就能完成
但這樣就失去原字型的風格了
所以我還是找相似12x12字型
再手動改成10x11的相似風格


....有種狂氣的感覺呢www



まぁ....反正按照這種速度
要到下下週才會刻到700字
之後就是看翻譯要什麼刻什麼

一邊翻一邊刻也比較不會無聊

啊  這種說法其實有點不正確
...因為我有興趣的事太多
所以幾乎不會有感到無聊的時候
只是可惜一天的休閒時間有限
只能選擇當下最有興趣的事來做
所以如果產生了嚴重作業感
我搞不好會跑去幹其他有趣的事XD

星期一, 8月 20, 2012

咦~怎麼一晃眼就過了3個月...

呃...因為5月底時颱風引起的斷電
我客廳的準系統主機板爆掉啦(灑花
然後我OB的測試檔案全在上面(汗....

因為準系統規格特殊  所以到6月底才修好回來
還好硬碟正常  資料完全無損
不過因為一個月沒動  我就推拖拉扯、一時懶得再開計畫
直到上週末才又有興趣繼續(逃

果不其然...一打開OB資料夾完全看不懂之前弄到哪裡、怎麼弄的
所以乾脆先去弄16x16劇情文字的解碼跟擴容....

16x16文字主要有兩種編碼方式:

1.訊息部分是未壓縮+索引
   這部份很簡單,導出程式一下就寫好了,導入程式也不難寫(還沒動手)。
   改出來大概就下最下面的圖....

2.劇情對話部分是壓縮+索引
   這部份較難些,不過很謎的是導出程式我以前不知何時就寫得差不多了,導入程式預計用與未壓縮差不多的方式寫入(還沒動手,不過應該也不難)。

相對起來...擴容還是傷腦筋得多...雖然沒8x16那麼複雜啦

擴容這邊問題在於代碼不足!
原遊戲的16x16字可用代碼範圍如下:
XX, 19+YY, 1A+YY, 1B+YY  (XX:20~FF, YY:00~FF)
所以原本最多有約1000個字可用   要擴容最多也只能多加下面幾組:
1C+YY, 1D+YY, 1E+YY, 1F+YY (20以上開頭就是XX,17以下是控制碼)

花了半天,終於改寫好已經亂到不行的原ROM
把1D+YY, 1E+YY, 1F+YY納入了新的可使用範圍  順便多加一個新的空間放字庫
1C+YY目前無法納入  因為跟小人像的圖塊代號重複
為了避免麻煩....我決定乾脆不用了XD
(例如下圖就使用了1D00~1D01,1E00~1E03,1F00~1F02來顯示皇家騎士團1中文化)

目前看來16x16的文字最多大概可以用1700字左右
考慮OB劇情文字量只有TO一半  我想是夠用了
問題是這些文字要從哪裡來  我現在沒那精力去刻了=__=|||






星期一, 5月 07, 2012

這部分2年前就破過 簡單啦.....

這部分2年前就破過   簡單啦.....:D    

.....才怪:(

 這週處理的是狀態欄上方的bar
 因為上週翻回去以前的blog文章   看到類似處理完的圖
我以為以前就弄好了.....

.....我錯啦!!(抱頭

以前真的就只是試做確認可行性
例如可以固定顯示某小隊長名字   但其實不能換人顯示
這次又是預設只有256個8x8可用   卻要改成可顯示~700個8x16
連那256個8x8字都是不知道壓縮放在哪(我也懶得查了)
反正硬幹等它丟到Ram我再去把代碼跟字型換掉
就出現了左下那張圖   事實上到這裡還不難 
因為就固定是那幾個字   頂多一個早上就能弄好
可是要弄出右下圖就讓我傻眼了....

移動到不同小隊時會顯示小隊長名
原本遊戲人名都是平片假名  所以256個8x8字就夠用
但是現在有上千個中文人名(還有幾個擅長移動地形)
要從~700個8x16字隨意選出來....=_=|||

好吧   也只能看要什麼就臨時載入什麼到VRam
這邊的顯示函式又是照慣例跟其他地方不同
所以又硬著頭皮找遊戲原本是載入到VRam哪裡
然後隨時把要的文字動態取代掉其中的一部份字庫位置
再把代碼依序對應到那固定幾個位置
理論上就能成功了!......才怪:(

不知道什麼原因,直接從Rom丟字到VRam 0x0900位置時
一直無法順利取代掉該位置內容(這是第一次用DMA傳失敗)
試了一個下午  卻"意外"發現丟到0x0400反而可以成功
雖然後來猜測是之前為顯示左下圖而丟在Ram的文字
因為多寫的函式被別人呼叫而持續將它自動載入VRam同位置
導致我另外寫上去的動作在0x0800~0x1000被覆蓋掉
0x0000~0x0800則因為我沒有要拿來顯示  所以沒被別人呼叫到
不過....我在trace過程中  其實完全沒發現有被意外呼叫的情形
所以真正原因至今還是個謎....

まぁ.....反正最後有改出來就好XD

最後總計花了一天時間   多寫了3段函式處理這個bar  效果如下:
(....其實右下小隊長名用空白打混過去  我想80%的人也不會注意到吧....)

那麼   再改完最後一個地方就完成所有8x16字的部分了....
....很遺憾  其實前天想到還有音樂鑑賞模式沒弄....orz
假設1~2週解決1個課題的話(我不一定每週都有空檔....)  
也許6月就可以來弄16x16劇情部分了



星期一, 4月 30, 2012

又多完成了一部分

這部分...其實也是直接沿用2年前的修改   然後實際把字庫(第6個....)跟翻譯加上去
同樣的地方一共有10處(下圖為其中三處)   因為地方少所以直接把16進位碼用手key in進去
英文字還是8x8原字形  我有試改成8x16大小過   不過看起來沒有原版的fu~
考慮到我的目標是"維持原本的風格 > 文字好讀" (這是不改成16x16的主因之一)
所以數字、英文、符號還是保留8x8原字形.....

目前8x16剩2個小地方還沒動手  其中一個2年前有破過了
另一個主角名(取名、記錄時)的部分可能有點小棘手

  

星期一, 4月 16, 2012

8x16字完成90%

8x16字大部分完成了(...90%吧)
只剩下城鎮名(準備寫入中)、取名選單/存檔欄、狀態欄最上方文字、地圖指令這四樣吧
其他什麼人名、武器道具名 、魔法技能名、解說文等都完成了

也許五月中就可以開始弄16x16劇情文字部分
這部分技術上應該遠比8x16簡單 
文字量感覺也比TO少很多   可能只有1/4的量吧
まぁ....反正那是暑假的事了

目前完成的部分大致如下 
原本ROM裡面大概多加了20幾個函式  5個大小字庫
才能像現在這樣顯示原本不存在的8x16字....




星期日, 4月 08, 2012

最困難的部分解決了

最困難關鍵的部分目前確認可以完全解決了
那就是無中生有出700個以上中文字庫與一堆對應不同地方的顯示函式
顯示上最囉唆的主狀態畫面與副狀態畫面如下:
反正能忠於原作的部分我都盡量保留了
主狀態畫面下方的"LEADER:OK"是故意不改中文的(美觀的考量)
與2年前半途而廢的進度有兩大關鍵差異點
1.之前字庫頂多500字  其實可能會有點不夠用....
2.8x16文字代碼範圍也擴充了  這樣才能跟16x16的劇情文字做到對應
   之前未對應的話會有些問題  例如塔羅牌名代碼不一的話
   會變成之後16x16的劇情文字與8x16文字無法同步內容




總之
最麻煩的8x8字改8x16字問題幾乎都解決了
老實說遇到的問題比之前預想的多2~3倍
本來也考慮過犧牲一般人名甚至武器名(各多200多字)
不過最後程式還是改出來了....
可以從256x3=約750個8x16字中選出使用

原本OB系統字只有左邊最上面 那張的8x8字
文字代碼範圍限定在0x20~0xFE
加上幾十個0x19??的濁音字等代碼
這個月反譯並新增了快20處蠻長的機械碼
為了能讓OB文字代碼除了0x20~0xFE外
還能合法利用0x1900~0x1BFF追加新的8x16字約750個
例如0x1900="魔", 0x1A00="芙", 0x19FF="妮"
同樣一個"魔"字可能會因為顯示在不同處
而有2~3種不同的顯示方法與字庫(2或4 bits顯示一個點)
左邊只是主狀態畫面的字庫 副狀態畫面字庫又有點不同
目前職業、魔法、特技等都弄好並驗證顯示無誤了
其他隨機人名(1650筆...orz)、 城鎮名、道具名因為太多
等以後再簡單寫個小程式做一次寫入
反正字庫還留有一堆空間可供使用(左邊紫色部分)


比起8x16文字用到十幾個不同顯示方法 
16x16的劇情文字部分應該都共用同一函式


我想技術上要把OB完全中文化是沒問題了


.....說是這樣說啦(苦笑

星期六, 3月 31, 2012

戰鬥畫面文字完成

戰鬥中的解說部分也完成了,這部分沒啥特別好提的,不過說服指令只有遇到中立角色時才會出現,差點因此漏了這個指令解說。目前戰鬥中所有可能出現的8x16文字都弄好了,只有以半透明圖片顯示的8x8指令名沒處理,直接改成英文名的話應該5分鐘能全弄完,不過也許以後再看看要不要弄成8x16吧。

接下來要開始填狀態欄、地圖上會出現的8x16文字,相關字庫函式方面是修改完了(大概...),但是選字、寫入譯名也很麻煩就是,這部分大概有近千個人名、道具名、地名、職業名...etc.

進度上已經超越2年前了吧(茶


星期二, 3月 27, 2012

戰鬥畫面文字...75%

呃......上週突然發現我出了個大包.......
我沒發現動畫關掉會顯示出完全不同的招式技能名啊 XD

結果要解決的問題變得更複雜了
因為狀態欄跟戰鬥用字庫原本是用不同索引同一字庫
之前好不容易把共用的字庫一分為二讓兩個索引各自取用
結果動畫關掉後的技能名文字是兩個索引都有部分引用
變成同一個技能名其實有3種交叉顯示辦法(噴血)

最簡單的解決法....強制動畫開啟
....算啦  這不符合我的性格
只好硬著頭皮找一下解決辦法....
吐血的過程就不提了   反正改了好一些code
原本遊戲只有平片假名的小字庫(8x8, 180字字庫)  
現在預估至少要有6個(8x16, 110字字庫x4 + 800字x2)才能應付這情況
下圖是其中3個大致決定好的110字字庫  全用於戰鬥畫面


左邊是這次的罪魁禍首...關掉動畫後會出現的技能名
中間是之前弄的...動畫開啟時會出現的技能名
右邊是中斷戰鬥時可能會出現的塔羅牌名跟策略名跟少量選單解釋
這些字已經是盡量規劃後挑出來的了
例如為了顯示"winner"、"draw"、"on"、"off"而留下了些英文字
甚至還有共用一個中文字上半部分的例子
例如"雷"、"電"、"雪"、"震"、"霧"等字共用了上面的"雨"
應該看得出來我很努力在塞可用字了....(線條那些是邊框  不能砍)
更注意一點看會發現左圖跟中間圖許多字都是一樣的
基本上這些字就是不管開不開動畫都會出現用到
差異主要在於最下面兩列
左圖動畫關掉部分會多了一堆像"揮砍"這種一般攻擊名用字
中間圖主要是因boss戰強制開啟動畫而出現的敵boss技能用字

講了這麼多  總之戰鬥畫面文字這部分
主要只剩下按選擇鍵會出現的解釋文字  所以這部分完成至少75%
最後附上目前戰鬥畫面的樣子




星期三, 3月 21, 2012

戰鬥畫面文字

這部份意外地煩人,因為是用Sprites所以不太能用前文的方法取代,只能用一次讀入256個8x8字的方式。但是它部分函式又跟其他混合使用,動到這邊代碼就會影響另一邊。所以最後我投降了....回去找自己兩年前是怎麼改這部份的XD,最神奇的是最後總算在維持其他部分正常的情況下改好,但我卻不太確定原理(爆。

Anyway,反正戰鬥這部份出現的文字是獨立於狀態畫面等其他地方的(例如同一個魔法名稱會有複數份在Rom裡供不同地方使用),既然不用跟其他地方"同步",文字代碼就隨便我亂用了。

戰鬥畫面會出現的文字又能再分獨立三個部分:戰鬥中的招式與策略名、中斷選單中的塔羅牌與策略名、按選擇鍵的說明文。所以這三部分再各分3個256大小8x8字庫出來塞會用到的字,扣掉畫邊框用的與指令碼,大概會剩224個8x8字可用。再把少數會用到的8x8英文字獨立出來,8x16中文字大概塞100個左右吧。目前用來塞第一部份剛好夠用,記得以前精算過另外兩部分也沒問題。接下來應該會先把這三部分字先塞完,確認沒問題再去規劃狀態畫面跟地圖畫面的字庫(這邊可以使用700字以上,應該充裕得多...)。

下面是錄下來的影片,別問我怎麼取追魂暗影這種中二味十足的名稱...原文Dark Quest這種名稱鬼才知道怎麼翻...反正現在是套用兩年前的字庫,先將就著吧(逃

星期一, 3月 12, 2012

OB解析再開

呃....我還活著!
事實上有點活得太好,過得太爽了....
所以自虐老毛病又犯....突然對OB解析又有興趣了

雖然這兩年Blog被FB等整個覆滅了
不過我還是比較喜歡這種半日記的記事方式

之前.....哇~一年半前嗎(笑)
OB解析到一半時   因為要換工作太忙而停了
結果最近打開之前OB資料夾來看....完全看不懂XD
所以乾脆直接重來(爆)

先來確認一下情況一下吧!

OB系統面全部是8x8字  劇情面是16x16字
16x16字原始約有900字可用  まぁ....這完全是小case
壓縮法很簡單  索引方式比較不正規罷了
這部份有看到之前寫的解壓程式 但我卻完全沒有印象何時寫的(爆

討厭的是8x8字  主要有三大問題...

1. 顯示的方法太多種:
有Sprites的、有BG的、有字庫全讀的、有用到才讀的、有解壓展開的....etc.
之前解決法是case by case直接根據函式進入點寫死到VRAM固定位置
但這樣會變成不同視窗裡同代碼用不同字庫...

 2. 8x8字庫有夠小:
只有256個字可用  扣掉約一半是基本符號不能用....剩128字 
再加上至少2個字才能組出8x16中文字....變64字
雖然可以用取巧方法  讓64字變回兩倍128字....
但OB光武器名就需要兩倍量了吧.....

3. 沒辦法隨便擴容:
8x8字基本上只用到1 byte代碼
2 byte代碼"基本上是不存在的"(濁音字雖是2byte但其實是用table湊出來)
在同一地方要顯示超過256種字以上就一定要用到2byte
簡單來說就是....程式要"加寫"很大 orz
如果是C語言其實不是大問題  可惜這邊全是機械碼...
(e.g. AF 00  ff 7f表示將Ram 7fff00位置的值載入A暫存器)
一個for loop就能讓人看到淚目  更不用說去改了.....

好吧   對這種改很大的...好的工具是絕對必要的
除了看圖的YY-CHR跟看binary code的UltraEdit,下面是我ASM解析時不可缺的:

Snes9X1.43.ep9r8
>> 兩年前用的SFC debugger,用來輸出執行過程函式,很方便就沒想過要換了

65816 Reference (http://wiki.superfamicom.org/snes/show/65816+Reference)
>> SFC OP code一覽,沒這個就看不懂ROM在講什麼

總之....經過幾個假日約30~40小時的重新解析   8x8的主問題算解決了
簡單來說,就是將VRAM tile B1~FE兩兩一組  依顯示順序固定配給
再使代碼多出19xx~1Bxx  依不同顯示函式進行大小修改   
遇到這範圍的代碼就依序將整個字送到tile B1~FE的對應位置
用更白話一點的方式說
就是雖然知道有700多人  但同時間會進來房間坐的最多只有近40
所以乾脆準備40張椅子  有人進來就發一張椅子隨他要坐哪(位置不固定)
(之前的方式是把700人分組在不同房間  每個房間椅子都是固定位置)
好處是700字總算夠讓8x8系統用字使用  而且可以跟16x16代碼同步一致


測試圖如下  就解析來說是完成的
但因為我只有改其中兩個8x16字的代碼跟字樣而已  所以一副未完成樣XD
事實上是比之前做的方案還完善得多!