retrotool-asar 1.91__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 (216) hide show
  1. retrotool_asar-1.91/MANIFEST.in +9 -0
  2. retrotool_asar-1.91/PKG-INFO +41 -0
  3. retrotool_asar-1.91/README.md +21 -0
  4. retrotool_asar-1.91/pyproject.toml +45 -0
  5. retrotool_asar-1.91/retrotool_asar/__init__.py +36 -0
  6. retrotool_asar-1.91/retrotool_asar/licenses/asar-LICENSE +24 -0
  7. retrotool_asar-1.91/retrotool_asar/licenses/asar-license-gpl.txt +674 -0
  8. retrotool_asar-1.91/retrotool_asar/licenses/asar-license-lgpl.txt +165 -0
  9. retrotool_asar-1.91/retrotool_asar/licenses/asar-license-wtfpl.txt +13 -0
  10. retrotool_asar-1.91/retrotool_asar.egg-info/PKG-INFO +41 -0
  11. retrotool_asar-1.91/retrotool_asar.egg-info/SOURCES.txt +214 -0
  12. retrotool_asar-1.91/retrotool_asar.egg-info/dependency_links.txt +1 -0
  13. retrotool_asar-1.91/retrotool_asar.egg-info/top_level.txt +1 -0
  14. retrotool_asar-1.91/setup.cfg +4 -0
  15. retrotool_asar-1.91/setup.py +107 -0
  16. retrotool_asar-1.91/vendor/.gitkeep +0 -0
  17. retrotool_asar-1.91/vendor/asar/.git +1 -0
  18. retrotool_asar-1.91/vendor/asar/.github/workflows/cmake.yml +36 -0
  19. retrotool_asar-1.91/vendor/asar/.github/workflows/docs-deploy.yml +30 -0
  20. retrotool_asar-1.91/vendor/asar/.gitignore +57 -0
  21. retrotool_asar-1.91/vendor/asar/LICENSE +24 -0
  22. retrotool_asar-1.91/vendor/asar/README.md +92 -0
  23. retrotool_asar-1.91/vendor/asar/README.txt +42 -0
  24. retrotool_asar-1.91/vendor/asar/appveyor.yml +64 -0
  25. retrotool_asar-1.91/vendor/asar/cmake/_mingw-common.cmake +28 -0
  26. retrotool_asar-1.91/vendor/asar/cmake/mingw-x64.cmake +5 -0
  27. retrotool_asar-1.91/vendor/asar/cmake/mingw-x86.cmake +5 -0
  28. retrotool_asar-1.91/vendor/asar/docs/changelog/index.html +1894 -0
  29. retrotool_asar-1.91/vendor/asar/docs/index.html +18 -0
  30. retrotool_asar-1.91/vendor/asar/docs/manual/errors-list.html +234 -0
  31. retrotool_asar-1.91/vendor/asar/docs/manual/index.html +3407 -0
  32. retrotool_asar-1.91/vendor/asar/docs/manual/warnings-list.html +56 -0
  33. retrotool_asar-1.91/vendor/asar/docs/shared/common.js +26 -0
  34. retrotool_asar-1.91/vendor/asar/docs/shared/highlight_js/README.txt +5 -0
  35. retrotool_asar-1.91/vendor/asar/docs/shared/highlight_js/highlight.min.js +421 -0
  36. retrotool_asar-1.91/vendor/asar/docs/shared/highlight_js_asar/highlight_js_asar.js +151 -0
  37. retrotool_asar-1.91/vendor/asar/docs/shared/highlight_js_asar/styles/default.css +134 -0
  38. retrotool_asar-1.91/vendor/asar/dummy_rom.asm +16 -0
  39. retrotool_asar-1.91/vendor/asar/dummy_rom.sfc +0 -0
  40. retrotool_asar-1.91/vendor/asar/ext/notepad-plus-plus/syntax-highlighting.xml +64 -0
  41. retrotool_asar-1.91/vendor/asar/ext/sublime-text/65c816.sublime-syntax +120 -0
  42. retrotool_asar-1.91/vendor/asar/generate_release_zip.py +39 -0
  43. retrotool_asar-1.91/vendor/asar/license-gpl.txt +674 -0
  44. retrotool_asar-1.91/vendor/asar/license-lgpl.txt +165 -0
  45. retrotool_asar-1.91/vendor/asar/license-wtfpl.txt +13 -0
  46. retrotool_asar-1.91/vendor/asar/run_tests.bat +7 -0
  47. retrotool_asar-1.91/vendor/asar/run_tests.sh +4 -0
  48. retrotool_asar-1.91/vendor/asar/src/CMakeLists.txt +8 -0
  49. retrotool_asar-1.91/vendor/asar/src/asar/CMakeLists.txt +360 -0
  50. retrotool_asar-1.91/vendor/asar/src/asar/addr2line.cpp +60 -0
  51. retrotool_asar-1.91/vendor/asar/src/asar/addr2line.h +52 -0
  52. retrotool_asar-1.91/vendor/asar/src/asar/arch-65816.cpp +236 -0
  53. retrotool_asar-1.91/vendor/asar/src/asar/arch-shared.h +12 -0
  54. retrotool_asar-1.91/vendor/asar/src/asar/arch-spc700.cpp +497 -0
  55. retrotool_asar-1.91/vendor/asar/src/asar/arch-superfx.cpp +338 -0
  56. retrotool_asar-1.91/vendor/asar/src/asar/asar.h +136 -0
  57. retrotool_asar-1.91/vendor/asar/src/asar/asar_math.cpp +1061 -0
  58. retrotool_asar-1.91/vendor/asar/src/asar/asar_math.h +22 -0
  59. retrotool_asar-1.91/vendor/asar/src/asar/assembleblock.cpp +2796 -0
  60. retrotool_asar-1.91/vendor/asar/src/asar/assembleblock.h +121 -0
  61. retrotool_asar-1.91/vendor/asar/src/asar/assocarr.h +326 -0
  62. retrotool_asar-1.91/vendor/asar/src/asar/autoarray.h +201 -0
  63. retrotool_asar-1.91/vendor/asar/src/asar/crc32.cpp +124 -0
  64. retrotool_asar-1.91/vendor/asar/src/asar/crc32.h +9 -0
  65. retrotool_asar-1.91/vendor/asar/src/asar/dll_helper.h +48 -0
  66. retrotool_asar-1.91/vendor/asar/src/asar/errors.cpp +375 -0
  67. retrotool_asar-1.91/vendor/asar/src/asar/errors.h +291 -0
  68. retrotool_asar-1.91/vendor/asar/src/asar/interface-cli.cpp +498 -0
  69. retrotool_asar-1.91/vendor/asar/src/asar/interface-lib.cpp +565 -0
  70. retrotool_asar-1.91/vendor/asar/src/asar/interface-shared.h +10 -0
  71. retrotool_asar-1.91/vendor/asar/src/asar/lib/JoinPaths.cmake +26 -0
  72. retrotool_asar-1.91/vendor/asar/src/asar/lib/libasar.pc.in +12 -0
  73. retrotool_asar-1.91/vendor/asar/src/asar/libcon.cpp +178 -0
  74. retrotool_asar-1.91/vendor/asar/src/asar/libcon.h +14 -0
  75. retrotool_asar-1.91/vendor/asar/src/asar/libmisc.h +37 -0
  76. retrotool_asar-1.91/vendor/asar/src/asar/libsmw.cpp +525 -0
  77. retrotool_asar-1.91/vendor/asar/src/asar/libsmw.h +209 -0
  78. retrotool_asar-1.91/vendor/asar/src/asar/libstr.cpp +609 -0
  79. retrotool_asar-1.91/vendor/asar/src/asar/libstr.h +663 -0
  80. retrotool_asar-1.91/vendor/asar/src/asar/macro.cpp +294 -0
  81. retrotool_asar-1.91/vendor/asar/src/asar/macro.h +29 -0
  82. retrotool_asar-1.91/vendor/asar/src/asar/main.cpp +1018 -0
  83. retrotool_asar-1.91/vendor/asar/src/asar/platform/file-helpers.cpp +237 -0
  84. retrotool_asar-1.91/vendor/asar/src/asar/platform/file-helpers.h +13 -0
  85. retrotool_asar-1.91/vendor/asar/src/asar/platform/generic/file-helpers-generic.cpp +25 -0
  86. retrotool_asar-1.91/vendor/asar/src/asar/platform/linux/file-helpers-linux.cpp +30 -0
  87. retrotool_asar-1.91/vendor/asar/src/asar/platform/windows/file-helpers-win32.cpp +42 -0
  88. retrotool_asar-1.91/vendor/asar/src/asar/res/windows/asar.ico +0 -0
  89. retrotool_asar-1.91/vendor/asar/src/asar/res/windows/asar.rc +26 -0
  90. retrotool_asar-1.91/vendor/asar/src/asar/res/windows/asar_lib.rc +24 -0
  91. retrotool_asar-1.91/vendor/asar/src/asar/std-includes.h +33 -0
  92. retrotool_asar-1.91/vendor/asar/src/asar/virtualfile.cpp +331 -0
  93. retrotool_asar-1.91/vendor/asar/src/asar/virtualfile.h +70 -0
  94. retrotool_asar-1.91/vendor/asar/src/asar/warnings.cpp +271 -0
  95. retrotool_asar-1.91/vendor/asar/src/asar/warnings.h +82 -0
  96. retrotool_asar-1.91/vendor/asar/src/asar-dll-bindings/c/asar.h +187 -0
  97. retrotool_asar-1.91/vendor/asar/src/asar-dll-bindings/c/asardll.c +177 -0
  98. retrotool_asar-1.91/vendor/asar/src/asar-dll-bindings/c/asardll.h +217 -0
  99. retrotool_asar-1.91/vendor/asar/src/asar-dll-bindings/c_sharp/asar.cs +691 -0
  100. retrotool_asar-1.91/vendor/asar/src/asar-dll-bindings/python/asar.py +419 -0
  101. retrotool_asar-1.91/vendor/asar/src/asar-tests/CMakeLists.txt +113 -0
  102. retrotool_asar-1.91/vendor/asar/src/asar-tests/test.cpp +1105 -0
  103. retrotool_asar-1.91/vendor/asar/src/generate_manual_tables.py +108 -0
  104. retrotool_asar-1.91/vendor/asar/tests/0x.asm +10 -0
  105. retrotool_asar-1.91/vendor/asar/tests/120freespaces.asm +52 -0
  106. retrotool_asar-1.91/vendor/asar/tests/32bitvalues.asm +13 -0
  107. retrotool_asar-1.91/vendor/asar/tests/advanced-prints.asm +32 -0
  108. retrotool_asar-1.91/vendor/asar/tests/arch-65816.asm +336 -0
  109. retrotool_asar-1.91/vendor/asar/tests/arch-spc700.asm +317 -0
  110. retrotool_asar-1.91/vendor/asar/tests/arch-superfx.asm +643 -0
  111. retrotool_asar-1.91/vendor/asar/tests/archswitch.asm +11 -0
  112. retrotool_asar-1.91/vendor/asar/tests/assert-fail.asm +5 -0
  113. retrotool_asar-1.91/vendor/asar/tests/assert-pass.asm +3 -0
  114. retrotool_asar-1.91/vendor/asar/tests/autoclean.asm +12 -0
  115. retrotool_asar-1.91/vendor/asar/tests/autoclean_2freecode_to_1freecode.asm +41 -0
  116. retrotool_asar-1.91/vendor/asar/tests/autoclean_twice.asm +30 -0
  117. retrotool_asar-1.91/vendor/asar/tests/badrep.asm +3 -0
  118. retrotool_asar-1.91/vendor/asar/tests/badsublabel.asm +2 -0
  119. retrotool_asar-1.91/vendor/asar/tests/bank_shorthand.asm +12 -0
  120. retrotool_asar-1.91/vendor/asar/tests/bankcross.asm +153 -0
  121. retrotool_asar-1.91/vendor/asar/tests/bigincbin.asm +26 -0
  122. retrotool_asar-1.91/vendor/asar/tests/builtindefinesfail.asm +2 -0
  123. retrotool_asar-1.91/vendor/asar/tests/builtindefinespass.asm +27 -0
  124. retrotool_asar-1.91/vendor/asar/tests/commabrokenquotes.asm +2 -0
  125. retrotool_asar-1.91/vendor/asar/tests/data/64kb.bin +0 -0
  126. retrotool_asar-1.91/vendor/asar/tests/data/filename with spaces.bin +2 -0
  127. retrotool_asar-1.91/vendor/asar/tests/data/pushtable1.asm +4 -0
  128. retrotool_asar-1.91/vendor/asar/tests/data/pushtable2.asm +4 -0
  129. retrotool_asar-1.91/vendor/asar/tests/data/table.asm +4 -0
  130. retrotool_asar-1.91/vendor/asar/tests/datasize.asm +14 -0
  131. retrotool_asar-1.91/vendor/asar/tests/datasize_freespace.asm +17 -0
  132. retrotool_asar-1.91/vendor/asar/tests/db-spc.asm +9 -0
  133. retrotool_asar-1.91/vendor/asar/tests/dd.asm +8 -0
  134. retrotool_asar-1.91/vendor/asar/tests/define-quotes.asm +3 -0
  135. retrotool_asar-1.91/vendor/asar/tests/divbyforwardtable.asm +9 -0
  136. retrotool_asar-1.91/vendor/asar/tests/elseif.asm +180 -0
  137. retrotool_asar-1.91/vendor/asar/tests/emptysublabel.asm +6 -0
  138. retrotool_asar-1.91/vendor/asar/tests/escaping.asm +46 -0
  139. retrotool_asar-1.91/vendor/asar/tests/fastrom.asm +30 -0
  140. retrotool_asar-1.91/vendor/asar/tests/fill.asm +9 -0
  141. retrotool_asar-1.91/vendor/asar/tests/forloop.asm +60 -0
  142. retrotool_asar-1.91/vendor/asar/tests/freespacealign.asm +12 -0
  143. retrotool_asar-1.91/vendor/asar/tests/freespaceshrink.asm +10 -0
  144. retrotool_asar-1.91/vendor/asar/tests/functest1.asm +21 -0
  145. retrotool_asar-1.91/vendor/asar/tests/functest2.asm +19 -0
  146. retrotool_asar-1.91/vendor/asar/tests/functest3.asm +8 -0
  147. retrotool_asar-1.91/vendor/asar/tests/global_label_error_duplicate.asm +9 -0
  148. retrotool_asar-1.91/vendor/asar/tests/global_label_error_macrolabel.asm +10 -0
  149. retrotool_asar-1.91/vendor/asar/tests/global_label_error_sublabel.asm +7 -0
  150. retrotool_asar-1.91/vendor/asar/tests/global_label_success.asm +34 -0
  151. retrotool_asar-1.91/vendor/asar/tests/half_bank_check.asm +5 -0
  152. retrotool_asar-1.91/vendor/asar/tests/incbin.asm +8 -0
  153. retrotool_asar-1.91/vendor/asar/tests/incbin_error.asm +3 -0
  154. retrotool_asar-1.91/vendor/asar/tests/include/data.asm +4 -0
  155. retrotool_asar-1.91/vendor/asar/tests/include/deep/data.asm +4 -0
  156. retrotool_asar-1.91/vendor/asar/tests/include/deep/deeper/data.asm +8 -0
  157. retrotool_asar-1.91/vendor/asar/tests/include/deep/deeper/deepest/data.bin +1 -0
  158. retrotool_asar-1.91/vendor/asar/tests/include/dummy.asm +0 -0
  159. retrotool_asar-1.91/vendor/asar/tests/include/incsrcxkas-2.asm +2 -0
  160. retrotool_asar-1.91/vendor/asar/tests/include/loop1.asm +1 -0
  161. retrotool_asar-1.91/vendor/asar/tests/include/loop2.asm +1 -0
  162. retrotool_asar-1.91/vendor/asar/tests/include-dir.asm +2 -0
  163. retrotool_asar-1.91/vendor/asar/tests/includehierarchy.asm +12 -0
  164. retrotool_asar-1.91/vendor/asar/tests/includeonce/path1/path2/test.asm +3 -0
  165. retrotool_asar-1.91/vendor/asar/tests/includeonce/path1/test.asm +8 -0
  166. retrotool_asar-1.91/vendor/asar/tests/includeonce/path2/test.asm +4 -0
  167. retrotool_asar-1.91/vendor/asar/tests/includeonce/path3/test.asm +5 -0
  168. retrotool_asar-1.91/vendor/asar/tests/includeonce/test.asm +6 -0
  169. retrotool_asar-1.91/vendor/asar/tests/includeonce.asm +9 -0
  170. retrotool_asar-1.91/vendor/asar/tests/incsrcloop.asm +2 -0
  171. retrotool_asar-1.91/vendor/asar/tests/incsrcxkas-1.asm +4 -0
  172. retrotool_asar-1.91/vendor/asar/tests/labela.asm +6 -0
  173. retrotool_asar-1.91/vendor/asar/tests/labels_static_fail.asm +59 -0
  174. retrotool_asar-1.91/vendor/asar/tests/labels_static_pass.asm +85 -0
  175. retrotool_asar-1.91/vendor/asar/tests/macrolabels.asm +56 -0
  176. retrotool_asar-1.91/vendor/asar/tests/macronoarg.asm +12 -0
  177. retrotool_asar-1.91/vendor/asar/tests/mappers.asm +14 -0
  178. retrotool_asar-1.91/vendor/asar/tests/misc.asm +1 -0
  179. retrotool_asar-1.91/vendor/asar/tests/multiprot.asm +36 -0
  180. retrotool_asar-1.91/vendor/asar/tests/namespaces.asm +84 -0
  181. retrotool_asar-1.91/vendor/asar/tests/nesteddefines.asm +22 -0
  182. retrotool_asar-1.91/vendor/asar/tests/nestedpushpcfreespace.asm +24 -0
  183. retrotool_asar-1.91/vendor/asar/tests/opcodesize.asm +369 -0
  184. retrotool_asar-1.91/vendor/asar/tests/optimization-warn.asm +13 -0
  185. retrotool_asar-1.91/vendor/asar/tests/optimizer.asm +137 -0
  186. retrotool_asar-1.91/vendor/asar/tests/prot.asm +22 -0
  187. retrotool_asar-1.91/vendor/asar/tests/protonbankstart.asm +21 -0
  188. retrotool_asar-1.91/vendor/asar/tests/pseudo-opcodes.asm +7 -0
  189. retrotool_asar-1.91/vendor/asar/tests/pushpullns.asm +24 -0
  190. retrotool_asar-1.91/vendor/asar/tests/read.asm +13 -0
  191. retrotool_asar-1.91/vendor/asar/tests/readoob.asm +4 -0
  192. retrotool_asar-1.91/vendor/asar/tests/realbase.asm +13 -0
  193. retrotool_asar-1.91/vendor/asar/tests/sa1altmapper.asm +53 -0
  194. retrotool_asar-1.91/vendor/asar/tests/sa1bankswitch.asm +54 -0
  195. retrotool_asar-1.91/vendor/asar/tests/sa1freespace.asm +8 -0
  196. retrotool_asar-1.91/vendor/asar/tests/setlabel.asm +4 -0
  197. retrotool_asar-1.91/vendor/asar/tests/sfxfreespace.asm +14 -0
  198. retrotool_asar-1.91/vendor/asar/tests/spc-inline.asm +9 -0
  199. retrotool_asar-1.91/vendor/asar/tests/spcblock.asm +25 -0
  200. retrotool_asar-1.91/vendor/asar/tests/spcsynonyms.asm +14 -0
  201. retrotool_asar-1.91/vendor/asar/tests/std.asm +61 -0
  202. retrotool_asar-1.91/vendor/asar/tests/stdinclude/std/test.asm +1 -0
  203. retrotool_asar-1.91/vendor/asar/tests/structs.asm +84 -0
  204. retrotool_asar-1.91/vendor/asar/tests/tablefiles.asm +36 -0
  205. retrotool_asar-1.91/vendor/asar/tests/trailingcomma.asm +6 -0
  206. retrotool_asar-1.91/vendor/asar/tests/v140features.asm +385 -0
  207. retrotool_asar-1.91/vendor/asar/tests/v150features.asm +105 -0
  208. retrotool_asar-1.91/vendor/asar/tests/v160features.asm +86 -0
  209. retrotool_asar-1.91/vendor/asar/tests/variadic_errors.asm +73 -0
  210. retrotool_asar-1.91/vendor/asar/tests/variadic_syntax.asm +48 -0
  211. retrotool_asar-1.91/vendor/asar/tests/warn-immediate.asm +9 -0
  212. retrotool_asar-1.91/vendor/asar/tests/warnings-1.asm +11 -0
  213. retrotool_asar-1.91/vendor/asar/tests/warnings-2.asm +7 -0
  214. retrotool_asar-1.91/vendor/asar/tests/warnings-3.asm +8 -0
  215. retrotool_asar-1.91/vendor/asar/tests/warnings-4.asm +12 -0
  216. retrotool_asar-1.91/vendor/asar/tests/xkasemu.asm +37 -0
