Python Rom简单的文本编辑器

时间:2014-11-15 08:12:40

标签: python rom

def charToByte(c):
    elif c == '<END>':
        return 0x00
    elif c == '<LINE>':
        return 0x01
    elif c == '<WAIT>':
        return 0x03
    elif c == 'aps t':
        return 0x88
    elif c == 'aps s':
        return 0x89
    elif c == 's aps':
        return 0x8A
    elif c == '*':
        return 0x8B
    elif c == 'll':
        return 0x8C
    elif c == 'il':
        return 0x8D
    elif c == 'li':
        return 0x8E
    elif c == ' ':
        return 0xA0
    elif c == '!':
        return 0xA1
    elif c == '?':
        return 0xA2
    elif c == '_':
        return 0xA3
    elif c == '$':
        return 0xA4
    elif c == '"':
        return 0xA6
    elif c == 'aps':
到目前为止

代码。我想知道这是对的吗?因为我希望字符/单词是一个特定于rom的字节。例如:

Apple = C1 F0 F0 EC E5 . rom-specific byte to c/word. C1 F0 F0 EC E5 = Apple

来自EBZero的Rom特定字节。并且将有一个命令行gui(现在)。

示例:

Line 1: TEST LINE
Binary: D4 E5 F3 F4  CC E9 EE E5
User-change: change to whatever.

我稍后会担心GUI和表格。修改代码:https://github.com/kiij/CoilSnake

研究仍在进行中。

1 个答案:

答案 0 :(得分:2)

您可以拥有一个字典词典,而不是一个巨大的if树只是字典,您可以从文件中加载ROM。

阅读和维护字典比使用巨大的if树容易得多,而且运行速度也快得多。

AppleRomTable = {'<END>':0x00, '<LINE>':0x01, ....}

char_to_byte(c):
   """ Returns FF for unknown """
   return AppleRomTable.get(c, 0xff)