[心得] FC中文化經驗談(一)—作業前—

看板 Emulator
作者 ADHI
時間 2024-11-18 17:41:36
留言 0 ( 0推 0噓 0→ )
【前言】 看了lula大的SFC中文化經驗談後就有想法也寫一下自己做FC中文化的一些心得, 但一直沒付諸行動,趁著最近有點動力,趕快讓自己動手, 希望不要爛尾 XD 【正文】 本篇想先說些開始作業前一些我覺得先了解會有幫助的事項, 當然僅止於我了解的,可能有所謬誤,還請協助指正。 ========================================================================== 一、關於紅白機 1. NES格式的檔案區塊 NES格式分三個區塊,依存放順序為Header、PRG-ROM、CHR-ROM, 通常情況下PRG是儲存程式碼及資料的,CHR是儲存圖形, 但本質上都是資料,所以也有把非圖形資料存在CHR的案例, 而Header應該是給模擬器使用的, 主要用來標示遊戲的Mapper、PRG和CHR的大小等資訊, 因此如果沒有Header,有些模擬器會無法開啟; PRG、CHR個別遊戲大小不一定,Header則是固定16Bytes放在檔案前。 (圖:光神話的Header資訊,標示[iNes]的內容皆來自前16Bytes) https://meee.com.tw/sirFyzT (圖:超級瑪利歐將部分資料寫在CHR裡(紅框處)) https://meee.com.tw/YjpseBr 2. 主機的記憶體 CPU RAM: 要執行的程式或資料都要放進這裡, 其中0x8000~0xFFFF(後32KByte)會映射卡匣裡的PRG-ROM PPU RAM: 要顯示的圖形都要放進這裡 其中0x0000~0x1FFF放Tile,中文化要改動的字庫就在這裡 3. Mapper 由於主機能映射卡匣的PRG位置只有0x8000~0xFFFF(32KByte), Tile也只能放進PPU的0x0000~0x1FFF(8Kbyte), 初期遊戲如超級瑪利歐1(PRG:32K、CHR:8K)剛剛好可以全部載入沒什麼問題, 但大一點的遊戲就會爆掉,例如前述提到的光神話PRG就有128K,超出FC的規格, 所以FC用Mapper來讓開發者決定哪一區塊的PRG或CHR放進RAM裡, 除非可以維持檔案大小不變(卡匣未使用的空間夠多), 不然要做中文化大概率避免不了要跟Mapper打交道。 4. CHR-ROM 開發者可以決定把哪一區塊(Bank)的CHR-ROM放進記憶體, 所以每次要切換進PPU的大小是以區塊為單位, 而每區塊實際多大要看使用的Mapper規範, 這種方式好處是不管多大的圖形量都可以在一瞬間全部切進VRam, 壞處就是不靈活,每一區塊內容一開始就固定了, 所以得預先將要同時出現的圖形整理在同一區塊裡, 但我個人喜歡這類型的ROM。 5. CHR-RAM 有些遊戲沒有CHR-ROM,圖形資料是存PRG-ROM裡, 要顯示時是1Byte 1Byte寫進PPU RAM的, 這類遊戲使用的就是CHR-RAM,前述提到的光神話也在此列。 ========================================================================== 二、工具 工具方面,lula大提到的的工具除模擬器外都可以適用, 故只需挑選好用的FC模擬器即可, 我個人目前是用Mesen, 但其實任一款有附帶debugger的模擬器都可以, 只是更強大的工具自然可以更好的完成工作, 所以除了debugger(用來看程式碼)外, 最好也要有Memory edit(直接修改CPU、PPU的記憶體內容)、 PPU Viewer(圖形化顯示PPU RAM)等功能; 一開始我使用fceuxdsp,後來使用fceux(fceu系列的最終版),現在則使用Mesen ========================================================================== 三、Mesen 大概介紹一下會用到的功能 1. Tools -> Log Window(查看ROM的格式) https://meee.com.tw/sirFyzT 2. Debug -> Debugger(查看原始碼、中斷點設定) https://meee.com.tw/AQtO7VN 3. Debug -> Memory Tools (檢視所有記憶體內容,最常會觀察的是CPU和PPU) https://meee.com.tw/xWyvhAq 4. Debug -> PPU Viewer(圖形化顯示PPU RAM) https://meee.com.tw/lapLSVj 大概就先這樣。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.217.145 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1731922904.A.B5C.html

最新文章

[公告] pp787753 水桶一年
playstation vincentcyl
2024-11-18 17:47:23
[PS5 ] 徵 浪人崛起
gamesale wx2517
2024-11-18 17:39:34
[閒聊] 今年LCK Awards將於12/29舉行
lol mike37
2024-11-18 17:35:28
[閒聊] faker人設崩壞怎麼辦
lol rd5186
2024-11-18 17:28:25
[問題] 想回味AVA的戰車、殭屍模式
steam wiserwilly
2024-11-18 17:27:40
[閒聊] 巨龍之魂加速
wow mealoop
2024-11-18 17:18:56
[情報] Week5場次
nba_fantasy okokok29
2024-11-18 16:54:19
[PS5 ] 售 Lego樂高地平線大冒險
gamesale barefoot24
2024-11-18 16:50:51
[NS] 徵 健身拳擊 北斗神拳
gamesale brian7933
2024-11-18 16:39:02
[情報][花騎] 11/18更新
dmm_games noeric
2024-11-18 16:35:54