@@ -0,0 +1,9 @@
1
+ recursive-include vendor *
2
+ prune vendor/**/.git
3
+ prune vendor/.git
4
+ global-exclude .github
5
+ global-exclude *.pyc
6
+ global-exclude __pycache__
7
+ include README.md
8
+ include pyproject.toml
9
+ include setup.py
@@ -0,0 +1,41 @@
1
+ Metadata-Version: 2.4
2
+ Name: retrotool-asar
3
+ Version: 1.91
4
+ Summary: Bundled asar (RPGHacker) 65816 patcher binary for retrotool
5
+ Author-email: Daniel Burgess <daniel@herotechsys.com>
6
+ License: MIT AND LGPL-3.0-or-later
7
+ Keywords: asar,65816,snes,sfc,patcher,assembler
8
+ Classifier: Development Status :: 3 - Alpha
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
11
+ Classifier: Operating System :: POSIX :: Linux
12
+ Classifier: Operating System :: MacOS
13
+ Classifier: Operating System :: Microsoft :: Windows
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Software Development :: Assemblers
18
+ Requires-Python: >=3.12
19
+ Description-Content-Type: text/markdown
20
+
21
+ # retrotool-asar
22
+
23
+ Bundled [asar](https://github.com/RPGHacker/asar) (RPGHacker) standalone
24
+ 65816 patcher CLI for retrotool. Installing this wheel makes `asar`
25
+ available to `retrotool.asm.patcher` without a system asar on PATH.
26
+
27
+ ## Usage
28
+
29
+ ```python
30
+ from retrotool_asar import asar_binary, run_asar
31
+
32
+ run_asar(["patch.asm", "rom.sfc"])
33
+ ```
34
+
35
+ `retrotool.asm.patcher.apply_patch` prefers the bundled binary when this
36
+ package is installed, else falls back to `asar` on PATH.
37
+
38
+ ## License
39
+
40
+ asar is MIT (RPGHacker, Alcaro, et al.). This wheel redistributes the
41
+ compiled binary under the same license. See `vendor/asar/LICENSE.txt`.
@@ -0,0 +1,21 @@
1
+ # retrotool-asar
2
+
3
+ Bundled [asar](https://github.com/RPGHacker/asar) (RPGHacker) standalone
4
+ 65816 patcher CLI for retrotool. Installing this wheel makes `asar`
5
+ available to `retrotool.asm.patcher` without a system asar on PATH.
6
+
7
+ ## Usage
8
+
9
+ ```python
10
+ from retrotool_asar import asar_binary, run_asar
11
+
12
+ run_asar(["patch.asm", "rom.sfc"])
13
+ ```
14
+
15
+ `retrotool.asm.patcher.apply_patch` prefers the bundled binary when this
16
+ package is installed, else falls back to `asar` on PATH.
17
+
18
+ ## License
19
+
20
+ asar is MIT (RPGHacker, Alcaro, et al.). This wheel redistributes the
21
+ compiled binary under the same license. See `vendor/asar/LICENSE.txt`.
@@ -0,0 +1,45 @@
1
+ [project]
2
+ name = "retrotool-asar"
3
+ version = "1.91"
4
+ description = "Bundled asar (RPGHacker) 65816 patcher binary for retrotool"
5
+ readme = "README.md"
6
+ authors = [{name = "Daniel Burgess", email = "daniel@herotechsys.com"}]
7
+ license = {text = "MIT AND LGPL-3.0-or-later"}
8
+ requires-python = ">=3.12"
9
+ keywords = ["asar", "65816", "snes", "sfc", "patcher", "assembler"]
10
+ classifiers = [
11
+ "Development Status :: 3 - Alpha",
12
+ "License :: OSI Approved :: MIT License",
13
+ "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
14
+ "Operating System :: POSIX :: Linux",
15
+ "Operating System :: MacOS",
16
+ "Operating System :: Microsoft :: Windows",
17
+ "Programming Language :: Python :: 3",
18
+ "Programming Language :: Python :: 3.12",
19
+ "Programming Language :: Python :: 3.13",
20
+ "Topic :: Software Development :: Assemblers",
21
+ ]
22
+
23
+ [build-system]
24
+ requires = ["setuptools>=61.0", "wheel"]
25
+ build-backend = "setuptools.build_meta"
26
+
27
+ [tool.setuptools]
28
+ packages = ["retrotool_asar"]
29
+
30
+ [tool.setuptools.package-data]
31
+ retrotool_asar = ["bin/*", "licenses/*"]
32
+
33
+ [tool.cibuildwheel]
34
+ skip = ["pp*", "*-musllinux_*", "cp36-*", "cp37-*", "cp38-*", "cp39-*", "cp310-*", "cp311-*"]
35
+ build-verbosity = 1
36
+
37
+ [tool.cibuildwheel.linux]
38
+ before-all = "yum install -y gcc-c++ make cmake || { apt-get update && apt-get install -y g++ make cmake; }"
39
+ archs = ["x86_64", "aarch64"]
40
+
41
+ [tool.cibuildwheel.macos]
42
+ archs = ["x86_64", "arm64"]
43
+
44
+ [tool.cibuildwheel.windows]
45
+ archs = ["AMD64"]
@@ -0,0 +1,36 @@
1
+ """Bundled asar (RPGHacker) standalone CLI accessor.
2
+
3
+ `asar_binary()` returns the path to the vendored executable, or raises
4
+ `ToolNotBundledError` if this wheel was built without it. `run_asar` is
5
+ a `subprocess.run` convenience wrapper.
6
+ """
7
+ from __future__ import annotations
8
+
9
+ import subprocess
10
+ import sys
11
+ from importlib.resources import files
12
+ from pathlib import Path
13
+
14
+ __version__ = "1.91"
15
+
16
+ _EXE = ".exe" if sys.platform == "win32" else ""
17
+
18
+
19
+ class ToolNotBundledError(FileNotFoundError):
20
+ """Raised when the bundled asar binary is not present in this wheel."""
21
+
22
+
23
+ def asar_binary() -> Path:
24
+ p = Path(str(files(__package__) / "bin" / f"asar{_EXE}"))
25
+ if not p.exists():
26
+ raise ToolNotBundledError(
27
+ f"Bundled `asar` missing at {p}. This retrotool-asar wheel was "
28
+ f"built without the binary. Reinstall, or build from sdist with "
29
+ f"vendor/asar populated."
30
+ )
31
+ return p
32
+
33
+
34
+ def run_asar(args, **kw) -> subprocess.CompletedProcess:
35
+ kw.setdefault("check", True)
36
+ return subprocess.run([str(asar_binary()), *args], **kw)
@@ -0,0 +1,24 @@
1
+ Asar is licensed under GNU Lesser General Public License, version 3 or later. The full legal text
2
+ can be found in license-lgpl.txt, but it is also allowed to obey the following rules instead if
3
+ you prefer that (legalese is complicated):
4
+
5
+ If you don't want to redistribute it or distribute modifications (aka you only want it for personal
6
+ use), you may do whatever you want with it. The author of Asar claims no copyright over input,
7
+ binary output or textual output (including error messages) generated by Asar.
8
+
9
+ If you do want to redistribute it, you must obey the LGPL. This means the following:
10
+ - You must credit the author. Don't claim it as your own. You may modify it and take credit for your
11
+ modifications, but the author (Alcaro) must be credited for the original software.
12
+ - You must make it possible to replace your copy of Asar with another version, if anyone wants that.
13
+ If you're using one of the dynamic libraries, you must either keep it as a separate file and allow
14
+ anyone who wants to replace it, or you must offer all source codes and related files that are
15
+ required to rebuild your tool to anyone who asks. If Asar is linked statically into the same
16
+ program, only the latter option is possible.
17
+ - If you modify this software, it must clearly be labeled as a modification, and you must provide
18
+ full source code to anyone who asks.
19
+
20
+ However, as a special exception, the DLL interface files (dll/asardll.h and dll/asardll.cpp)
21
+ are licensed under the WTFPL (version 2 or later), which much means you may use them for
22
+ anything you want. You don't need to make them upgradable, you don't need to credit the
23
+ author, and you don't need to release any source codes. Note that this does not apply to the DLLs
24
+ themselves, or anything compiled into a library.