aboutsummaryrefslogtreecommitdiffstats
path: root/atk16_fpga/gen_data_strings_v.py
blob: afb374e640baf017825b97ad030058fd4281f7dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env python

def gen(name, message):
    for line in message.split('\n'):
        print(f'// {line}')

    print(f"`define LEN_{name} {len(message)}")
    print(f"`define STR_{name} \\")
    print(f"    reg [7:0] str_{name} [0:`LEN_{name}-1]; \\")
    print(f"    initial begin \\")
    for i, c in enumerate(message):
        print(f"        str_{name}[{i}] = 8'd{ord(c)}; \\")

    print(f"    end")
    print("")

gen("welcome", "Welcome to the ATK16 serial programmer. Press 'h' for help.\n")
gen("help",
    "Help:\n" +
    "    h - help\n" +
    "    p - program\n"
)
gen("program_ready",
    "Ready to receive program data. Reset device after transmission.\n"
)