SD_command assembly rewrite

This commit is contained in:
Byron Lathi
2023-07-23 16:25:13 -07:00
parent 5ca5fca29b
commit 709c60cf36
5 changed files with 188 additions and 416 deletions

View File

@@ -3,12 +3,12 @@
{ {
"name": "la0", "name": "la0",
"type": "la", "type": "la",
"uuid": "68ae6f6753aa4c41b26baf6770f0d8e4", "uuid": "fc5ad0b7db9846e2b64719110e7975d8",
"trigin_en": false, "trigin_en": false,
"trigout_en": false, "trigout_en": false,
"auto_inserted": true, "auto_inserted": true,
"capture_control": false, "capture_control": false,
"data_depth": 8192, "data_depth": 16384,
"input_pipeline": 1, "input_pipeline": 1,
"probes": [ "probes": [
{ {
@@ -36,31 +36,11 @@
"width": 16, "width": 16,
"probe_type": 1 "probe_type": 1
}, },
{
"name": "cpu_nmib",
"width": 1,
"probe_type": 1
},
{
"name": "cpu_irqb",
"width": 1,
"probe_type": 1
},
{
"name": "cpu_data_out",
"width": 8,
"probe_type": 1
},
{ {
"name": "cpu_phi2", "name": "cpu_phi2",
"width": 1, "width": 1,
"probe_type": 1 "probe_type": 1
}, },
{
"name": "cpu_rdy",
"width": 1,
"probe_type": 1
},
{ {
"name": "spi_clk", "name": "spi_clk",
"width": 1, "width": 1,
@@ -85,16 +65,6 @@
"name": "spi_controller/active", "name": "spi_controller/active",
"width": 1, "width": 1,
"probe_type": 1 "probe_type": 1
},
{
"name": "spi_controller/r_clock_counter",
"width": 9,
"probe_type": 1
},
{
"name": "spi_controller/r_baud_rate",
"width": 8,
"probe_type": 1
} }
] ]
} }
@@ -362,209 +332,35 @@
}, },
{ {
"name": "la0_probe5", "name": "la0_probe5",
"net": "cpu_nmib",
"path": []
},
{
"name": "la0_probe6",
"net": "cpu_irqb",
"path": []
},
{
"name": "la0_probe7[0]",
"net": "cpu_data_out[0]",
"path": []
},
{
"name": "la0_probe7[1]",
"net": "cpu_data_out[1]",
"path": []
},
{
"name": "la0_probe7[2]",
"net": "cpu_data_out[2]",
"path": []
},
{
"name": "la0_probe7[3]",
"net": "cpu_data_out[3]",
"path": []
},
{
"name": "la0_probe7[4]",
"net": "cpu_data_out[4]",
"path": []
},
{
"name": "la0_probe7[5]",
"net": "cpu_data_out[5]",
"path": []
},
{
"name": "la0_probe7[6]",
"net": "cpu_data_out[6]",
"path": []
},
{
"name": "la0_probe7[7]",
"net": "cpu_data_out[7]",
"path": []
},
{
"name": "la0_probe8",
"net": "cpu_phi2", "net": "cpu_phi2",
"path": [] "path": []
}, },
{ {
"name": "la0_probe9", "name": "la0_probe6",
"net": "cpu_rdy",
"path": []
},
{
"name": "la0_probe10",
"net": "spi_clk", "net": "spi_clk",
"path": [] "path": []
}, },
{ {
"name": "la0_probe11", "name": "la0_probe7",
"net": "spi_mosi", "net": "spi_mosi",
"path": [] "path": []
}, },
{ {
"name": "la0_probe12", "name": "la0_probe8",
"net": "sd_cs", "net": "sd_cs",
"path": [] "path": []
}, },
{ {
"name": "la0_probe13", "name": "la0_probe9",
"net": "spi_miso", "net": "spi_miso",
"path": [] "path": []
}, },
{ {
"name": "la0_probe14", "name": "la0_probe10",
"net": "active", "net": "active",
"path": [ "path": [
"spi_controller" "spi_controller"
] ]
},
{
"name": "la0_probe15[0]",
"net": "r_clock_counter[0]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[1]",
"net": "r_clock_counter[1]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[2]",
"net": "r_clock_counter[2]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[3]",
"net": "r_clock_counter[3]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[4]",
"net": "r_clock_counter[4]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[5]",
"net": "r_clock_counter[5]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[6]",
"net": "r_clock_counter[6]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[7]",
"net": "r_clock_counter[7]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe15[8]",
"net": "r_clock_counter[8]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[0]",
"net": "r_baud_rate[0]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[1]",
"net": "r_baud_rate[1]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[2]",
"net": "r_baud_rate[2]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[3]",
"net": "r_baud_rate[3]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[4]",
"net": "r_baud_rate[4]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[5]",
"net": "r_baud_rate[5]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[6]",
"net": "r_baud_rate[6]",
"path": [
"spi_controller"
]
},
{
"name": "la0_probe16[7]",
"net": "r_baud_rate[7]",
"path": [
"spi_controller"
]
} }
] ]
} }
@@ -578,7 +374,7 @@
], ],
"session": { "session": {
"wizard": { "wizard": {
"data_depth": 8192, "data_depth": 16384,
"capture_control": false, "capture_control": false,
"selected_nets": [ "selected_nets": [
{ {
@@ -625,32 +421,6 @@
"net_idx_left": 15, "net_idx_left": 15,
"net_idx_right": 0 "net_idx_right": 0
}, },
{
"name": "cpu_nmib",
"width": 1,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": []
},
{
"name": "cpu_irqb",
"width": 1,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": []
},
{
"name": "cpu_data_out",
"width": 8,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": [],
"net_idx_left": 7,
"net_idx_right": 0
},
{ {
"name": "cpu_phi2", "name": "cpu_phi2",
"width": 1, "width": 1,
@@ -659,14 +429,6 @@
"child": [], "child": [],
"path": [] "path": []
}, },
{
"name": "cpu_rdy",
"width": 1,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": []
},
{ {
"name": "spi_clk", "name": "spi_clk",
"width": 1, "width": 1,
@@ -708,30 +470,6 @@
"path": [ "path": [
"spi_controller" "spi_controller"
] ]
},
{
"name": "r_clock_counter",
"width": 9,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": [
"spi_controller"
],
"net_idx_left": 8,
"net_idx_right": 0
},
{
"name": "r_baud_rate",
"width": 8,
"clk_domain": "clk_50",
"selected_probe_type": "DATA AND TRIGGER",
"child": [],
"path": [
"spi_controller"
],
"net_idx_left": 7,
"net_idx_right": 0
} }
], ],
"top_module": "super6502", "top_module": "super6502",

View File

@@ -2,151 +2,151 @@
8D 0E 02 8E 0F 02 8D 15 02 8E 16 02 88 B9 FF FF 8D 0E 02 8E 0F 02 8D 15 02 8E 16 02 88 B9 FF FF
8D 1F 02 88 B9 FF FF 8D 1E 02 8C 21 02 20 FF FF 8D 1F 02 88 B9 FF FF 8D 1E 02 8C 21 02 20 FF FF
A0 FF D0 E8 60 A2 FF 9A D8 A9 F0 85 00 A9 7E 85 A0 FF D0 E8 60 A2 FF 9A D8 A9 F0 85 00 A9 7E 85
01 20 CD F8 20 38 F7 20 45 F0 58 20 E6 F0 6C FC 01 20 72 F8 20 F0 F6 20 45 F0 58 20 03 F1 6C FC
FF 20 2C F7 00 A0 00 F0 07 A9 45 A2 F0 4C 00 02 FF 20 E4 F6 00 A0 00 F0 07 A9 45 A2 F0 4C 00 02
60 AD FF EF A2 00 60 8D FF EF 60 20 CC F0 C9 0A 60 AD FF EF A2 00 60 8D FF EF 60 20 E9 F0 C9 0A
D0 05 A9 0D 20 CC F0 60 DA 5A A8 B2 00 AA A9 1B D0 05 A9 0D 20 E9 F0 60 DA 5A A8 B2 00 AA A9 1B
20 CC F0 A9 5B 20 CC F0 98 20 CC F0 A9 3B 20 CC 20 E9 F0 A9 5B 20 E9 F0 98 20 E9 F0 A9 3B 20 E9
F0 8A 20 CC F0 A9 48 20 CC F0 7A FA 60 DA A9 1B F0 8A 20 E9 F0 A9 48 20 E9 F0 7A FA 60 DA A9 1B
20 CC F0 A9 63 20 CC F0 68 60 40 DA BA 48 E8 E8 20 E9 F0 A9 63 20 E9 F0 68 60 40 DA BA 48 E8 E8
BD 00 01 29 10 D0 06 68 FA 20 E5 F0 40 4C AD F0 BD 00 01 29 10 D0 06 68 FA 20 02 F1 40 4C AD F0
A9 01 8D DB EF 60 9C DB EF 60 A9 00 8D DA EF AD 48 A0 04 B1 00 09 40 20 D9 F0 88 B1 00 20 D9 F0
DB EF 30 FB AD D9 EF 60 8D E6 EF 60 48 8D E6 EF 88 10 F8 68 09 01 20 D9 F0 20 AC F7 60 A9 01 8D
AD E7 EF 89 02 D0 F9 68 60 AD E6 EF A2 00 60 AD DB EF 60 9C DB EF 60 A9 00 8D DA EF AD DB EF 30
E7 EF A2 00 60 60 20 B8 F7 A2 00 86 02 86 03 A9 FB AD D9 EF 60 8D E6 EF 60 48 8D E6 EF AD E7 EF
00 20 38 F8 20 91 F7 A9 14 A2 F9 20 6F F7 20 28 89 02 D0 F9 68 60 AD E6 EF A2 00 60 AD E7 EF A2
F1 C9 00 20 50 F8 D0 03 4C 15 F1 A9 F0 A2 F8 20 00 60 60 20 70 F7 A2 00 86 02 86 03 A9 00 20 DD
6F F7 4C 1C F1 A9 05 A2 F9 20 6F F7 4C 1F F1 4C F7 20 49 F7 A9 B9 A2 F8 20 27 F7 20 45 F1 C9 00
1F F1 A0 0C 20 1F F7 60 20 C5 F7 A9 00 20 80 F8 20 F5 F7 D0 03 4C 32 F1 A9 95 A2 F8 20 27 F7 4C
20 9A F2 4C 5F F1 A0 00 A2 00 18 A9 01 71 00 91 39 F1 A9 AA A2 F8 20 27 F7 4C 3C F1 4C 3C F1 A0
00 A0 00 A2 00 B1 00 C9 FF 20 56 F8 D0 03 4C 5F 0C 20 D7 F6 60 20 7D F7 A9 00 20 25 F8 20 B7 F2
F1 A9 36 A2 F9 20 6F F7 A2 00 A9 01 4C 96 F2 20 4C 7C F1 A0 00 A2 00 18 A9 01 71 00 91 00 A0 00
B1 F4 A0 01 91 00 C9 01 20 50 F8 D0 C9 A2 00 A9 A2 00 B1 00 C9 FF 20 FB F7 D0 03 4C 7C F1 A9 DB
00 A0 06 20 C4 F8 A0 07 20 09 F8 E0 03 D0 02 C9 A2 F8 20 27 F7 A2 00 A9 01 4C B3 F2 20 69 F4 A0
E8 20 6F F8 F0 03 4C 8C F1 4C 98 F1 A0 06 A2 00 01 91 00 C9 01 20 F5 F7 D0 C9 A2 00 A9 00 A0 06
A9 01 20 0F F7 4C 76 F1 A9 01 20 23 F8 20 0B F5 20 69 F8 A0 07 20 C1 F7 E0 03 D0 02 C9 E8 20 14
A0 01 A2 00 B1 00 C9 01 20 50 F8 D0 03 4C BE F1 F8 F0 03 4C A9 F1 4C B5 F1 A0 06 A2 00 A9 01 20
A9 2C A2 F9 20 6F F7 A2 00 A9 01 4C 96 F2 A0 05 C7 F6 4C 93 F1 A9 01 20 C8 F7 20 C3 F4 A0 01 A2
A2 00 B1 00 C9 AA 20 50 F8 D0 03 4C D5 F1 A2 00 00 B1 00 C9 01 20 F5 F7 D0 03 4C DB F1 A9 D1 A2
A9 01 4C 96 F2 A2 00 A9 00 A0 00 91 00 A0 00 A2 F8 20 27 F7 A2 00 A9 01 4C B3 F2 A0 05 A2 00 B1
00 B1 00 C9 FF 20 56 F8 D0 03 4C FB F1 A9 1C A2 00 C9 AA 20 F5 F7 D0 03 4C F2 F1 A2 00 A9 01 4C
F9 20 6F F7 A2 00 A9 01 4C 96 F2 20 2D F6 A0 01 B3 F2 A2 00 A9 00 A0 00 91 00 A0 00 A2 00 B1 00
91 00 A0 01 A2 00 B1 00 C9 02 20 6F F8 D0 03 4C C9 FF 20 FB F7 D0 03 4C 18 F2 A9 C1 A2 F8 20 27
19 F2 20 87 F6 A0 01 91 00 A2 00 A9 00 A0 06 20 F7 A2 00 A9 01 4C B3 F2 20 E5 F5 A0 01 91 00 A0
C4 F8 A0 07 20 09 F8 E0 03 D0 02 C9 E8 20 6F F8 01 A2 00 B1 00 C9 02 20 14 F8 D0 03 4C 36 F2 20
F0 03 4C 38 F2 4C 44 F2 A0 06 A2 00 A9 01 20 0F 3F F6 A0 01 91 00 A2 00 A9 00 A0 06 20 69 F8 A0
F7 4C 22 F2 A0 00 A2 00 18 A9 01 71 00 91 00 A0 07 20 C1 F7 E0 03 D0 02 C9 E8 20 14 F8 F0 03 4C
01 A2 00 B1 00 C9 00 20 50 F8 D0 81 A2 00 A9 00 55 F2 4C 61 F2 A0 06 A2 00 A9 01 20 C7 F6 4C 3F
A0 06 20 C4 F8 A0 07 20 09 F8 E0 03 D0 02 C9 E8 F2 A0 00 A2 00 18 A9 01 71 00 91 00 A0 01 A2 00
20 6F F8 F0 03 4C 7B F2 4C 87 F2 A0 06 A2 00 A9 B1 00 C9 00 20 F5 F7 D0 81 A2 00 A9 00 A0 06 20
01 20 0F F7 4C 65 F2 A9 01 20 23 F8 20 B3 F5 A2 69 F8 A0 07 20 C1 F7 E0 03 D0 02 C9 E8 20 14 F8
00 A9 00 4C 96 F2 20 F9 F7 60 20 9E F7 A2 00 A9 F0 03 4C 98 F2 4C A4 F2 A0 06 A2 00 A9 01 20 C7
00 20 B6 F0 A2 00 A9 00 A0 01 20 C4 F8 A0 02 20 F6 4C 82 F2 A9 01 20 C8 F7 20 6B F5 A2 00 A9 00
09 F8 E0 03 D0 02 C9 E8 20 6F F8 F0 03 4C C3 F2 4C B3 F2 20 B1 F7 60 20 56 F7 A2 00 A9 00 20 D3
4C CF F2 A0 01 A2 00 A9 01 20 0F F7 4C AD F2 A2 F0 A2 00 A9 00 A0 01 20 69 F8 A0 02 20 C1 F7 E0
00 A9 FF 20 BC F0 A2 00 A9 00 20 B6 F0 A2 00 A9 03 D0 02 C9 E8 20 14 F8 F0 03 4C E0 F2 4C EC F2
00 A0 00 91 00 A0 00 A2 00 B1 00 C9 50 20 6F F8 A0 01 A2 00 A9 01 20 C7 F6 4C CA F2 A2 00 A9 FF
F0 03 4C F8 F2 4C 0D F3 A2 00 A9 FF 20 BC F0 A0 20 D9 F0 A2 00 A9 00 20 D3 F0 A2 00 A9 00 A0 00
00 A2 00 18 A9 01 71 00 91 00 4C E5 F2 20 EF F7 91 00 A0 00 A2 00 B1 00 C9 50 20 14 F8 F0 03 4C
60 20 80 F8 A0 05 A2 00 B1 00 09 40 A2 00 20 BC 15 F3 4C 2A F3 A2 00 A9 FF 20 D9 F0 A0 00 A2 00
F0 A0 04 20 12 F8 A2 00 A5 03 86 02 86 03 A2 00 18 A9 01 71 00 91 00 4C 02 F3 20 A7 F7 60 A9 00
20 BC F0 A0 04 20 12 F8 A0 00 A6 03 A5 02 84 03 20 25 F8 20 40 F7 4C 59 F3 A0 01 A2 00 18 A9 01
84 02 A2 00 20 BC F0 A0 04 20 12 F8 8A A6 02 A4 71 00 91 00 A0 01 A2 00 B1 00 C9 09 A9 00 A2 00
03 84 02 A0 00 84 03 A2 00 20 BC F0 A0 01 A2 00 2A D0 03 4C 59 F3 4C 6B F3 A2 00 A9 FF 20 D9 F0
B1 00 20 BC F0 A0 00 A2 00 B1 00 09 01 A2 00 20 A0 00 91 00 C9 FF 20 FB F7 D0 CE A0 00 A2 00 B1
BC F0 20 F4 F7 60 A9 00 20 80 F8 20 88 F7 4C A1 00 4C 74 F3 20 99 F7 60 20 3B F8 A0 01 20 C1 F7
F3 A0 01 A2 00 18 A9 01 71 00 91 00 A0 01 A2 00 20 3B F8 20 2E F3 A0 00 20 51 F8 A0 01 20 C1 F7
B1 00 C9 09 A9 00 A2 00 2A D0 03 4C A1 F3 4C B3 1A D0 01 E8 20 3B F8 A2 00 A9 FF 20 D9 F0 A0 00
F3 A2 00 A9 FF 20 BC F0 A0 00 91 00 C9 FF 20 56 20 51 F8 20 99 F7 60 20 3B F8 A0 01 20 C1 F7 20
F8 D0 CE A0 00 A2 00 B1 00 4C BC F3 20 E1 F7 60 3B F8 20 2E F3 A0 00 20 51 F8 A0 01 20 C1 F7 A0
20 96 F8 A0 01 20 09 F8 20 96 F8 20 76 F3 A0 00 00 20 B6 F7 C9 02 A9 00 A2 00 2A D0 03 4C D3 F3
20 AC F8 A0 01 20 09 F8 1A D0 01 E8 20 96 F8 A2 4C E6 F3 A0 01 20 C1 F7 1A D0 01 E8 20 3B F8 A2
00 A9 FF 20 BC F0 A0 00 20 AC F8 20 E1 F7 60 20 00 A9 04 20 2D F4 20 99 F7 60 20 3B F8 A0 01 20
96 F8 A0 01 20 09 F8 20 96 F8 20 76 F3 A0 00 20 C1 F7 20 3B F8 20 2E F3 A0 00 20 51 F8 A0 01 20
AC F8 A0 01 20 09 F8 A0 00 20 FE F7 C9 02 A9 00 C1 F7 A0 00 20 B6 F7 C9 02 A9 00 A2 00 2A D0 03
A2 00 2A D0 03 4C 1B F4 4C 2E F4 A0 01 20 09 F8 4C 16 F4 4C 29 F4 A0 01 20 C1 F7 1A D0 01 E8 20
1A D0 01 E8 20 96 F8 A2 00 A9 04 20 75 F4 20 E1 3B F8 A2 00 A9 04 20 2D F4 20 99 F7 60 20 25 F8
F7 60 20 96 F8 A0 01 20 09 F8 20 96 F8 20 76 F3 4C 52 F4 A0 02 20 C1 F7 20 3B F8 A2 00 A9 FF 48
A0 00 20 AC F8 A0 01 20 09 F8 A0 00 20 FE F7 C9 A0 03 A2 00 A9 01 20 C7 F6 68 20 D9 F0 A0 00 20
02 A9 00 A2 00 2A D0 03 4C 5E F4 4C 71 F4 A0 01 51 F8 A0 00 B1 00 08 A0 00 A2 00 B1 00 38 E9 01
20 09 F8 1A D0 01 E8 20 96 F8 A2 00 A9 04 20 75 91 00 28 D0 CE 20 A7 F7 60 20 40 F7 A2 00 A9 FF
F4 20 E1 F7 60 20 80 F8 4C 9A F4 A0 02 20 09 F8 20 D9 F0 A2 00 A9 00 20 CD F0 A2 00 A9 FF 20 D9
20 96 F8 A2 00 A9 FF 48 A0 03 A2 00 A9 01 20 0F F0 A2 00 A9 00 20 25 F8 A2 00 86 02 86 03 A9 00
F7 68 20 BC F0 A0 00 20 AC F8 A0 00 B1 00 08 A0 20 DD F7 A2 00 A9 94 20 B0 F0 20 2E F3 A0 00 91
00 A2 00 B1 00 38 E9 01 91 00 28 D0 CE 20 EF F7 00 A2 00 A9 FF 20 D9 F0 A2 00 A9 00 20 D3 F0 A2
60 20 88 F7 A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 00 A9 FF 20 D9 F0 A0 00 A2 00 B1 00 4C BF F4 20
B0 F0 A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 80 F8 8A F7 60 20 3B F8 A2 00 A9 FF 20 D9 F0 A2 00 A9
A2 00 86 02 86 03 A9 00 20 38 F8 A2 00 A9 94 20 00 20 CD F0 A2 00 A9 FF 20 D9 F0 A2 00 A9 08 20
11 F3 20 76 F3 A0 00 91 00 A2 00 A9 FF 20 BC F0 25 F8 A2 01 A9 00 85 02 A9 00 85 03 A9 AA 20 DD
A2 00 A9 00 20 B6 F0 A2 00 A9 FF 20 BC F0 A0 00 F7 A2 00 A9 86 20 B0 F0 A0 01 20 C1 F7 20 EA F3
A2 00 B1 00 4C 07 F5 20 D2 F7 60 20 96 F8 A2 00 A2 00 A9 FF 20 D9 F0 A2 00 A9 00 20 D3 F0 A2 00
A9 FF 20 BC F0 A2 00 A9 00 20 B0 F0 A2 00 A9 FF A9 FF 20 D9 F0 20 99 F7 60 20 3B F8 A2 00 A9 FF
20 BC F0 A2 00 A9 08 20 80 F8 A2 01 A9 00 85 02 20 D9 F0 A2 00 A9 00 20 CD F0 A2 00 A9 FF 20 D9
A9 00 85 03 A9 AA 20 38 F8 A2 00 A9 86 20 11 F3 F0 A2 00 A9 0D 20 25 F8 A2 00 86 02 86 03 A9 00
A0 01 20 09 F8 20 32 F4 A2 00 A9 FF 20 BC F0 A2 20 DD F7 A2 00 A9 00 20 B0 F0 A0 01 20 C1 F7 20
00 A9 00 20 B6 F0 A2 00 A9 FF 20 BC F0 20 E1 F7 78 F3 A2 00 A9 FF 20 D9 F0 A2 00 A9 00 20 D3 F0
60 20 96 F8 A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 A2 00 A9 FF 20 D9 F0 20 99 F7 60 20 3B F8 20 40
B0 F0 A2 00 A9 FF 20 BC F0 A2 00 A9 0D 20 80 F8 F7 A2 00 A9 FF 20 D9 F0 A2 00 A9 00 20 CD F0 A2
A2 00 86 02 86 03 A9 00 20 38 F8 A2 00 A9 00 20 00 A9 FF 20 D9 F0 A0 00 91 00 A0 00 A2 00 B1 00
11 F3 A0 01 20 09 F8 20 C0 F3 A2 00 A9 FF 20 BC C9 FF 20 F5 F7 D0 03 4C AB F5 4C 9D F5 A2 00 A9
F0 A2 00 A9 00 20 B6 F0 A2 00 A9 FF 20 BC F0 20 FF 20 D9 F0 C9 FF 20 F5 F7 D0 F2 A2 00 A9 3A 20
E1 F7 60 20 96 F8 20 88 F7 A2 00 A9 FF 20 BC F0 25 F8 A2 00 86 02 86 03 A9 00 20 DD F7 A2 00 A9
A2 00 A9 00 20 B0 F0 A2 00 A9 FF 20 BC F0 A0 00 00 20 B0 F0 A0 02 20 C1 F7 20 A7 F3 A2 00 A9 FF
91 00 A0 00 A2 00 B1 00 C9 FF 20 50 F8 D0 03 4C 20 D9 F0 A2 00 A9 00 20 D3 F0 A2 00 A9 FF 20 D9
F3 F5 4C E5 F5 A2 00 A9 FF 20 BC F0 C9 FF 20 50 F0 20 A7 F7 60 20 40 F7 A2 00 A9 FF 20 D9 F0 A2
F8 D0 F2 A2 00 A9 3A 20 80 F8 A2 00 86 02 86 03 00 A9 00 20 CD F0 A2 00 A9 FF 20 D9 F0 A2 00 A9
A9 00 20 38 F8 A2 00 A9 00 20 11 F3 A0 02 20 09 37 20 25 F8 A2 00 86 02 86 03 A9 00 20 DD F7 A2
F8 20 EF F3 A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 00 A9 00 20 B0 F0 20 2E F3 A0 00 91 00 A2 00 A9
B6 F0 A2 00 A9 FF 20 BC F0 20 EF F7 60 20 88 F7 FF 20 D9 F0 A2 00 A9 00 20 D3 F0 A2 00 A9 FF 20
A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 B0 F0 A2 00 D9 F0 A0 00 A2 00 B1 00 4C 3B F6 20 8A F7 60 20
A9 FF 20 BC F0 A2 00 A9 37 20 80 F8 A2 00 86 02 40 F7 A2 00 A9 FF 20 D9 F0 A2 00 A9 00 20 CD F0
86 03 A9 00 20 38 F8 A2 00 A9 00 20 11 F3 20 76 A2 00 A9 FF 20 D9 F0 A2 00 A9 29 20 25 F8 A2 00
F3 A0 00 91 00 A2 00 A9 FF 20 BC F0 A2 00 A9 00 86 02 A9 40 85 03 A9 00 20 DD F7 A2 00 A9 00 20
20 B6 F0 A2 00 A9 FF 20 BC F0 A0 00 A2 00 B1 00 B0 F0 20 2E F3 A0 00 91 00 A2 00 A9 FF 20 D9 F0
4C 83 F6 20 D2 F7 60 20 88 F7 A2 00 A9 FF 20 BC A2 00 A9 00 20 D3 F0 A2 00 A9 FF 20 D9 F0 A0 00
F0 A2 00 A9 00 20 B0 F0 A2 00 A9 FF 20 BC F0 A2 A2 00 B1 00 4C 97 F6 20 8A F7 60 20 3B F8 20 70
00 A9 29 20 80 F8 A2 00 86 02 A9 40 85 03 A9 00 F7 A0 05 A2 00 B1 00 4C AA F6 A0 0E 20 D7 F6 60
20 38 F8 A2 00 A9 00 20 11 F3 20 76 F3 A0 00 91 20 3B F8 20 70 F7 A0 03 A2 00 B1 00 4C BF F6 A0
00 A2 00 A9 FF 20 BC F0 A2 00 A9 00 20 B6 F0 A2 0E 20 D7 F6 60 A0 00 18 71 00 91 00 48 C8 8A 71
00 A9 FF 20 BC F0 A0 00 A2 00 B1 00 4C DF F6 20 00 91 00 AA 68 60 C8 48 18 98 65 00 85 00 90 02
D2 F7 60 20 96 F8 20 B8 F7 A0 05 A2 00 B1 00 4C E6 01 68 60 A0 00 F0 07 A9 45 A2 F0 4C 00 02 60
F2 F6 A0 0E 20 1F F7 60 20 96 F8 20 B8 F7 A0 03 A9 00 85 08 A9 F0 85 09 A9 00 85 0A A9 02 85 0B
A2 00 B1 00 4C 07 F7 A0 0E 20 1F F7 60 A0 00 18 A2 DA A9 FF 85 10 A0 00 E8 F0 0D B1 08 91 0A C8
71 00 91 00 48 C8 8A 71 00 91 00 AA 68 60 C8 48 D0 F6 E6 09 E6 0B D0 F0 E6 10 D0 EF 60 85 08 86
18 98 65 00 85 00 90 02 E6 01 68 60 A0 00 F0 07 09 20 68 F0 4C 2B F7 85 08 86 09 A0 00 B1 08 F0
A9 45 A2 F0 4C 00 02 60 A9 00 85 08 A9 F0 85 09 0E C8 84 10 20 5B F0 A4 10 D0 F2 E6 09 D0 EE 60
A9 00 85 0A A9 02 85 0B A2 DA A9 FF 85 10 A0 00 A4 00 D0 02 C6 01 C6 00 60 A5 00 38 E9 02 85 00
E8 F0 0D B1 08 91 0A C8 D0 F6 E6 09 E6 0B D0 F0 90 01 60 C6 01 60 A5 00 38 E9 03 85 00 90 01 60
E6 10 D0 EF 60 85 08 86 09 20 68 F0 4C 73 F7 85 C6 01 60 A5 00 38 E9 04 85 00 90 01 60 C6 01 60
08 86 09 A0 00 B1 08 F0 0E C8 84 10 20 5B F0 A4 A5 00 38 E9 06 85 00 90 01 60 C6 01 60 A5 00 38
10 D0 F2 E6 09 D0 EE 60 A4 00 D0 02 C6 01 C6 00 E9 07 85 00 90 01 60 C6 01 60 E6 00 D0 02 E6 01
60 A5 00 38 E9 02 85 00 90 01 60 C6 01 60 A5 00 60 A0 01 B1 00 AA 88 B1 00 E6 00 F0 05 E6 00 F0
38 E9 03 85 00 90 01 60 C6 01 60 A5 00 38 E9 04 03 60 E6 00 E6 01 60 A0 03 4C D7 F6 A0 05 4C D7
85 00 90 01 60 C6 01 60 A5 00 38 E9 06 85 00 90 F6 A0 08 4C D7 F6 85 08 86 09 A2 00 B1 08 60 A0
01 60 C6 01 60 A5 00 38 E9 07 85 00 90 01 60 C6 01 B1 00 AA 88 B1 00 60 A2 00 18 65 00 48 8A 65
01 60 E6 00 D0 02 E6 01 60 A0 01 B1 00 AA 88 B1 01 AA 68 60 A9 00 AA A0 00 84 02 84 03 48 20 63
00 E6 00 F0 05 E6 00 F0 03 60 E6 00 E6 01 60 A0 F7 A0 03 A5 03 91 00 88 A5 02 91 00 88 8A 91 00
03 4C 1F F7 A0 06 4C 1F F7 A0 08 4C 1F F7 85 08 68 88 91 00 60 D0 06 A2 00 8A 60 D0 FA A2 00 A9
86 09 A2 00 B1 08 60 A0 01 B1 00 AA 88 B1 00 60 01 60 F0 F9 30 F7 A2 00 8A 60 F0 02 10 EF A2 00
A0 03 B1 00 85 03 88 B1 00 85 02 88 B1 00 AA 88 8A 60 F0 E9 90 E7 A2 00 8A 60 F0 DB A2 00 8A 2A
B1 00 60 A2 00 18 65 00 48 8A 65 01 AA 68 60 A9 60 A0 00 B1 00 A4 00 F0 07 C6 00 A0 00 91 00 60
00 AA A0 00 84 02 84 03 48 20 AB F7 A0 03 A5 03 C6 01 C6 00 91 00 60 A9 00 A2 00 48 A5 00 38 E9
91 00 88 A5 02 91 00 88 8A 91 00 68 88 91 00 60 02 85 00 B0 02 C6 01 A0 01 8A 91 00 68 88 91 00
D0 06 A2 00 8A 60 D0 FA A2 00 A9 01 60 F0 F9 30 60 48 84 10 A0 01 B1 00 85 09 88 B1 00 85 08 A4
F7 A2 00 8A 60 F0 02 10 EF A2 00 8A 60 F0 E9 90 10 68 91 08 4C 99 F7 A0 00 91 00 C8 48 8A 91 00
E7 A2 00 8A 60 F0 DB A2 00 8A 2A 60 A0 00 B1 00 68 60 A9 25 85 08 A9 02 85 09 A9 00 A8 A2 02 F0
A4 00 F0 07 C6 00 A0 00 91 00 60 C6 01 C6 00 91 0A 91 08 C8 D0 FB E6 09 CA D0 F6 C0 00 F0 05 91
00 60 A9 00 A2 00 48 A5 00 38 E9 02 85 00 B0 02 08 C8 D0 F7 60 45 72 72 6F 72 20 69 6E 69 74 20
C6 01 A0 01 8A 91 00 68 88 91 00 60 48 84 10 A0 53 44 20 43 41 52 44 0D 0A 00 53 44 20 43 61 72
01 B1 00 85 09 88 B1 00 85 08 A4 10 68 91 08 4C 64 20 69 6E 69 74 0D 0A 00 53 74 61 72 74 0D 0A
E1 F7 A0 00 91 00 C8 48 8A 91 00 68 60 A9 25 85 00 6F 70 5F 63 6F 6E 64 20 65 72 72 6F 72 0D 0A
08 A9 02 85 09 A9 00 A8 A2 02 F0 0A 91 08 C8 D0 00 49 46 20 43 6F 6E 64 0D 0A 00 47 6F 20 49 44
FB E6 09 CA D0 F6 C0 00 F0 05 91 08 C8 D0 F7 60 4C 45 0D 0A 00 00 00 00 00 00 00 00 00 00 00 00
45 72 72 6F 72 20 69 6E 69 74 20 53 44 20 43 41 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
52 44 0D 0A 00 53 44 20 43 61 72 64 20 69 6E 69 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
74 0D 0A 00 53 74 61 72 74 0D 0A 00 6F 70 5F 63 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
6F 6E 64 20 65 72 72 6F 72 0D 0A 00 49 46 20 43 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
6F 6E 64 0D 0A 00 47 6F 20 49 44 4C 45 0D 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<efx:project name="super6502" description="" last_change_date="Sun July 23 2023 14:51:17" location="/home/byron/Projects/super6502/hw/efinix_fpga" sw_version="2023.1.150" last_run_state="pass" last_run_tool="efx_pgm" last_run_flow="bitstream" config_result_in_sync="true" design_ood="sync" place_ood="sync" route_ood="sync" xmlns:efx="http://www.efinixinc.com/enf_proj" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.efinixinc.com/enf_proj enf_proj.xsd"> <efx:project name="super6502" description="" last_change_date="Sun July 23 2023 16:23:00" location="/home/byron/Projects/super6502/hw/efinix_fpga" sw_version="2023.1.150" last_run_state="pass" last_run_tool="efx_pgm" last_run_flow="bitstream" config_result_in_sync="true" design_ood="sync" place_ood="sync" route_ood="sync" xmlns:efx="http://www.efinixinc.com/enf_proj" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.efinixinc.com/enf_proj enf_proj.xsd">
<efx:device_info> <efx:device_info>
<efx:family name="Trion"/> <efx:family name="Trion"/>
<efx:device name="T20F256"/> <efx:device name="T20F256"/>

View File

@@ -94,6 +94,7 @@ void SD_powerUpSeq()
/******************************************************************************* /*******************************************************************************
Send command to SD card Send command to SD card
*******************************************************************************/ *******************************************************************************/
/*
void SD_command(uint8_t cmd, uint32_t arg, uint8_t crc) void SD_command(uint8_t cmd, uint32_t arg, uint8_t crc)
{ {
// transmit command to sd card // transmit command to sd card
@@ -108,6 +109,7 @@ void SD_command(uint8_t cmd, uint32_t arg, uint8_t crc)
// transmit crc // transmit crc
spi_exchange(crc|0x01); spi_exchange(crc|0x01);
} }
*/
/******************************************************************************* /*******************************************************************************
Read R1 from SD card Read R1 from SD card

View File

@@ -0,0 +1,32 @@
.export _SD_command
.importzp sp
.autoimport on
; void SD_command(uint8_t cmd, uint32_t arg, uint8_t crc)
; The plan: push crc to stack, load arg into tmp1 through 4
.proc _SD_command: near
pha ; Push CRC to cpu stack
ldy #$04
lda (sp),y ; Load CMD
ora #$40 ; start bit
jsr _spi_exchange
dey
arg_loop: ; send ARG
lda (sp),y
jsr _spi_exchange
dey
bpl arg_loop
pla ; Pull CRC from stack
ora #$01 ; stop bit
jsr _spi_exchange
jsr incsp5 ; pop all off stack
rts
.endproc