Test ran at 2025-10-18 00:40:15.558065+00:00 SOLUTION: hp41cx_tools=1.8.2: Cross-platform tools to supercharge your HP-41CX emulator experience Origin: source archive hp41cx_tools-1.8.2.tgz at https://sourceforge.net/projects/calculator-scripts/files/Alire/hp41cx_tools-1.8.2.tgz with hashes sha256:531f47c2fc065cdf09cdf051a4e37181f906323d6be5964123a77a25c60f2d13, sha512:0f05fbae5d0297b910a3a1790c91c83dccdd8fa34a68c4cc9adab267f2bbc2839f9e8726419ddafca59c4a246ed1598bf761e431f77f7c0c74092f352dac8c69 Properties: Author: Martin Krischik Build Switches: Description: Cross-platform tools to supercharge your HP-41CX emulator experience Executable: hp41cx_tools-main Executable: hp41cx_tools-dm41_to_px41 Executable: hp41cx_tools-dm41_to_unicode Executable: hp41cx_tools-px41_to_dm41 Executable: hp41cx_tools-px41_to_unicode Executable: hp41cx_tools-unicode_to_dm41 Executable: hp41cx_tools-unicode_to_px41 License: GPL-3.0-or-later Long_Description: ## HP-41CX Emulator Tools Step into the golden era of retro computing with **hp41cx_tools**, a versatile suite that turbocharges your HP-41CX emulator adventures! Unlike many tools shackled to Windows, this toolkit runs flawlessly on **macOS**, **Linux**, and **Windows**, making it the ultimate companion for enthusiasts using the iconic [PX-41CX](https://paxer.net/PX-41CX/) from Paxer or the sleek [DM41X](https://www.swissmicros.com/product/dm41x) from SwissMicros. Channel your inner 1980s programming wizard and master memory dumps, FOCAL source code, *and now encoding* with ease - compiling any FOCAL straight into upload-ready dump files for the PX-41CY emulator. Built with the precision of **Ada 2022** for unshakeable reliability, these tools decode, convert, and encode data with the finesse of the HP-41CX's legendary keystrokes. Paired with intuitive **ZShell scripts** for macOS and Linux, the suite streamlines complex workflows, whether you're on a modern MacBook, a Linux workstation, or a Windows PC. This cross-platform prowess ensures every retro computing fan can join the fun, no matter their setup - grateful shoutout to Pierre Houbert's pioneering [PX41CX_Interface.xls](https://paxer.net/PX-41CX_Interface.zip) and its VisualBasic wizardry, which lit the fuse for this focused PX-41CX/DM41X journey. ### Key Features - **Memory Dump Decoder**: Transform raw HP-41CX emulator memory dumps into readable FOCAL source code with pinpoint accuracy. - **Source Code Converter**: Seamlessly convert between PX-41CX and DM41X FOCAL code styles, bridging emulator ecosystems. - **FOCAL Encoder**: Compile modern UTF-8 encoded FOCAL programs into precise dump files, ready for PX-41CY emulator upload - vintage vibes meet UTF-8 pipelines. - **Unicode Support**: Convert Unicode-encoded FOCAL programs to PX-41CX or DM41X formats, blending vintage charm with modern workflows. - **Cross-Platform Power**: Runs natively on macOS, Linux, and Windows - like a portable Ada generic, no OS exceptions. - **Open Source**: Hosted on [SourceForge](https://sourceforge.net/p/calculator-scripts/code/ci/master/tree/Tools/hp41cx_tools/src/), ready for you to hack, extend, and share with the retro computing community. - **Comprehensive Docs**: Explore detailed guides via [GNATdoc](https://calculator-scripts.sourceforge.io/gnatdoc/hp41cx-tools). ### Why You'll Love It Relive the thrill of programming the HP-41CX, the calculator that defined a generation of scientific and hobbyist triumphs. Whether you're decoding vintage memory dumps, converting code styles, or encoding fresh FOCAL scripts, **hp41cx_tools** brings the past to life with unmatched versatility. Join the retro computing revolution and make your emulator sing - on any desktop OS! Maintainer: Martin Krischik Maintainers_Logins: krischik Name: hp41cx_tools Tag: calculator Tag: tools Tag: retrocomputing Tag: ada-2022 Tag: hp-41cx Tag: dm41x Tag: px41cx Tag: cross-platform Version: 1.8.2 Website: https://calculator-scripts.sourceforge.io/hp41cx-tools/ Dependencies (direct): adacl^7.0.1 adacl_regexp^7.0.0 adacl_sar^7.0.0 Dependencies (solution): adacl=7.0.1 adacl_regexp=7.0.1 adacl_sar=7.0.1 Dependencies (graph): adacl_regexp=7.0.1 --> adacl=7.0.1 (^7.0.0) adacl_sar=7.0.1 --> adacl=7.0.1 (^7.0.0) hp41cx_tools=1.8.2 --> adacl=7.0.1 (^7.0.1) hp41cx_tools=1.8.2 --> adacl_regexp=7.0.1 (^7.0.0) hp41cx_tools=1.8.2 --> adacl_sar=7.0.1 (^7.0.0) LOG: [alr test] Testing hp41cx_tools=1.8.2 [alr test] Spawning retrieval for remote crate: alr -d -n get hp41cx_tools=1.8.2 Note: Deploying hp41cx_tools=1.8.2... ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% ############################ 39.7% ######################################################################## 100.0% Note: Deploying adacl=7.0.1... ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% #=#=# ##=#=# ######################## 34.6% ######################################################################## 100.0% Note: Deploying adacl_regexp=7.0.1... ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% #=#=# ##### 7.9% ######################################## 55.7% ######################################################################## 100.0% Note: Deploying adacl_sar=7.0.1... ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% ######################################################################## 100.0% #=#=# ################################## 47.9% ######################################################################## 100.0% hp41cx_tools=1.8.2 successfully retrieved. Dependencies were solved as follows: + adacl 7.0.1 (new) + adacl_regexp 7.0.1 (new) + adacl_sar 7.0.1 (new) [alr test] Spawning default test for remote crate: alr -d -n build --release -- -cargs:Ada -gnatwn Note: Building hp41cx_tools=1.8.2/hp41cx_tools.gpr... Setup [mkdir] object directory for project AdaCL [mkdir] library directory for project AdaCL [mkdir] object directory for project AdaCL_RegExp [mkdir] library directory for project AdaCL_RegExp [mkdir] object directory for project AdaCL_SAR [mkdir] library directory for project AdaCL_SAR [mkdir] object directory for project HP41CX_Tools [mkdir] exec directory for project HP41CX_Tools Compile [Ada] hp41cx_tools-dm41_to_px41.adb [Ada] hp41cx_tools-dm41_to_unicode.adb [Ada] hp41cx_tools-main.adb [Ada] hp41cx_tools-px41_to_dm41.adb [Ada] hp41cx_tools-px41_to_unicode.adb [Ada] hp41cx_tools-unicode_to_dm41.adb [Ada] hp41cx_tools-unicode_to_px41.adb [Ada] adacl_sar_config.ads [Ada] adacl-wide_wide_sar.ads [Ada] adacl-wide_wide_sar-line.ads [Ada] adacl-wide_wide_sar-line-write_file.adb [Ada] adacl-wide_wide_sar-line-read_file.adb [Ada] adacl-wide_wide_sar-line-list.ads [Ada] adacl-wide_wide_sar-filters.adb [Ada] adacl-wide_wide_sar-filters-search.adb [Ada] adacl-wide_wide_sar-filters-search-includes.adb [Ada] adacl-wide_wide_sar-filters-search-excludes.adb [Ada] adacl-wide_wide_sar-filter.adb [Ada] adacl-wide_wide_sar-filter-trim.adb [Ada] adacl-wide_wide_sar-filter-replace.ads [Ada] adacl-wide_wide_sar-filter-replace-text.adb [Ada] adacl-wide_wide_sar-filter-replace-indent.adb [Ada] adacl-wide_wide_sar-filter-remove.ads [Ada] adacl-wide_wide_sar-filter-remove-tab.adb [Ada] adacl-wide_wide_sar-filter-remove-line.adb [Ada] adacl-wide_wide_sar-filter-remove-comment.adb [Ada] adacl-wide_wide_sar-filter-list.ads [Ada] adacl-wide_wide_sar-filter-insert.adb [Ada] adacl-wide_wide_sar-filter-insert-text.adb [Ada] adacl-wide_wide_sar-filter-insert-line.adb [Ada] adacl-wide_wide_sar-filter-filter_lines.adb [Ada] adacl-wide_wide_sar-filter-filter_line.adb [Ada] adacl-wide_wide_sar-filter-filter_before_first.adb [Ada] adacl-wide_wide_sar-filter-filter_after_last.adb [Ada] adacl-wide_sar.ads [Ada] adacl-wide_sar-line.ads [Ada] adacl-wide_sar-line-write_file.adb [Ada] adacl-wide_sar-line-read_file.adb [Ada] adacl-wide_sar-line-list.ads [Ada] adacl-wide_sar-filters.adb [Ada] adacl-wide_sar-filters-search.adb [Ada] adacl-wide_sar-filters-search-includes.adb [Ada] adacl-wide_sar-filters-search-excludes.adb [Ada] adacl-wide_sar-filter.adb [Ada] adacl-wide_sar-filter-trim.adb [Ada] adacl-wide_sar-filter-replace.ads [Ada] adacl-wide_sar-filter-replace-text.adb [Ada] adacl-wide_sar-filter-replace-indent.adb [Ada] adacl-wide_sar-filter-remove.ads [Ada] adacl-wide_sar-filter-remove-tab.adb [Ada] adacl-wide_sar-filter-remove-line.adb [Ada] adacl-wide_sar-filter-remove-comment.adb [Ada] adacl-wide_sar-filter-list.ads [Ada] adacl-wide_sar-filter-insert.adb [Ada] adacl-wide_sar-filter-insert-text.adb [Ada] adacl-wide_sar-filter-insert-line.adb [Ada] adacl-wide_sar-filter-filter_lines.adb [Ada] adacl-wide_sar-filter-filter_line.adb [Ada] adacl-wide_sar-filter-filter_before_first.adb [Ada] adacl-wide_sar-filter-filter_after_last.adb [Ada] adacl-sar.ads [Ada] adacl-sar-line.ads [Ada] adacl-sar-line-write_file.adb [Ada] adacl-sar-line-read_file.adb [Ada] adacl-sar-line-list.ads [Ada] adacl-sar-filters.adb [Ada] adacl-sar-filters-search.adb [Ada] adacl-sar-filters-search-includes.adb [Ada] adacl-sar-filters-search-excludes.adb [Ada] adacl-sar-filter.adb [Ada] adacl-sar-filter-trim.adb [Ada] adacl-sar-filter-replace.ads [Ada] adacl-sar-filter-replace-text.adb [Ada] adacl-sar-filter-replace-indent.adb [Ada] adacl-sar-filter-remove.ads [Ada] adacl-sar-filter-remove-tab.adb [Ada] adacl-sar-filter-remove-line.adb [Ada] adacl-sar-filter-remove-comment.adb [Ada] adacl-sar-filter-list.ads [Ada] adacl-sar-filter-insert.adb [Ada] adacl-sar-filter-insert-text.adb [Ada] adacl-sar-filter-insert-line.adb [Ada] adacl-sar-filter-filter_lines.adb [Ada] adacl-sar-filter-filter_line.adb [Ada] adacl-sar-filter-filter_before_first.adb [Ada] adacl-sar-filter-filter_after_last.adb [Ada] adacl_regexp_config.ads [Ada] adacl-wide_wide_strings-spitbol.adb [Ada] adacl-wide_wide_strings-spitbol-table_vstring.ads [Ada] adacl-wide_wide_strings-spitbol-table_integer.ads C:\Users\runneradmin\AppData\Local\alire\cache\builds\adacl_regexp_7.0.1_9309c3cb\48688bcc46912e03dc99dafd2fdee7f8ac133cd7f5fb705363813a88df3e4ed9\src\adacl-wide_wide_strings-spitbol-table_vstring.ads:43:01: error: instantiation error at adacl-wide_wide_strings-spitbol.adb:532 C:\Users\runneradmin\AppData\Local\alire\cache\builds\adacl_regexp_7.0.1_9309c3cb\48688bcc46912e03dc99dafd2fdee7f8ac133cd7f5fb705363813a88df3e4ed9\src\adacl-wide_wide_strings-spitbol-table_vstring.ads:43:01: error: prefix of "Wide_Wide_Width" attribute must be scalar type C:\Users\runneradmin\AppData\Local\alire\cache\builds\adacl_regexp_7.0.1_9309c3cb\48688bcc46912e03dc99dafd2fdee7f8ac133cd7f5fb705363813a88df3e4ed9\src\adacl-wide_wide_strings-spitbol-table_integer.ads:44:01: error: instantiation error at adacl-wide_wide_strings-spitbol.adb:532 C:\Users\runneradmin\AppData\Local\alire\cache\builds\adacl_regexp_7.0.1_9309c3cb\48688bcc46912e03dc99dafd2fdee7f8ac133cd7f5fb705363813a88df3e4ed9\src\adacl-wide_wide_strings-spitbol-table_integer.ads:44:01: error: prefix of "Wide_Wide_Width" attribute must be scalar type compilation of adacl-wide_wide_strings-spitbol-table_integer.ads failed compilation of adacl-wide_wide_strings-spitbol-table_vstring.ads failed gprbuild: *** compilation phase failed stderr: Command ["gprbuild", "-s", "-j0", "-p", "-P", "D:\a\alire-crates-ci\alire-crates-ci\test\356011d8-6022-4cd5-bba5-16f24e4f1aad\hp41cx_tools_1.8.2_531f47c2\hp41cx_tools.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 ERROR: Command ["gprbuild", "-s", "-j0", "-p", "-P", "D:\a\alire-crates-ci\alire-crates-ci\test\356011d8-6022-4cd5-bba5-16f24e4f1aad\hp41cx_tools_1.8.2_531f47c2\hp41cx_tools.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 stderr: ALIRE.CHECKED_ERROR stderr: Command ["gprbuild", "-s", "-j0", "-p", "-P", "D:\a\alire-crates-ci\alire-crates-ci\test\356011d8-6022-4cd5-bba5-16f24e4f1aad\hp41cx_tools_1.8.2_531f47c2\hp41cx_tools.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 stderr: raised ALIRE.CHECKED_ERROR : alire-stored-error:1 [D:\a\alire-crates-ci\alire-crates-ci\alire_install\bin\alr.exe] 0x7ff6458cda2a Semantic_Versioning.Basic.Restrictions.First_Index at alire.adb:284 0x7ff6454c595b Semantic_Versioning.Basic.Restrictions.First_Index at alire-os_lib-subprocess.adb:111 0x7ff64577cba1 Semantic_Versioning.Basic.Restrictions.First_Index at alire-spawn.adb:22 0x7ff64577dd5d Semantic_Versioning.Basic.Restrictions.First_Index at alire-spawn.adb:68 0x7ff6456a2d64 Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:189 0x7ff6456a11da Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:255 0x7ff6456c912d Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2143 0x7ff6457382f9 Semantic_Versioning.Basic.Restrictions.First_Index at alire-solutions.adb:1472 0x7ff645737424 Semantic_Versioning.Basic.Restrictions.First_Index at alire-solutions.adb:1555 0x7ff6456c922c Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2147 0x7ff6456c92fa Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2127 0x7ff6456a17a7 Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:286 0x7ff6456a1912 Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:114 0x7ff644e13baa Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:145 0x7ff644e1341e Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:113 0x7ff644e135ba Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:54 0x7ff644ec5dea Semantic_Versioning.Basic.Restrictions.First_Index at clic-subcommand-instance.adb:749 0x7ff644ed2b0e Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands.adb:632 0x7ff644da16a0 Alr.Main at alr-main.adb:13 0x7ff644da5270 Main at b__alr-main.adb:2454 0x7ff644da133e __tmainCRTStartup at ??? 0x7ff644da1144 mainCRTStartup at ??? [C:\Windows\System32\KERNEL32.DLL] 0x7ff9e29ce8d5 [C:\Windows\SYSTEM32\ntdll.dll] 0x7ff9e372c53a stderr: ALIRE.ROOTS.BUILD._WRAPPED_STATEMENTS.BUILD_FAILED stderr: alire-roots.adb:202 stderr: raised ALIRE.ROOTS.BUILD._WRAPPED_STATEMENTS.BUILD_FAILED : alire-roots.adb:202 [D:\a\alire-crates-ci\alire-crates-ci\alire_install\bin\alr.exe] 0x7ff6456a313c Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:202 0x7ff6456a11da Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:255 0x7ff6456c912d Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2143 0x7ff6457382f9 Semantic_Versioning.Basic.Restrictions.First_Index at alire-solutions.adb:1472 0x7ff645737424 Semantic_Versioning.Basic.Restrictions.First_Index at alire-solutions.adb:1555 0x7ff6456c922c Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2147 0x7ff6456c92fa Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:2127 0x7ff6456a17a7 Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:286 0x7ff6456a1912 Semantic_Versioning.Basic.Restrictions.First_Index at alire-roots.adb:114 0x7ff644e13baa Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:145 0x7ff644e1341e Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:113 0x7ff644e135ba Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands-build.adb:54 0x7ff644ec5dea Semantic_Versioning.Basic.Restrictions.First_Index at clic-subcommand-instance.adb:749 0x7ff644ed2b0e Semantic_Versioning.Basic.Restrictions.First_Index at alr-commands.adb:632 0x7ff644da16a0 Alr.Main at alr-main.adb:13 0x7ff644da5270 Main at b__alr-main.adb:2454 0x7ff644da133e __tmainCRTStartup at ??? 0x7ff644da1144 mainCRTStartup at ??? [C:\Windows\System32\KERNEL32.DLL] 0x7ff9e29ce8d5 [C:\Windows\SYSTEM32\ntdll.dll] 0x7ff9e372c53a ERROR: Compilation failed.