Kanji complete
This commit is contained in:
parent
7c40ca97c1
commit
2d286d48ef
106
const.py
106
const.py
|
@ -46,68 +46,68 @@ Glyphs_JP_large[0xC7] = '⋯'
|
|||
Glyphs_JP_large[0xE0:0xEB] = ['←','→','+','、', '◯', '『', 'F', '°C', '・', '(', ')']
|
||||
Glyphs_JP_large[0xFF] = ' '
|
||||
|
||||
Glyphs_Kanji1 = ( # TODO: finish this
|
||||
Glyphs_Kanji = (
|
||||
'王', '行', '力', '様', '飛', '世', '界', '封', # 0x000
|
||||
'入', '城', '竜', '士', '船', '印', '海', '父', # 0x008
|
||||
'人', '見', '魔', '物', '大', '者', ' ', '何', # 0x010
|
||||
' ', ' ', ' ', '手', '言', '石', '守', ' ', # 0x018
|
||||
'無', '心', '間', '前', '風', ' ', '私', ' ', # 0x020
|
||||
' ', '武', '器', '兵', '火', '使', '中', '急', # 0x028
|
||||
'時', '森', '来', '砂', '動', '女', ' ', ' ', # 0x030
|
||||
'地', ' ', ' ', ' ', '上', ' ', ' ', ' ', # 0x038
|
||||
'人', '見', '魔', '物', '大', '者', '本', '何', # 0x010
|
||||
'戦', '出', '気', '手', '言', '石', '守', '辺', # 0x018
|
||||
'無', '心', '間', '前', '風', '帰', '私', '生', # 0x020
|
||||
'年', '武', '器', '兵', '火', '使', '中', '急', # 0x028
|
||||
'時', '森', '来', '砂', '動', '女', '待', '臣', # 0x030
|
||||
'地', '助', '当', '今', '上', '悪', '泉', '騎', # 0x038
|
||||
|
||||
'思', '持', '変', '水', '塔', ' ', ' ', ' ', # 0x040
|
||||
' ', ' ', ' ', ' ', ' ', '一', ' ', ' ', # 0x048
|
||||
'聞', '械', '神', '流', ' ', ' ', '町', '殿', # 0x050
|
||||
' ', '空', ' ', '村', ' ', '子', '格', '納', # 0x058
|
||||
'伝', '消', '書', '長', ' ', ' ', '所', '場', # 0x060
|
||||
' ', '北', ' ', ' ', ' ', ' ', '詩', '吟', # 0x068
|
||||
'落', '自', '階', ' ', ' ', ' ', ' ', '休', # 0x070-7
|
||||
' ', ' ', '土', ' ', ' ', '発', ' ', ' ', # 0x078-F
|
||||
'思', '持', '変', '水', '塔', '草', '仲', '復', # 0x040
|
||||
'目', '作', '分', '知', '機', '一', '姫', '最', # 0x048
|
||||
'聞', '械', '神', '流', '乗', '取', '町', '殿', # 0x050
|
||||
'事', '空', '勇', '村', '早', '子', '格', '納', # 0x058
|
||||
'伝', '消', '書', '長', '話', '合', '所', '場', # 0x060
|
||||
'脱', '北', '後', '全', '忍', '獣', '詩', '吟', # 0x068
|
||||
'落', '自', '階', '説', '残', '親', '活', '休', # 0x070
|
||||
'姉', '破', '土', '度', '記', '発', '赤', '侍', # 0x078
|
||||
|
||||
'死', '国', '旅', ' ', ' ', '林', '古', '図', # 0x080
|
||||
' ', ' ', '島', ' ', '部', ' ', ' ', ' ', # 0x088
|
||||
'防', '向', '先', ' ', ' ', '下', ' ', ' ', # 0x090
|
||||
' ', '木', ' ', ' ', '配', ' ', ' ', ' ', # 0x098
|
||||
'願', '門', '東', '開', ' ', ' ', ' ', '舘', # 0x0A0
|
||||
'道', '身', '老', '西', ' ', '層', '第', ' ', # 0x0A8
|
||||
'光', '読', '外', ' ', ' ', ' ', '谷', ' ', # 0x0B0
|
||||
' ', ' ', ' ', '屋', ' ', '運', '河', '聖', # 0x0B8
|
||||
'死', '国', '旅', '完', '小', '林', '古', '図', # 0x080
|
||||
'礼', '商', '島', '邪', '部', '狩', '精', '姿', # 0x088
|
||||
'防', '向', '先', '解', '板', '下', '台', '賢', # 0x090
|
||||
'対', '木', '成', '命', '配', '法', '飲', '回', # 0x098
|
||||
'願', '門', '東', '開', '貸', '増', '危', '舘', # 0x0A0
|
||||
'道', '身', '老', '西', '近', '層', '第', '青', # 0x0A8
|
||||
'光', '読', '外', '理', '強', '同', '谷', '負', # 0x0B0
|
||||
'意', '学', '攻', '屋', '体', '運', '河', '聖', # 0x0B8
|
||||
|
||||
'必', '南', '方', '黒', ' ', ' ', '艇', '山', # 0x0C0
|
||||
' ', '名', ' ', ' ', ' ', '少', ' ', '倉', # 0x0C8
|
||||
'然', '的', '男', '用', '酒', ' ', ' ', '代', # 0x0D0
|
||||
' ', '具', ' ', ' ', ' ', ' ', '庫', ' ', # 0x0D8
|
||||
'日', '窟', '砲', '広', ' ', '博', ' ', ' ', # 0x0E0
|
||||
'室', '洞', ' ', ' ', ' ', ' ', ' ', ' ', # 0x0E8
|
||||
'宝', '毒', '売', ' ', ' ', ' ', '月', ' ', # 0x0F0
|
||||
' ', ' ', '感', '宿', ' ', ' ', '決', ' ', # 0x0F8
|
||||
'必', '南', '方', '黒', '絶', '食', '艇', '山', # 0x0C0
|
||||
'穴', '名', '受', '暁', '傷', '少', '鼻', '倉', # 0x0C8
|
||||
'然', '的', '男', '用', '酒', '安', '現', '代', # 0x0D0
|
||||
'立', '具', '育', '続', '通', '会', '庫', '飼', # 0x0D8
|
||||
'日', '窟', '砲', '広', '化', '博', '以', '兄', # 0x0E0
|
||||
'室', '洞', '別', '番', '昔', '住', '吸', '去', # 0x0E8
|
||||
'宝', '毒', '売', '好', '枝', '踊', '月', '巣', # 0x0F0
|
||||
'底', '明', '感', '宿', '召', '喚', '決', '形', # 0x0F8
|
||||
|
||||
'団', '異', '初', ' ', '家', ' ', ' ', ' ', # 0x100
|
||||
'墓', ' ', '跡', '遺', '内', ' ', '教', ' ', # 0x108
|
||||
'頭', '再', '高', ' ', ' ', ' ', ' ', ' ', # 0x110
|
||||
' ', ' ', ' ', ' ', ' ', ' ', ' ', '滝', # 0x118
|
||||
'次', '閉', '求', ' ', ' ', ' ', ' ', ' ', # 0x120
|
||||
' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', # 0x128
|
||||
'役', '放', '衛', ' ', ' ', ' ', ' ', ' ', # 0x130
|
||||
'元', ' ', ' ', ' ', '遊', '頂', ' ', ' ', # 0x138
|
||||
'団', '異', '初', '険', '家', '息', '連', '集', # 0x100
|
||||
'墓', '著', '跡', '遺', '内', '悲', '教', '返', # 0x108
|
||||
'頭', '再', '高', '借', '登', '走', '過', '敵', # 0x110
|
||||
'鏡', '愛', '魚', '燃', '幅', '音', '血', '滝', # 0x118
|
||||
'次', '閉', '求', '声', '箱', '軍', '泣', '港', # 0x120
|
||||
'冊', '秒', '憶', '潜', '爆', '恋', '石', '左', # 0x128
|
||||
'役', '放', '衛', '母', '建', '角', '信', '師', # 0x130
|
||||
'元', '失', '字', '歩', '遊', '頂', '震', '収', # 0x138
|
||||
|
||||
'追', '暗', ' ', ' ', ' ', ' ', ' ', ' ', # 0x140
|
||||
' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', # 0x148
|
||||
'炎', '望', '雨', ' ', ' ', ' ', ' ', '白', # 0x150
|
||||
' ', ' ', ' ', ' ', ' ', ' ', '三', ' ', # 0x158
|
||||
'夜', '病', '半', ' ', ' ', ' ', ' ', ' ', # 0x160
|
||||
' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', # 0x168
|
||||
'薬', '弟', '経', ' ', ' ', ' ', ' ', ' ', # 0x170
|
||||
' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', # 0x178
|
||||
'追', '暗', '橋', '起', '約', '束', '文', '反', # 0x140
|
||||
'絵', '能', '歌', '弱', '境', '波', '針', '千', # 0x148
|
||||
'炎', '望', '雨', '金', '希', '花', '不', '白', # 0x150
|
||||
'剣', '陸', '勝', '烏', '笛', '究', '三', '探', # 0x158
|
||||
'夜', '病', '半', '美', '敗', '友', '研', '予', # 0x160
|
||||
'支', '々', '除', '数', '店', '翼', '充', '填', # 0x168
|
||||
'薬', '弟', '経', '験', '値', '闘', '得', '闇', # 0x170
|
||||
'混', '乱', '点', '速', '閃', '射', '斬', '鉄', # 0x178
|
||||
|
||||
'宣', '告', ' ', ' ', ' ', ' ', ' ', ' ', # 0x180
|
||||
' ', '刀', ' ', ' ', ' ', ' ', ' ', '漠', # 0x188
|
||||
'特', '胸', '永', ' ', ' ', ' ', ' ', ' ', # 0x190
|
||||
' ', ' ', ' ', ' ', '利', ' ', ' ', ' ', # 0x198
|
||||
'紙', '胸', '平', ' ', ' ', ' ', ' ', '孤', # 0x1A0
|
||||
'宣', '告', '電', '磁', '圧', '昇', '重', '倍', # 0x180
|
||||
'妖', '刀', '拡', '散', '影', '御', '正', '漠', # 0x188
|
||||
'特', '胸', '永', '遠', '議', '浮', '眠', '逃', # 0x190
|
||||
'滅', '囗', '極', '湖', '利', '周', '緑', '切', # 0x198
|
||||
'紙', '胸', '平', '和', '宇', '宙', '則', '孤', # 0x1A0
|
||||
'溝', ' ') # 0x1A8
|
||||
Glyphs_Kanji = [g if g != ' ' else '<${:03X}>'.format(i) for (i, g) in enumerate(Glyphs_Kanji1)] # This is only until they are fully transcribed
|
||||
#Glyphs_Kanji = [g if g != ' ' else '<${:03X}>'.format(i) for (i, g) in enumerate(Glyphs_Kanji1)] # This is only until they are fully transcribed
|
||||
|
||||
Dialogue_Macros_EN = {
|
||||
0x02: [0x61, 0x7A, 0x8B, 0x8D, 0x93], # expands to Bartz (or whatever his name is)
|
||||
|
|
10
ff5reader.py
10
ff5reader.py
|
@ -287,6 +287,7 @@ class Canvas:
|
|||
return QPixmap.fromImage(self.image.copy(0, 0, self.max_x*8+8, self.max_y*8+8))
|
||||
return QPixmap.fromImage(self.image)
|
||||
|
||||
|
||||
def parse_struct(rom, offset, structure):
|
||||
out = ["0x{:06X}".format(offset)]
|
||||
j = 0
|
||||
|
@ -299,6 +300,7 @@ def parse_struct(rom, offset, structure):
|
|||
j += z[1]
|
||||
return out
|
||||
|
||||
|
||||
def make_enemy_sprites(rom):
|
||||
sprites = []
|
||||
for e_id in range(0, 0x180*5, 5):
|
||||
|
@ -330,6 +332,7 @@ def make_enemy_sprites(rom):
|
|||
sprites.append(sprite.pixmap(True))
|
||||
return sprites
|
||||
|
||||
|
||||
def make_character_battle_sprites(rom):
|
||||
tile_address = 0x120000
|
||||
palette_address = 0x14A3C0
|
||||
|
@ -345,6 +348,7 @@ def make_character_battle_sprites(rom):
|
|||
battle_strips.append(battle_strip.pixmap())
|
||||
return battle_strips
|
||||
|
||||
|
||||
def make_character_status_sprites(rom):
|
||||
tile_address = 0x149400
|
||||
palette_address = 0x14A660
|
||||
|
@ -370,6 +374,7 @@ def make_character_status_sprites(rom):
|
|||
pixmaps.append(frog_strip.pixmap())
|
||||
return pixmaps
|
||||
|
||||
|
||||
def make_string_img_small(bytestring, jp=False):
|
||||
if len(bytestring) < 1:
|
||||
raise ValueError('Empty bytestring was passed')
|
||||
|
@ -396,6 +401,7 @@ def make_string_img_small(bytestring, jp=False):
|
|||
del painter
|
||||
return string, QPixmap.fromImage(img)
|
||||
|
||||
|
||||
def make_string_img_large(bytestring, macros=None, jp=False):
|
||||
'''
|
||||
This is how we decipher dialogue data, which has multiple lines, macro expansions and kanji.
|
||||
|
@ -455,6 +461,7 @@ def make_string_img_large(bytestring, macros=None, jp=False):
|
|||
xmax = x if x > xmax else xmax
|
||||
return string, QPixmap.fromImage(img.copy(0, 0, xmax, y+16))
|
||||
|
||||
|
||||
def make_string_img_list(start, length, num, start_jp=None, len_jp=None, start_str=None, start_jp_str=None,
|
||||
indirect=False, large=False, macros_en=None, macros_jp=None):
|
||||
start_jp = start if start_jp is None else start_jp
|
||||
|
@ -513,6 +520,7 @@ def make_string_img_list(start, length, num, start_jp=None, len_jp=None, start_s
|
|||
stringlist.append(["0x{:06X}".format(j1), "0x{:0{}X}".format(id, id_digits), str_en, img_en, str_jp, img_jp])
|
||||
return stringlist
|
||||
|
||||
|
||||
def table_size_to_contents(table):
|
||||
# Stupid hack to get table to size correctly
|
||||
table.hide()
|
||||
|
@ -523,6 +531,7 @@ def table_size_to_contents(table):
|
|||
table.viewport().setGeometry(geometry)
|
||||
table.show()
|
||||
|
||||
|
||||
def make_table(headers, items, sortable=False, row_labels=True, scale=2):
|
||||
"""
|
||||
Helper function to tabulate 2d lists
|
||||
|
@ -552,6 +561,7 @@ def make_table(headers, items, sortable=False, row_labels=True, scale=2):
|
|||
table.sortItems(0)
|
||||
return table
|
||||
|
||||
|
||||
def make_pixmap_table(items, cols=16, scale=4):
|
||||
rows = divceil(len(items), cols)
|
||||
rd = hex_length(rows-1)+1
|
||||
|
|
Loading…
Reference in New Issue