firestarter 2.0.2__tar.gz → 2.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. {firestarter-2.0.2 → firestarter-2.0.4}/PKG-INFO +16 -7
  2. {firestarter-2.0.2 → firestarter-2.0.4}/README.md +14 -4
  3. firestarter-2.0.4/firestarter/__init__.py +1 -0
  4. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/PKG-INFO +16 -7
  5. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/SOURCES.txt +1 -1
  6. firestarter-2.0.4/images/firestarter_logo.png +0 -0
  7. {firestarter-2.0.2 → firestarter-2.0.4}/pyproject.toml +28 -17
  8. firestarter-2.0.2/firestarter/__init__.py +0 -1
  9. firestarter-2.0.2/test.py +0 -112
  10. {firestarter-2.0.2 → firestarter-2.0.4}/.github/scripts/update_version.py +0 -0
  11. {firestarter-2.0.2 → firestarter-2.0.4}/.github/workflows/publish.yml +0 -0
  12. {firestarter-2.0.2 → firestarter-2.0.4}/.github/workflows/release.yml +0 -0
  13. {firestarter-2.0.2 → firestarter-2.0.4}/.gitignore +0 -0
  14. {firestarter-2.0.2 → firestarter-2.0.4}/.vscode/launch.json +0 -0
  15. {firestarter-2.0.2 → firestarter-2.0.4}/LICENSE +0 -0
  16. {firestarter-2.0.2 → firestarter-2.0.4}/MANIFEST.in +0 -0
  17. {firestarter-2.0.2 → firestarter-2.0.4}/autocomplete.md +0 -0
  18. {firestarter-2.0.2 → firestarter-2.0.4}/doc/package-details.md +0 -0
  19. {firestarter-2.0.2 → firestarter-2.0.4}/doc/protocol-id.md +0 -0
  20. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/avr_tool.py +0 -0
  21. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/config.py +0 -0
  22. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/constants.py +0 -0
  23. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/data/database_generated.json +0 -0
  24. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/data/database_overrides.json +0 -0
  25. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/data/pin-maps.json +0 -0
  26. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/database.py +0 -0
  27. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/eprom_info.py +0 -0
  28. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/eprom_operations.py +0 -0
  29. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/firmware.py +0 -0
  30. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/hardware.py +0 -0
  31. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/ic_layout.py +0 -0
  32. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/logging_utils.py +0 -0
  33. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/main.py +0 -0
  34. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/serial_comm.py +0 -0
  35. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter/utils.py +0 -0
  36. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/dependency_links.txt +0 -0
  37. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/entry_points.txt +0 -0
  38. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/requires.txt +0 -0
  39. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter.egg-info/top_level.txt +0 -0
  40. {firestarter-2.0.2 → firestarter-2.0.4}/firestarter_test.sh +0 -0
  41. {firestarter-2.0.2 → firestarter-2.0.4}/requirements.txt +0 -0
  42. {firestarter-2.0.2 → firestarter-2.0.4}/setup.cfg +0 -0
  43. {firestarter-2.0.2 → firestarter-2.0.4}/things.md +0 -0
  44. {firestarter-2.0.2 → firestarter-2.0.4}/tools/infoic.xml +0 -0
  45. {firestarter-2.0.2 → firestarter-2.0.4}/tools/parse_db.py +0 -0
  46. {firestarter-2.0.2 → firestarter-2.0.4}/tools/pin-layouts.odt +0 -0
  47. {firestarter-2.0.2 → firestarter-2.0.4}/tools/verified.txt +0 -0
  48. {firestarter-2.0.2 → firestarter-2.0.4}/write_test.sh +0 -0
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: firestarter
3
- Version: 2.0.2
3
+ Version: 2.0.4
4
4
  Summary: EPROM programmer software for the Relatively Universal ROM Programmer
5
5
  Author-email: Henrik Olsson <henols@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/henols/firestarter_app
7
- Keywords: eprom,programmer,arduino,electronics,retrocomputing
8
- Classifier: Development Status :: 4 - Beta
7
+ Keywords: firestarter,eprom,rom,eeprom,flash,programmer,arduino,electronics,retro computing,retro game console,commodore,atari,apple,c64,nes
9
8
  Classifier: Environment :: Console
10
9
  Classifier: Intended Audience :: Developers
11
10
  Classifier: Intended Audience :: End Users/Desktop
@@ -29,13 +28,23 @@ Requires-Dist: argcomplete>=3.6.2
29
28
  Requires-Dist: rich>=14.0
30
29
  Dynamic: license-file
31
30
 
32
- # Firestarter EPROM programmer, python application
33
- Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer).
34
31
 
32
+ <p align="center"><img src="https://github.com/henols/firestarter/blob/main/images/firestarter_logo.png" alt="Firestarter EPROM Programmer" width="200"></p>
35
33
 
