---------------------------------------------------------------- {{{ ---------- --: Copyright © 2020 … 2023 Martin Krischik «krischik@users.sourceforge.net» ------------------------------------------------------------------------------- --: This library is free software; you can redistribute it and/or modify it --: under the terms of the GNU Library General Public License as published by --: the Free Software Foundation; either version 2 of the License, or (at your --: option) any later version. --: --: This library is distributed in the hope that it will be useful, but WITHOUT --: ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or --: FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public --: License for more details. --: --: You should have received a copy of the GNU Library General Public License --: along with this library; if not, write to the Free Software Foundation, --: Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ---------------------------------------------------------------- }}} ---------- pragma License (Modified_Gpl); pragma Ada_2022; with Ada.Characters.Latin_1; with Ada.Exceptions; with Ada.Text_IO; with AdaCL.Command_Line.GetOpt; with AdaCL.Trace; with HP41CX_Tools.CommandLine; with HP41CX_Tools.Decoder; with HP41CX_Tools.Registers; --- -- @summary -- Tools to handle PX-41CX dump files -- -- @description -- Tools to handle PX-41CX dump files -- -- Set https://superuser.com/a/710840/44617 for details -- procedure HP41CX_Tools.Main is package GetOpt renames AdaCL.Command_Line.GetOpt; package Latin_1 renames Ada.Characters.Latin_1; begin AdaCL.Trace.Initialize; pragma Debug (AdaCL.Trace.Entering); Try : declare Options : CommandLine.Object; begin Options.Parse; Registers.Initialize (Options); case Options.Operation is when CommandLine.Decode => HP41CX_Tools.Decoder.Decode (Options.In_File, Options.Out_File); when CommandLine.Encode => null; when CommandLine.None => Ada.Text_IO.Put_Line (Ada.Text_IO.Standard_Error, "No operation given. User ""--help"" to show available operations and options."); end case; exception when AnException : GetOpt.Option_Parse_Error => AdaCL.Trace.Write_Error ("Error parsing command line options" & Latin_1.LF & Ada.Exceptions.Exception_Message (AnException) & Latin_1.LF & "Use '--help' for help"); when AnException : others => AdaCL.Trace.Write_Error (AnException); end Try; pragma Debug (AdaCL.Trace.Exiting); return; end HP41CX_Tools.Main; ---------------------------------------------------------------- {{{ ---------- --: vim: set textwidth=0 nowrap tabstop=8 shiftwidth=3 softtabstop=3 expandtab : --: vim: set filetype=ada fileencoding=utf-8 fileformat=unix foldmethod=expr : --: vim: set spell spelllang=en_gb :