回覆列表
  • 1 # 使用者3456175603979

    這個問題很麻煩。

    gba中的內容都是以二進位制形式儲存的,大多數沒法直接提取——但是圖片還是勉強可以的。

    首先,對於lz77壓縮影象,可以使用工具unlz-gba來尋找圖片;如果找不到,別忘了深度搜索功能。這樣的圖片提取出來大多是完整的——包含調色盤和形狀(一般都是索引顏色的)。

    然後,對於未壓縮的影象,首先用vba模擬器執行rom,讓要找的影象顯示在螢幕上。你需要開啟背景檢視器和活動塊檢視器,來看到圖片原本的樣子;還要開啟調色盤檢視器。如果你要找的圖在背景中,儲存背景的調色盤;否則,儲存obj的調色盤。

    下面以obj為例講如何把圖片弄出來。(分明就是我沒弄過背景!)

    要使用工具 crystal tile2.(簡稱ct2). 用vba模擬器執行rom,找到活動塊(活動塊有好幾個焦點庫,都翻一遍)中你要找的圖片的碎片——最好找比較滿的小塊——,活動塊檢視器會寫出它的地址——0x06多少,記住這個數(記為addr.x)。開啟記憶體檢視器,跳轉到addr.x處,記下那一行十六進位制數(複製到記事本里)。將每兩個數調轉(解釋不太清楚,因為gba採用小端架構所以有這麼個麻煩事),比如89 AB CD EF掉換成AB 89 EF CD。在ct2中搜索調轉後的十六進位制數,搜尋到之後記下那裡的地址(記為addr.y)。在ct2中改為tile檢視,跳轉到addr.y,(一般)你能看到混亂的,顏色不正確的你要找的圖。在ct2左側面板裡面選擇調色盤,選擇匯入。匯入你剛剛用vba儲存的obj.pal,並選擇正確的一行調色盤,然後才能看到正確的顏色。這時,你的圖還是混亂狀態,要使用Shift+調整視窗寬度,和Ctrl+微調。這個過程很玄學,是完全靠經驗和運氣的——當然有些圖是不可能拼出來的, 比如洛克人z之類的——這些圖是用瓦圖拼成的,你可以儲存瓦圖手動拼接。如果想自動拼接的話,那就會涉及到我也沒搞過的raw的問題,請另請高明。拼接了影象之後,用滑鼠框選影象,在工具欄的 編輯 中選擇儲存,就可以存成一張索引顏色,256色的圖了。

    至於音訊我沒有弄過所以沒辦法提供幫助;而文字的提取則是幾乎不可能的,gba的文字是透過字型檔(圖形)+文字編號來顯示的,想提取的難度過大。

  • 中秋節和大豐收的關聯?
  • 開庭為什麼不讓張老師出庭,有失公平,他是當事人?