36
- Get one here [Relatively-Universal-ROM-Programmer](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
34
+ ----
37
35
 
38
- Arduino PlatformIO project is found here [Firestarter](https://github.com/henols/firestarter).
36
+ # Firestarter
37
+
38
+ [![PyPI version](https://badge.fury.io/py/firestarter.svg)](https://badge.fury.io/py/firestarter)
39
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
40
+
41
+ [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E21I2WWW)
42
+
43
+ ---
44
+
45
+ Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer) RURP Arduino shield ([Get one here](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
46
+
47
+ The Firestarter Firmware can be found here [Firestarter](https://github.com/henols/firestarter).
39
48
 
40
49
  Firestarter in action [watch the video](https://youtu.be/JDHOKbyNnrE?si=0_iXKPZZwyyNGUTZ).
41
50
 
@@ -1,10 +1,20 @@
1
- # Firestarter EPROM programmer, python application
2
- Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer).
3
1
 
2
+ <p align="center"><img src="https://github.com/henols/firestarter/blob/main/images/firestarter_logo.png" alt="Firestarter EPROM Programmer" width="200"></p>
4
3
 
5
- Get one here [Relatively-Universal-ROM-Programmer](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
4
+ ----
6
5
 
7
- Arduino PlatformIO project is found here [Firestarter](https://github.com/henols/firestarter).
6
+ # Firestarter
7
+
8
+ [![PyPI version](https://badge.fury.io/py/firestarter.svg)](https://badge.fury.io/py/firestarter)
9
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
10
+
11
+ [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E21I2WWW)
12
+
13
+ ---
14
+
15
+ Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer) RURP Arduino shield ([Get one here](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
16
+
17
+ The Firestarter Firmware can be found here [Firestarter](https://github.com/henols/firestarter).
8
18
 
9
19
  Firestarter in action [watch the video](https://youtu.be/JDHOKbyNnrE?si=0_iXKPZZwyyNGUTZ).
10
20
 
@@ -0,0 +1 @@
1
+ __version__ = "2.0.4"
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: firestarter
3
- Version: 2.0.2
3
+ Version: 2.0.4
4
4
  Summary: EPROM programmer software for the Relatively Universal ROM Programmer
5
5
  Author-email: Henrik Olsson <henols@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/henols/firestarter_app
7
- Keywords: eprom,programmer,arduino,electronics,retrocomputing
8
- Classifier: Development Status :: 4 - Beta
7
+ Keywords: firestarter,eprom,rom,eeprom,flash,programmer,arduino,electronics,retro computing,retro game console,commodore,atari,apple,c64,nes
9
8
  Classifier: Environment :: Console
10
9
  Classifier: Intended Audience :: Developers
11
10
  Classifier: Intended Audience :: End Users/Desktop
@@ -29,13 +28,23 @@ Requires-Dist: argcomplete>=3.6.2
29
28
  Requires-Dist: rich>=14.0
30
29
  Dynamic: license-file
31
30
 
32
- # Firestarter EPROM programmer, python application
33
- Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer).
34
31
 
32
+ <p align="center"><img src="https://github.com/henols/firestarter/blob/main/images/firestarter_logo.png" alt="Firestarter EPROM Programmer" width="200"></p>
35
33
 
36
- Get one here [Relatively-Universal-ROM-Programmer](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
34
+ ----
37
35
 
38
- Arduino PlatformIO project is found here [Firestarter](https://github.com/henols/firestarter).
36
+ # Firestarter
37
+
38
+ [![PyPI version](https://badge.fury.io/py/firestarter.svg)](https://badge.fury.io/py/firestarter)
39
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
40
+
41
+ [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E21I2WWW)
42
+
43
+ ---
44
+
45
+ Firestarter is an application for the [Relatively-Universal-ROM-Programmer](https://github.com/AndersBNielsen/Relatively-Universal-ROM-Programmer) RURP Arduino shield ([Get one here](https://www.imania.dk/samlesaet-hobbyelektronik-og-ic-er-relatively-universal-rom-programmer.htm).
46
+
47
+ The Firestarter Firmware can be found here [Firestarter](https://github.com/henols/firestarter).
39
48
 
40
49
  Firestarter in action [watch the video](https://youtu.be/JDHOKbyNnrE?si=0_iXKPZZwyyNGUTZ).
41
50
 
@@ -6,7 +6,6 @@ autocomplete.md
6
6
  firestarter_test.sh
7
7
  pyproject.toml
8
8
  requirements.txt
9
- test.py
10
9
  things.md
11
10
  write_test.sh
12
11
  .github/scripts/update_version.py
@@ -38,6 +37,7 @@ firestarter.egg-info/top_level.txt
38
37
  firestarter/data/database_generated.json
39
38
  firestarter/data/database_overrides.json
40
39
  firestarter/data/pin-maps.json
40
+ images/firestarter_logo.png
41
41
  tools/infoic.xml
42
42
  tools/parse_db.py
43
43
  tools/pin-layouts.odt
@@ -6,17 +6,30 @@ build-backend = "setuptools.build_meta"
6
6
  [tool.setuptools_scm]
7
7
 
8
8
  [project]
9
- authors = [
10
- { name = "Henrik Olsson", email = "henols@gmail.com" },
11
- ]
9
+ authors = [{ name = "Henrik Olsson", email = "henols@gmail.com" }]
12
10
  name = "firestarter"
13
11
  description = "EPROM programmer software for the Relatively Universal ROM Programmer"
14
- readme = {file = "README.md", content-type = "text/markdown"}
12
+ readme = { file = "README.md", content-type = "text/markdown" }
15
13
  dynamic = ["version"]
16
14
  requires-python = ">=3.9"
17
- keywords = ["eprom", "programmer", "arduino", "electronics", "retrocomputing"] # Example keywords
15
+ keywords = [
16
+ "firestarter",
17
+ "eprom",
18
+ "rom",
19
+ "eeprom",
20
+ "flash",
21
+ "programmer",
22
+ "arduino",
23
+ "electronics",
24
+ "retro computing",
25
+ "retro game console",
26
+ "commodore",
27
+ "atari",
28
+ "apple",
29
+ "c64",
30
+ "nes",
31
+ ]
18
32
  classifiers = [
19
- "Development Status :: 4 - Beta", # Or appropriate status
20
33
  "Environment :: Console",
21
34
  "Intended Audience :: Developers",
22
35
  "Intended Audience :: End Users/Desktop",
@@ -37,25 +50,23 @@ dependencies = [
37
50
  "requests>=2.20",
38
51
  "tqdm>=4.60",
39
52
  "argcomplete>=3.6.2",
40
- "rich>=14.0"
53
+ "rich>=14.0",
41
54
  ]
42
55
 
43
56
  urls = { "Homepage" = "https://github.com/henols/firestarter_app" }
44
57
 
45
58
  [project.scripts]
46
- firestarter="firestarter.main:main"
59
+ firestarter = "firestarter.main:main"
47
60
 
48
61
  [tool.setuptools]
49
62
  include-package-data = true
50
- packages = [
51
- "firestarter",
52
- ]
63
+ packages = ["firestarter"]
53
64
  [tool.setuptools.package-data]
54
- "firestarter" = [
55
- "data/database_generated.json",
56
- "data/database_overrides.json",
57
- "data/pin-maps.json",
58
- ]
65
+ "firestarter" = [
66
+ "data/database_generated.json",
67
+ "data/database_overrides.json",
68
+ "data/pin-maps.json",
69
+ ]
59
70
 
60
71
  [tool.setuptools.dynamic]
61
- version = {attr = "firestarter.__version__"}
72
+ version = { attr = "firestarter.__version__" }
@@ -1 +0,0 @@
1
- __version__ = "2.0.2"
firestarter-2.0.2/test.py DELETED
@@ -1,112 +0,0 @@
1
- # def display_jumper_configuration(config):
2
- # # Define the pin labels and their positions
3
- # jumpers = {
4
- # "j1": {"5v": "(● ●)● ", "a17": " ●(● ●)"},
5
- # "j2": {"5v": "(● ●) ●", "a13": " ● ● ●"},
6
- # "j3": {"32pin": "(●●) ●", "28pin": "● (●●)"},
7
- # }
8
-
9
- # # Parse the input configuration
10
- # config_dict = {}
11
- # for conf in config.split(","):
12
- # jumper, setting = conf.split("=")
13
- # config_dict[jumper.strip()] = setting.strip()
14
-
15
- # # Display the jumper settings
16
- # for jumper, setting in config_dict.items():
17
- # if jumper in jumpers and setting in jumpers[jumper]:
18
- # print(f"{jumper}: {jumpers[jumper][setting]}")
19
- # else:
20
- # print(f"Invalid configuration: {jumper}={setting}")
21
-
22
-
23
- # # Example usage:
24
- # configuration = "j1=5v,j2=a13,j3=32pin"
25
- # display_jumper_configuration(configuration)
26
-
27
- # // CONTROL REGISTER
28
- VPE_TO_VPP =0x01
29
- A9_VPP_ENABLE= 0x02
30
- VPE_ENABLE= 0x04
31
- P1_VPP_ENABLE =0x08
32
- RW= 0x40
33
- REGULATOR =0x80
34
- A16 =VPE_TO_VPP
35
- A17= 0x10
36
- A18= 0x20
37
-
38
- CONTROL_REGISTER = 0xFF
39
-
40
- bus_config = {'bus': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 20], 'rw-pin': 22, 'vpp-pin': 21}
41
- # address = 0x123456
42
-
43
-
44
- def get_top_address(address):
45
- top_address = (address >> 16) & (A16 | A17 | A18 | RW)
46
- top_address |= CONTROL_REGISTER & (A9_VPP_ENABLE | VPE_ENABLE | P1_VPP_ENABLE | REGULATOR);
47
- return top_address
48
-
49
- def remap_address_bus(bus_config, address, rw) :
50
- reorg_address = 0
51
- for i in range(0, len(bus_config['bus'])):
52
- if bus_config['bus'][i] != 0xFF:
53
- # reorg_address |= (address & (1 << i)) >> i << bus_config['bus'][i]
54
- if address & (1 << i):
55
- reorg_address |= (1 << bus_config['bus'][i])
56
- # for (int i = 0; i < 19 && config->address_lines[i] != 0xFF; i++) {
57
- # if (address & (1 << i)) {
58
- # reorg_address |= (1 << config->address_lines[i]);
59
- # }
60
- # }
61
- if bus_config['rw-pin'] != 0xFF:
62
- reorg_address |= rw << bus_config['rw-pin']
63
- # if (config->rw_line != 0xFF) {
64
- # reorg_address |= rw << config->rw_line;
65
- # }
66
- return reorg_address
67
-
68
- def translate(reg, bit):
69
- return 1 if (reg & bit) == bit else 0
70
-
71
- def print_address_bus(bus_config, address, rw):
72
- global CONTROL_REGISTER
73
- print(f'Org address: {address:06x} {address:024b}' )
74
- remapped_address= remap_address_bus(bus_config, address, rw)
75
- print(f'Remapped address: {remapped_address:06x} {remapped_address:024b}' )
76
- CONTROL_REGISTER = 0x00
77
- top_address_00 = get_top_address(remapped_address)
78
- print(f'Controle reg (0x00): {top_address_00:02x} {top_address_00:08b}')
79
- CONTROL_REGISTER = 0xFF
80
- top_address_ff = get_top_address(remapped_address)
81
- print(f'Controle reg (0xFF): {top_address_ff:02x} {top_address_ff:08b}')
82
-
83
- print()
84
- top_remaped = remapped_address >> 16 & 0xFF
85
- print(f' 0 | F | R')
86
- print(f' -----------')
87
- print(f'A16: {translate(top_address_00, A16)} | {translate(top_address_ff , A16)} | {translate(top_remaped, A16)}')
88
- print(f'A9_VPP_ENABLE: {translate(top_address_00, A9_VPP_ENABLE)} | {translate(top_address_ff ,A9_VPP_ENABLE)} | {translate(top_remaped,A9_VPP_ENABLE)}')
89
- print(f'VPE_ENABLE: {translate(top_address_00, VPE_ENABLE)} | {translate(top_address_ff , VPE_ENABLE)} | {translate(top_remaped,VPE_ENABLE)}')
90
- print(f'P1_VPP_ENABLE: {translate(top_address_00, P1_VPP_ENABLE)} | {translate(top_address_ff ,P1_VPP_ENABLE)} | {translate(top_remaped, P1_VPP_ENABLE)}')
91
- print(f'A17: {translate(top_address_00, A17)} | {translate(top_address_ff ,A17)} | {translate(top_remaped,A17)}')
92
- print(f'A18: {translate(top_address_00, A18)} | {translate(top_address_ff ,A18)} | {translate(top_remaped,A18)}')
93
- print(f'RW: {translate(top_address_00, RW)} | {translate(top_address_ff , RW)} | {translate(top_remaped,RW)}')
94
- print(f'REGULATOR: {translate(top_address_00, REGULATOR)} | {translate(top_address_ff , REGULATOR)} | {translate(top_remaped, REGULATOR)}')
95
-
96
- print("Bus config: ", bus_config)
97
- print("------------------------------------")
98
- print_address_bus(bus_config, 0x007FFF,0)
99
- print("------------------------------------")
100
- print_address_bus(bus_config, 0x007FFF,1)
101
- print("------------------------------------")
102
- print_address_bus(bus_config, 0x00800F,0)
103
- print("------------------------------------")
104
- print_address_bus(bus_config, 0x00800F,1)
105
- print("------------------------------------")
106
- print_address_bus(bus_config, 0x03100F,1)
107
- # print("------------------------------------")
108
- # print_address_bus(bus_config, 0x0FFFFF,0)
109
- # print("------------------------------------")
110
- # print_address_bus(bus_config, 0x0FFFFF,1)
111
-
112
-
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes