@DATABASE "OS_DevKit Extension" @INDEX "os_index.guide/main" @AUTHOR "Fromentin BRICE & Jens Vang Petersen" @node MAIN "OS_DevKit V2.00, Misc support 1st section" @toc "os_Documentation.guide/main" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{" Base-Addresses " link "BASE"} @{" Cli Arguments " link "CLIA"} @{" Chained Lists " link "CHNL"} @{" Memory Access " link "MEMA"} @{" Tag-lists " link "TAGL"} @{" Time & Date " link "TIME"} @{" Versions " link "VERS"} @{" Misc Commands " link "MISC"} @endnode @node BASE "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Base-Addresses@{uu}@{ub} @{u}Commands:@{uu} @{" _base Wb " Link "_base Wb"} @{" _base Loc " Link "_base Loc"} @{" _base Icon " Link "_base Icon"} @{" _base Asl " Link "_base Asl"} @{" _base Dos " Link "_base Dos"} @{" _base Gfx " Link "_base Gfx"} @{" _base Gad " Link "_base Gad"} @{" _base Int " Link "_base Int"} @{" _base Dt " Link "_base Dt"} @{" _base Layers " Link "_base Layers"} @{" _base Iff " Link "_base Iff"} @{" _base Cx " Link "_base Cx"} @{" _base Topaz " Link "_base Topaz"} @ENDNODE @node VERS "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Versions@{uu}@{ub} @{u}Commands:@{uu} @{" _sys Version " Link "_sys Version"} @{" _sys Revision " Link "_sys Revision"} @{" _lib Version " Link "_lib Version"} @{" _lib Revision " Link "_lib Revision"} @{" _sys Cpu " Link "_sys Cpu"} @{" _sys Fpu " Link "_sys Fpu"} @ENDNODE @node MISC "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Misc.@{uu}@{ub} @{u}Commands:@{uu} @{" _join.w " Link "_join.w"} @{" _cold Reboot " Link "_cold Reboot"} @{" _alert " Link "_alert"} @{" _ext.b " Link "_ext.b"} @{" _ext.w " Link "_ext.w"} @{" _ext.l " Link "_ext.l"} @{" _cache Clr " Link "_cache Clr"} @{" _cache Ctrl " Link "_cache Ctrl"} @{" _request Choice " link "_request Choice"} @{" _ag Show " link "_ag Show"} @{" _0$ " link "_0$"} @{" _print A$ " link "_print A$"} @{" _amos name A$ " link "_amos name A$"} @{" _id unique " link "_id unique"} @{" _help ctrl " link "_help ctrl"} @ENDNODE @NODE "_alert" @toc "MISC" _alert This function produces a 'software-failure,' if it is a mistake no recoverable then a reset will be to do. _alert NUMBER NUMBER -> Number of alert if > $80000000 then reset @ENDNODE @NODE "_cold Reboot" @toc "MISC" _cold Reboot This function does a reset. _cold Reboot @ENDNODE @NODE "_sys Version" @toc "VERS" _sys Version This function sends back the version of system. ex : 39 means OS 3.0 VER=_sys Version @ENDNODE @NODE "_sys Revision" @toc "VERS" _sys Revision This function sends back the revision of system. REV=_sys Revision @ENDNODE @NODE "_base Topaz" @toc "BASE" _base Topaz This function sends back the TextAttr pointer of the Topaz 8. TATTR=_base Topaz @ENDNODE @NODE "_base Dos" @toc "BASE" _base Dos This function sends back the base of the dos library. BASE=_base Dos @ENDNODE @NODE "_base Gfx" @toc "BASE" _base Gfx This function sends back the base of the graphics library. BASE=_base Gfx @ENDNODE @NODE "_base Int" @toc "BASE" _base Int This function sends back the base of the intuition library. BASE=_base Int @ENDNODE @NODE "_base Gad" @toc "BASE" _base Gad This function sends back the base of the gadtools library. BASE=_base Gad @ENDNODE @NODE "_base Asl" @toc "BASE" _base Asl This function sends back the base of the Asl library. The extension doesn't verify if this library could be open for it is not in ROM. This permit an economy of memory. So all ASL functions not will execute if this library is not open. Then if you need of it, verify if this library is open therefore BASE <> 0. BASE=_base Asl @ENDNODE @NODE "_base Wb" @toc "BASE" _base Wb This function sends back the base of the workbench library. BASE=_base Wb @ENDNODE @NODE "_base Icon" @toc "BASE" _base Icon This function sends back the base of the icon library. BASE=_base Icon @ENDNODE @NODE "_base Loc" @toc "BASE" _base Loc This function sends back the base of the locale library. BASE=_base Loc @ENDNODE @NODE "_base Dt" @toc "BASE" BASE=@{b}_base Dt@{ub} BASE = Pointer of 'datatypes.library'.. (0 if not loaded..) @ENDNODE @NODE "_base Layers" @toc "BASE" BASE=@{b}_base Layers@{ub} BASE = Pointer of 'layers.library'.. (0 if not loaded..) @ENDNODE @NODE "_base Iff" @toc "BASE" BASE=@{b}_Base Iff@{ub} BASE = Pointer of 'iffparse.library'.. (0 if not loaded..) @ENDNODE @NODE "_base Cx" @toc "BASE" BASE=@{b}_base Cx@{ub} BASE = Pointer of 'comodities.library'.. (0 if not loaded..) @ENDNODE @NODE "_join.w" @toc "MISC" _join.w This function joins two variables in one. In making, it uses the following representation: VAL=_join.w(VAL1,VAL2) VAL= 0x00 VAL1.w 0x02 VAL2.w @ENDNODE @NODE "_sys Cpu" @toc "VERS" _sys Cpu This function sends back the number of micro-processor. Ex: 20 for 68020 CPU=_sys Cpu @ENDNODE @NODE "_sys Fpu" @toc "VERS" _sys Fpu This function sends back the number of Co-processor. Ex: 81 for 68881 FPU=_sys Fpu @ENDNODE @NODE "_lib Version" @toc "VERS" _lib Version This function sends back the version of the library. VER=_lib Version(LIBBASE) LIBBASE -> Library Base. @ENDNODE @NODE "_lib Revision" @toc "VERS" _lib Revision This function sends back the revision of the library. VER=_lib Revision(LIBBASE) LIBBASE -> Library Base. @ENDNODE @NODE "_cache Clr" @toc "MISC" _cache Clr This function clears all caches of CPU. _cache Clr @ENDNODE @NODE "_cache Ctrl" @toc "MISC" _cache Ctrl This function modifies them caches of CPU to use, then it sends back the older caches used. OLDC=_cache Ctrl(USED,MASK) USED -> Activation bits of caches. MASK -> 32 bits Mask for activation ones. @ENDNODE @NODE "_ext.b" @toc "MISC" _ext.b This function extends the sign one byte to the long word. SIGN=_ext.b(VAR) VAR -> Variable to extend. @ENDNODE @NODE "_ext.w" @toc "MISC" _ext.w This function extends the sign one byte to the word. SIGN=_ext.w(VAR) VAR -> Variable to extend. @ENDNODE @NODE "_ext.l" @toc "MISC" _ext.l This function extends the sign one word to the long word. SIGN=_ext.l(VAR) VAR -> Variable to extend. @ENDNODE @node CHNL "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Chained Lists@{uu}@{ub} Here are some functions in order to create, manage the chained lists. I made them because those of the AMIGADOS don't underpin sufficient has my taste. @{" Fonction What " Link "Fonction What" } @{u}Commands:@{uu} @{" _chn Set Number " Link "_chn Set Number"} @{" _chn Set Default " Link "_chn Set Default"} @{" _chn Set First " Link "_chn Set First"} @{" _chn Set Last " Link "_chn Set Last"} @{" _chn Set List " Link "_chn Set List"} @{" _chn Set Length " Link "_chn Set Length"} @{" _chn Set Next " Link "_chn Set Next"} @{" _chn Set Previous " Link "_chn Set Previous"} @{" _chn List Alloc " Link "_chn List Alloc"} @{" _chn Add " Link "_chn Add"} @{" _chn Location " Link "_chn Location"} @{" _chn Find " Link "_chn Find"} @{" _chn New Length " Link "_chn New Length"} @{" _chn free " Link "_chn free"} @{" _chn List Free " Link "_chn List Free"} @{" _chn Ins " Link "_chn Ins"} @ENDNODE @NODE "_chn Set Number" @toc "CHNL" _chn Set Number This function allows to specify has it lists the number of elements that it contains. _chn Set Number LISTCHN,NBCHN LISTCHN -> Pointer List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} NBCHN -> Number of elements. @ENDNODE @NODE "_chn Set Default" @toc "CHNL" _chn Set Default This function allows to specify the size by default of the chains. _chn Set Default LISTCHN,LENCHN LISTCHN -> Pointer List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} LENCHN -> Length in bytes. @ENDNODE @NODE "_chn Set First" @toc "CHNL" _chn Set First This function allows to specify the first chain of the list. _chn Set First LISTCHN,FIRSTCHN LISTCHN -> Pointer List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} FIRSTCHN -> Pointer of the first chain. @ENDNODE @NODE "_chn Set Last" @toc "CHNL" _chn Set Last This function allows to specify the last chain of the list. _chn Set Last LISTCHN,LASTCHN LISTCHN -> Pointer List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} LASTCHN -> Pointer of the last chain. @ENDNODE @NODE "_chn Set List" @toc "CHNL" _chn Set List This function allows to specify the list of the chain. _chn Set List CHN,LISTCHN CHN -> Pointer of Chain LISTCHN -> Pointer List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} @ENDNODE @NODE "_chn Set Length" @toc "CHNL" _chn Set Length This function allows to specify the size of the chain. _chn Set Length CHN,LENCHN CHN -> Pointer of chain LENCHN -> Length of chain @ENDNODE @NODE "_chn Set Next" @toc "CHNL" _chn Set Next This function allows to specify the following chain. _chn Set Next CHN,NEXTCHN CHN -> Pointer of Chain NEXTCHN -> Pointer of Chain @ENDNODE @NODE "_chn Set Previous" @toc "CHNL" _chn Set Previous This function allows to specify the previous chain. _chn set previous CHN,PREVCHN CHN -> Pointer of chain. PREVCHN -> Pointer of chain. @ENDNODE @NODE "Fonction What" @toc "CHNL" Fonction What Ces fonctions send back values fixed by 'Set' functions. NBCHN=_chn What Number(LISTCHN) Cf @{" _chn Set Number " Link "_chn Set Number" } LENCHN=_chn What Default(LISTCHN) Cf @{" _chn Set Default " Link "_chn Set Default" } FIRTSCHN=_chn What First(LISTCHN) Cf @{" _chn Set First " Link "_chn Set First" } LASTCHN=_chn What Last(LISTCHN) Cf @{" _chn Set Last " Link "_chn Set Last" } LIST=_chn What List(CHN) Cf @{" _chn Set List " Link "_chn Set List" } LENCHN=_chn What Length(CHN) Cf @{" _chn Set Length " Link "_chn Set Length" } NEXTCHN=_chn What Next(CHN) Cf @{" _chn Set Next " Link "_chn Set Next" } PREVCHN=_chn What Previous(CHN) Cf @{" _chn Set Previous " Link "_chn Set Previous"} @ENDNODE @NODE "_chn List Alloc" @toc "CHNL" _chn List Alloc This function allocates and initializes a list of no element, then it sends back its pointer. LIST=_chn List Alloc(LENCHN) LENCHN -> Size by default of the future chains @ENDNODE @NODE "_chn Add" @toc "CHNL" _chn Add This function adds a chain in end of list and sends back the pointeur of this chain. o CHN=_chn Add(LISTCHN) LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} o CHN=_chn Add(LISTCHN,LEN) LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} LEN -> Length of chain @ENDNODE @NODE "_chn Location" @toc "CHNL" _chn Location This function finds the absolute position of the chain in its list. POS=_chn Location(CHN) CHN -> Pointer of chain @ENDNODE @NODE "_chn Find" @toc "CHNL" _chn Find This function sends back the pointer of the chain occupying the position absolute in the list. CHN=_chn Find(LISTCHN,POS) LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} POS -> Position of the required chain. @ENDNODE @NODE "_chn New Length" @toc "CHNL" _chn New Length This function changes the size of the chain. In fact, it reserves a new chain then copies the content of the former chain before liberate it. In order to finish, it sends back the pointer of the new chain. CHN=_chn New Length(CHN,LEN) CHN -> Pointer of chain LEN -> New length @ENDNODE @NODE "_chn free" @toc "CHNL" _chn free This function liberates a chaine of its list and of the memory. o _chn Free CHN CHN -> Pointer of chain o _chn Free LISTCHN,POS LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} POS -> Absolute position of the chain in its List. @ENDNODE @NODE "_chn List Free" @toc "CHNL" _chn List Free This function liberates the list thus that its chains. _chn List Free LISTCHN LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} @ENDNODE @NODE "_chn Ins" @toc "CHNL" _chn Ins This function inserts a chain before the specified chain. o CHN=_chn Ins(CHN) CHN -> Pointer of chain o CHN=_chn Ins(CHN,LEN) CHN -> Pointer of chain LEN -> Length o CHN=_chn Ins(LISTCHN To POS) LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} POS -> Absolute position in list. o CHN=_chn Ins(LISTCHN,LEN To POS) LISTCHN -> Pointeur List sent back by @{" _chn List Alloc " Link "_chn List Alloc"} LEN -> Length POS -> Absolute position in list. @ENDNODE @node TAGL "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Tag-Listings@{uu}@{ub} The TAG constitutes the major invention of the OS 2.0. Indeed, under shape of commands they allow to act on some functions whose accept them. In making, they permit of not more have has to handle some heavy structures has to use. I counsel you moreover of using the functions whose to that has recourse more than some equivalents without. @{u}Commands:@{uu} @{" _tag List Alloc " Link "_tag List Alloc"} @{" _tag List Free " Link "_tag List Free" } @{" _tag Set " Link "_tag Set" } @{" _tag Done " Link "_tag Done" } @ENDNODE @NODE "_tag List Alloc" @toc "TAGL" _tag List Alloc This function allocates memory for a TAG list. TAGLIST=_tag List Alloc(TAGNB) TAGNB -> Maximum TAG number in list. @ENDNODE @NODE "_tag List Free" @toc "TAGL" _tag List Free This function liberates the memory used by a previously allocated TAG List. _tag List Free TAGLIST TAGLIST -> Pointer of TAG List. @ENDNODE @NODE "_tag Set" @toc "TAGL" _tag Set This function set a TAG in the list. In making, there is no order in the lists and when you execute this function, it sets and jump to next site. tip on the next site then. _tag Set TAGLIST,TAG,TAGDATA TAGLIST -> Pointer of TAG List. TAG -> TAG Identifier. TAGDATA -> TAG Data. @ENDNODE @NODE "_tag Done" @toc "TAGL" _tag Done This function specifies the end of the list then jump again on the first TAG, thus if it one '_tag Set,' the list will be covered. ALWAYS FINISH A LIST THUS BEFORE TRANSMIT IT TO A FUNCTION. _tag Done TAGLIST TAGLIST -> Pointer of TAG List. @ENDNODE @node CLIA "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Cli Arguments@{uu}@{ub} @{u}Commands:@{uu} @{" _cli Read Args " link "_cli Read Args"} @{" _cli What Arg$ " link "_cli What Arg$"} @{" _cli What Arg " link "_cli What Arg"} @{" _cli What Arg$ " link "_cli What Arg$"} @{" _cli What Arg " link "_cli What Arg"} @endnode @node MEMA "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Memory Access@{uu}@{ub} @{u}Commands:@{uu} @{" _cpu Word " link "_cpu Word"} @{" _cpu Uword " link "_cpu Uword"} @{" _cpu Long " link "_cpu Long"} @{" _struct Byte " link "_struct Byte"} @{" _struct Ubyte " link "_struct Ubyte"} @{" _struct Word " link "_struct Word"} @{" _struct Uword " link "_struct Uword"} @{" _struct Long " link "_struct Long"} @{" _chr$.l " link "_chr$.l"} @{" _chr$.w " link "_chr$.w"} @{" _val.l " link "_val.l"} @{" _val.l " link "_val.l"} @endnode @node TIME "OS_DevKit V2.00, Misc" @toc "MAIN" ___________ ___________ / /\ / /\ OS-DevKit V2.00 Extension / ___ / // _______/ / Additional power for AMOS Pro V2.00+ / /\_/ / // /\_____ \/ / / // / // /\ Written by: / / // / //______ / / Fromentin BRICE / /_// / /_\_____/ / / / / // / / /__________/ //__________/ / \__________\/ \__________\/ @{b}@{u}Misc Commands@{uu}@{ub} @{b}@{u}Time & Date@{uu}@{ub} @{u}Commands:@{uu} @{" _ut Sec " link "_ut Sec"} @{" _ut Min " link "_ut Min"} @{" _ut Hour " link "_ut Hour"} @{" _ut Day " link "_ut Day"} @{" _ut Month " link "_ut Month"} @{" _ut Year " link "_ut Year"} @{" _dos Day$ " Link "_dos Day$" } @{" _dos Date$ " Link "_dos Date$"} @{" _dos Time$ " Link "_dos Time$"} @endnode @NODE "_dos Day$" @toc "TIME" _dos Day$ This function sends back the day of the hour system. If your system is localized, then the day will be in the language chosen in the preferences. DAY$=_dos Day$ @ENDNODE @NODE "_dos Time$" @toc "TIME" _dos Time$ This function returns the hour of system in military format 24h : hh/mm/ss. TIME$=_dos Time$ @ENDNODE @NODE "_dos Date$" @toc "TIME" _dos Date$ This function sends back the date of system according to the format that you ask to it. DATE$=_dos Date$(TYPE) TYPE -> Format of exit for the date. FORMAT_DOS = 0 FORMAT_INT = 1 FORMAT_USA = 2 FORMAT_CDN = 3 FORMAT_DEF = 4 @ENDNODE @node "_cli Read Args" @toc "CLIA" OK=@{b}_cli Read Args@{ub}(ARGUMENT$,TEMPLATE$) @endnode @node "_cli What Arg$" @toc "CLIA" VAL$=@{b}_cli What Arg$@{ub}(NB) @endnode @node "_cli What Arg" @toc "CLIA" VAL=@{b}_cli What Arg@{ub}(NB) @endnode @node "_cli What Arg$" @toc "CLIA" VAL$=@{b}_cli What Arg$@{ub}(NB,NB) @endnode @node "_cli What Arg" @toc "CLIA" VAL=@{b}_cli What Arg@{ub}(NB,NB) @endnode @node "_cpu Word" @toc "MEMA" V=_@{b}_cpu Word@{ub}(PTR)=V @endnode @node "_cpu Uword" @toc "MEMA" V=_@{b}_cpu Uword@{ub}(PTR)=V @endnode @node "_cpu Long" @toc "MEMA" V=_@{b}_cpu Long@{ub}(PTR)=V @endnode @node "_struct Byte" @toc "MEMA" V=_@{b}_struct Byte@{ub}(PTR,OFF)=V @endnode @node "_struct Ubyte" @toc "MEMA" V=_@{b}_struct Ubyte@{ub}(PTR,OFF)=V @endnode @node "_struct Word" @toc "MEMA" V=_@{b}_struct Word@{ub}(PTR,OFF)=V @endnode @node "_struct Uword" @toc "MEMA" V=_@{b}_struct Uword@{ub}(PTR,OFF)=V @endnode @node "_struct Long" @toc "MEMA" V=_@{b}_struct Long@{ub}(PTR,OFF)=V @endnode @node "_chr$.l" @toc "MEMA" A$=_@{b}_chr$.l@{ub}(LONG) @endnode @node "_chr$.w" @toc "MEMA" A$=_@{b}_chr$.w@{ub}(WORD) @endnode @node "_val.l" @toc "MEMA" LONG=_@{b}_val.l@{ub}(A$) @endnode @node "_val.l" @toc "MEMA" WORD=_@{b}_val.l@{ub}(A$) @endnode @node "_ut Sec" @toc "TIME" SEC=@{b}_ut Sec@{ub} @endnode @node "_ut Min" @toc "TIME" MIN=@{b}_ut Min@{ub} @endnode @node "_ut Hour" @toc "TIME" HOUR=@{b}_ut Hour@{ub} @endnode @node "_ut Day" @toc "TIME" DAY=@{b}_ut Day@{ub} @endnode @node "_ut Month" @toc "TIME" MONTH=@{b}_ut Month@{ub} @endnode @node "_ut Year" @toc "TIME" YEAR=@{b}_ut Year@{ub} @endnode @node "_request Choice" @toc "MISC" NB=@{b}_request Choice@{ub} (WND,TITLE$,BODY$,GADGET$) @endnode @node "_ag Show" @toc "MISC" OK=@{b}_ag Show@{ub} (SCR,BASENODE$) @endnode @node "_0$" @toc "MISC" @{b}_0$@{ub} @endnode @node "_print A$" @toc "MISC" @{b}_print A$@{ub} @endnode @node "_amos name A$" @toc "MISC" @{b}_amos name A$@{ub} @endnode @node "_id unique" @toc "MISC" ID=_@{b}_id unique@{ub} @endnode @node "_help ctrl" @toc "MISC" @{b}_help ctrl@{ub} WND,FLGS @endnode