Jump to content

RXU: Difference between revisions

From EDM2
mNo edit summary
Ak120 (talk | contribs)
 
(18 intermediate revisions by 2 users not shown)
Line 3: Line 3:
This library replaced the old YDBAUTIL.
This library replaced the old YDBAUTIL.


License: Freeware
;Files
 
==Files==
* [[RXU.DLL]]
* [[RXU.DLL]]


==Functions==
==Functions==
;UPM/Net Related Functions
;Function Package utility functions
:[[RxUpm]], [[RxNet]]
:RxuInit - Register all RXU Rexx functions
:RxuTerm - De-Register all RXU Rexx functions
:RxuQuery - Query function package version and available external function entry point names
 
;Math Library Functions
;Math Library Functions
:RxuMthceil, RxuMthcosh, RxuMthexp, RxuMthfloor, RxuMthfmod, RxuMthfrexp, RxuMthldexp, RxuMthlog, RxuMthlog10, RxuMthmodf, RxuMthpow, RxuMthsinh, RxuMthtanh, RxuMthasin, RxuMthacos, RxuMthatan2, RxuMthatan, RxuMthsin, RxuMthcos, RxuMthtan, RxuMthsqrt, RxuMthfabs, RxuMtherf, RxuMtherfc, Rxthgamma, RxuMthhypot
:RxuMthacos - arccosine
:RxuMthatan2 - arctangent (x/y)
:RxuMthasin - arcsine
:RxuMthatan - arctangent
:RxuMthceil - ceiling (largest integer greater or equal)
:RxuMthcos - cosine
:RxuMthcosh - hyperbolic cosine
:RxuMtherf - error function
:RxuMtherfc - 1.0 - error function
:RxuMthexp - e^x
:RxuMthfabs - absolute value
:RxuMthfloor - floor (largest integer lesser or equal)
:RxuMthfmod - floating point remainder
:RxuMthfrexp - mantissa and exponent
:RxuMthgamma - gamma function
:RxuMthhypot - hypotenuse of right triangle
:RxuMthldexp - x*(2^y)
:RxuMthlog - natural logarithm
:RxuMthlog10 - base 10 logarithm
:RxuMthmodf - fractional and integral parts
:RxuMthpow - x^y
:RxuMthsin - sine
:RxuMthsinh - hyperbolic sine
:RxuMthsqrt - square root
:RxuMthtan - tangent
:RxuMthtanh - hyperbolic tangent
 
;UPM/Net
: [[RxUpm]] - Rexx interface to UPM
: [[RxNet]] - Rexx interface to certain NET calls (also some UPM-related calls)
 
;System Info Related
:RxSetExtLibPath - Set extended LIBPATH for current process (allows you to dynamically alter LIBPATH per process)
:RxQueryExtLibPath - Query extended LIBPATH for current process
:RxTmrQueryFreq - Query frequency of IRQ0 high-resolution timer
:RxTmrQueryTime - Query snapshot of IRQ0 high-resolution timer value
:RxProcId - Get process' own PID and TID information
:RxGetInfoBlocks - Get information about current process/thread
:RxQueryAppType - Get information about an executable file
:RxQuerySysInfo - Invoke DosQuerySysInfo
:RxQProcStatus - Obtain Process Status Information (like PSTAT)
:RxSetError - Set DosError settings (enable/disable HardError and Exception popups)
:RxReplaceModule - Replace an active .DLL or .EXE file
:RxExitList - Use DosExitList
:RxDevConfig - Obtain device configuration information
:RxPhysicalDisk - Query information about partitionable disks
:RxDevIOCtl - Do DosDevIOCtl calls (to talk to character devices directly)
 
;REXX Programming/Debuging
;REXX Programming/Debuging
: RxSCount
: RxF2C - Convert rexx number to floating point
;Memory Management/Access
: RxC2F - Convert floating point number to rexx number
:RxMalloc
: RxVlist - List, manipulate Rexx variable pool
;Semaphore Handling
: RxGlobalVar - Put,Get,Delete system-wide global variables
;REXX Macro Space Function
: RxScount - Count strings (needle) in another string (haystack)
;Threads, Tasking, Etc
: RxPmPrintf - Write lines to a PMPrintf Monitor
;NetBIOS Information
: RxCallInStore - Execute a string as a program
;DLL Handling
: RxPassByName - Allows rexx program to call another rexx program (external .CMD file), passing rexx variables (including stems) by name (reference or value).
: RxReturnByName - Allows a called rexx program to return rexx variables (including stems) by name (reference or value) back to a calling rexx program.
: RxPBNBufSize - Set/Query fetch buffer size (used by RxPassByName)
: RxTokenize - Tokenize ("Compile") a program string
: RxPullQueue - Pull items from any Rexx data queue
: RxAddQueue - Add items to any Rexx data queue
: RxQueued - Query number of items on any Rexx data queue
: RxQExists - Query existence of a Rexx Queue
: RxSearchPath - Find a file in a path
: RxRegisterFunctionExe - Use "RexxRegisterFunctionExe()"
: RxRegisterExitDll - Use "RexxRegisterExitDll()"
: RxRegisterExitExe - Use "RexxRegisterExitExe()"
: RxQueryExit - Use "RexxQueryExit()"
: RxDeregisterExit - Use "RexxDeregisterExit()"
 
;I/O Related
: RxRsoe2f - Redirect StdOut/StdErr to a file (by file name)
: RxRsoe2q - Redirect StdOut/StdErr to a rexx queue (by queue name)
: RxSoSe2H - Redirect StdOut/StdErr to a file (by file handle)
: RxSi2H - Redirect StdIn from a file (by file handle)
: RxRSi2F - Redirect StdIn from a file (by file name)
: RxOpen - Open a file (with full DosOpen capabilities)
: RxRead - Read data from a file handle
: RxDosRead - Alias for "RxRead()"
: RxWrite - Write data to a file handle
: RxDosWrite - Alias for "RxWrite()"
: RxCloseH - Close a file handle
: RxExecI - Read data into a Rexx queue or stem from a file
: RxExecO - Write data from a Rexx queue or stem to a file
: RxVioPopUp - Start a VioPopUp display screen
: RxVioEndPopUp - Close a VioPopUp display screen
: RxVioWrtCharStrAtt - Write characters to a VioPopUp display screen
: RxKbCharIn - Get a character from a VioPopUp display screen
: RxDupHandle - Do a "DosDupHandle()"
: RxSetFHState - Set file handle state
: RxQueryFHState - Query file handle state
: RxSetMaxFH - Set maximum file handles for process
: RxSetRelMaxFH - Set max file handles for process (relative to current value)
 
;OS/2 Pipes
;OS/2 Pipes
: RxCreateNPipe - Create a named pipe
: RxSetNPHState - Set state of a named pipe
: RxConnectNPipe - Connect to a named pipe
: RxDisConnectNPipe - Disconnect from a named pipe
: RxCreatePipe - Create an unnamed pipe
: RxDestroyPipe - Destroy a pipe
;OS/2 Queues
;OS/2 Queues
;I/O Related
: RxCreateQueue - DosCreateQueue
;System Info Related
: RxOpenQueue - DosOpenQueue
;PM/WP Related Functions
: RxPeekQueue - DosPeekQueue
:RxWinQueryObject, RxWinDestroyObject
: RxReadQueue - DosReadQueue
: RxWriteQueue - DosWriteQueue
: RxPurgeQueue - DosPurgeQueue
: RxQueryQueue - DosQueryQueue
: RxCloseQueue - DosCloseQueue
: RxReadQueueStr - Returns data from de-referenced queue pointer
 
;NetBios information
: RxNbSessionStatus - Obtain NETBIOS session status information
 
;Tasking, threads, etc.
: RxSetPriority - Set the priority of processes or threads
:;Process - Related
: RxKillProcess - Kill an OS/2 process by process-id
: RxExecPgm - Execute a program using DosExecPgm
: RxWaitChild - Wait for a child process to end
: RxStartSession - Start a program in another session (DosStartSession)
: RxStartRexxSession - Start a Rexx program in another session
: RxDetachRexxPgm - Detach a Rexx program
:; Thread - Related
: RxCreateRexxThread - Execute a Rexx program on another thread
: RxSetExceptionExit - Specify the address of a "_System" linkage function which is called when an OS/2 exception occurs on a thread started with "RxCreateRexxThread".
: RxCreateThread - Call a procedure address on another thread
: RxKillThread - Kill a thread by thread-id
: RxResumeThread - Resume thread execution by thread-id
: RxSuspendThread - Suspend thread execution by thread-id
: RxCallEntryPoint - Call a (non-Rexx) routine by entry point address
 
; OS/2 Memory managment
: RxMalloc - Allocate memory using "malloc()"
: RxFree - Free memory allocated by "rxmalloc()" using "free()"
: RxStructMap - Generate a structure map for RxStruct2Stem()
: RxStruct2Stem - Map structure elements into a stem
: RxStem2Struct - Map a stem into structure elements
: RxStorage - Query/Alter storage by address
: RxAdd2Ptr - Pointer Arithmetic (Add/Subtract)
: RxThunkAddr - Thunk an address Flat⇾Segmented, Segmented⇾Flat
: RxAllocMem - Allocate Memory
: RxFreeMem - Free Memory
: RxAllocSharedMem - Allocated Shared memory (named or unnamed)
: RxGetSharedMem - Get (gettable) shared memory
: RxGiveSharedMem - Give (giveable) shared memory
: RxGetNamedSharedMem - Get named shared memory
: RxSetMem - Set memory attributes
: RxQueryMem - Query memory attributes
: RxSubAllocMem - Suballocate memory
: RxSubFreeMem - Free suballocated memory
: RxSubSetMem - Set memory for suballocation
: RxSubUnsetMem - Unset previously "SubSet" memory
 
; OS/2 Semaphores
:; Event Semaphore
: RxCreateEventSem - Create an event semaphore
: RxCloseEventSem - Close an event semaphore
: RxOpenEventSem - Open an event semaphore
: RxPostEventSem - Post an event semaphore
: RxQueryEventSem - Query an event semaphore
: RxResetEventSem - Reset an event semaphore
: RxWaitEventSem - Wait on an event semaphore
:; Mutex Semaphore
: RxCreateMutexSem - Create a Mutex semaphore
: RxOpenMutexSem - Invoke DosOpenMutexSem
: RxCloseMutexSem - Invoke DosCloseMutexSem   
: RxQueryMutexSem - Invoke DosQueryMutexSem   
: RxReleaseMutexSem - Invoke DosReleaseMutexSem 
: RxRequestMutexSem - Invoke DosRequestMutexSem
:; MuxWait Semaphore
: RxCreateMuxWaitSem - Invoke DosCreateMuxWaitSem
: RxCloseMuxWaitSem - Invoke DosCloseMuxWaitSem 
: RxOpenMuxWaitSem - Invoke DosOpenMuxWaitSem 
: RxWaitMuxWaitSem - Invoke DosWaitMuxWaitSem 
: RxAddMuxWaitSem - Invoke DosAddMuxWaitSem   
: RxDeleteMuxWaitSem - Invoke DosDeleteMuxWaitSem
: RxQueryMuxWaitSem - Invoke DosQueryMuxWaitSem
 
; DLL Handling
: RxLoadModule - Load a DLL
: RxFreeModule - Free a DLL
: RxQueryModuleName - Query the fully qualified name of a DLL (by handle)
: RxQueryModuleHandle - Query the module handle of a DLL (by name)
: RxQueryProcType - Query the addressing mode of an entry point in a DLL
: RxQueryProcAddr - Query the procedure address of an entry point in a DLL
 
; Rexx Macro Space Handling
: RxAddMacro - Add a particular Macro Space function
: RxDropMacro - Drop a particular Macro Space function
: RxClearMacroSpace - Clear the Rexx Macro Space
: RxSaveMacroSpace - Save a particular Macro Space function to a file
: RxLoadMacroSpace - Load a particular Macro Space function from a file
: RxQueryMacro - Query the position of a particular Macro Space function
: RxReorderMacro - Reorder a function's position in a Macro Space
 
;PM / Wp related functions
: RxWinQueryObject - Query object handle of a WP object
: RxWinDestroyObject - Destroy a WP object


==Author==
==License==
* Dave Boll
* BSD 3-Clause
* Author: Dave Boll


==Links==
==Links==
* Download: [http://hobbes.nmsu.edu/download/pub/os2/dev/rexx/rxu1a.zip v1.a]
* rxu1a.zip
* rxu1b.zip


[[Category:REXX Function Library]]
[[Category:REXX Function Library]]

Latest revision as of 00:23, 27 April 2023

RXU is a rich set of Rexx functions for OS/2 API. Includes RxMalloc, math functions, library and pipe handling.

This library replaced the old YDBAUTIL.

Files

Functions

Function Package utility functions
RxuInit - Register all RXU Rexx functions
RxuTerm - De-Register all RXU Rexx functions
RxuQuery - Query function package version and available external function entry point names
Math Library Functions
RxuMthacos - arccosine
RxuMthatan2 - arctangent (x/y)
RxuMthasin - arcsine
RxuMthatan - arctangent
RxuMthceil - ceiling (largest integer greater or equal)
RxuMthcos - cosine
RxuMthcosh - hyperbolic cosine
RxuMtherf - error function
RxuMtherfc - 1.0 - error function
RxuMthexp - e^x
RxuMthfabs - absolute value
RxuMthfloor - floor (largest integer lesser or equal)
RxuMthfmod - floating point remainder
RxuMthfrexp - mantissa and exponent
RxuMthgamma - gamma function
RxuMthhypot - hypotenuse of right triangle
RxuMthldexp - x*(2^y)
RxuMthlog - natural logarithm
RxuMthlog10 - base 10 logarithm
RxuMthmodf - fractional and integral parts
RxuMthpow - x^y
RxuMthsin - sine
RxuMthsinh - hyperbolic sine
RxuMthsqrt - square root
RxuMthtan - tangent
RxuMthtanh - hyperbolic tangent
UPM/Net
RxUpm - Rexx interface to UPM
RxNet - Rexx interface to certain NET calls (also some UPM-related calls)
System Info Related
RxSetExtLibPath - Set extended LIBPATH for current process (allows you to dynamically alter LIBPATH per process)
RxQueryExtLibPath - Query extended LIBPATH for current process
RxTmrQueryFreq - Query frequency of IRQ0 high-resolution timer
RxTmrQueryTime - Query snapshot of IRQ0 high-resolution timer value
RxProcId - Get process' own PID and TID information
RxGetInfoBlocks - Get information about current process/thread
RxQueryAppType - Get information about an executable file
RxQuerySysInfo - Invoke DosQuerySysInfo
RxQProcStatus - Obtain Process Status Information (like PSTAT)
RxSetError - Set DosError settings (enable/disable HardError and Exception popups)
RxReplaceModule - Replace an active .DLL or .EXE file
RxExitList - Use DosExitList
RxDevConfig - Obtain device configuration information
RxPhysicalDisk - Query information about partitionable disks
RxDevIOCtl - Do DosDevIOCtl calls (to talk to character devices directly)
REXX Programming/Debuging
RxF2C - Convert rexx number to floating point
RxC2F - Convert floating point number to rexx number
RxVlist - List, manipulate Rexx variable pool
RxGlobalVar - Put,Get,Delete system-wide global variables
RxScount - Count strings (needle) in another string (haystack)
RxPmPrintf - Write lines to a PMPrintf Monitor
RxCallInStore - Execute a string as a program
RxPassByName - Allows rexx program to call another rexx program (external .CMD file), passing rexx variables (including stems) by name (reference or value).
RxReturnByName - Allows a called rexx program to return rexx variables (including stems) by name (reference or value) back to a calling rexx program.
RxPBNBufSize - Set/Query fetch buffer size (used by RxPassByName)
RxTokenize - Tokenize ("Compile") a program string
RxPullQueue - Pull items from any Rexx data queue
RxAddQueue - Add items to any Rexx data queue
RxQueued - Query number of items on any Rexx data queue
RxQExists - Query existence of a Rexx Queue
RxSearchPath - Find a file in a path
RxRegisterFunctionExe - Use "RexxRegisterFunctionExe()"
RxRegisterExitDll - Use "RexxRegisterExitDll()"
RxRegisterExitExe - Use "RexxRegisterExitExe()"
RxQueryExit - Use "RexxQueryExit()"
RxDeregisterExit - Use "RexxDeregisterExit()"
I/O Related
RxRsoe2f - Redirect StdOut/StdErr to a file (by file name)
RxRsoe2q - Redirect StdOut/StdErr to a rexx queue (by queue name)
RxSoSe2H - Redirect StdOut/StdErr to a file (by file handle)
RxSi2H - Redirect StdIn from a file (by file handle)
RxRSi2F - Redirect StdIn from a file (by file name)
RxOpen - Open a file (with full DosOpen capabilities)
RxRead - Read data from a file handle
RxDosRead - Alias for "RxRead()"
RxWrite - Write data to a file handle
RxDosWrite - Alias for "RxWrite()"
RxCloseH - Close a file handle
RxExecI - Read data into a Rexx queue or stem from a file
RxExecO - Write data from a Rexx queue or stem to a file
RxVioPopUp - Start a VioPopUp display screen
RxVioEndPopUp - Close a VioPopUp display screen
RxVioWrtCharStrAtt - Write characters to a VioPopUp display screen
RxKbCharIn - Get a character from a VioPopUp display screen
RxDupHandle - Do a "DosDupHandle()"
RxSetFHState - Set file handle state
RxQueryFHState - Query file handle state
RxSetMaxFH - Set maximum file handles for process
RxSetRelMaxFH - Set max file handles for process (relative to current value)
OS/2 Pipes
RxCreateNPipe - Create a named pipe
RxSetNPHState - Set state of a named pipe
RxConnectNPipe - Connect to a named pipe
RxDisConnectNPipe - Disconnect from a named pipe
RxCreatePipe - Create an unnamed pipe
RxDestroyPipe - Destroy a pipe
OS/2 Queues
RxCreateQueue - DosCreateQueue
RxOpenQueue - DosOpenQueue
RxPeekQueue - DosPeekQueue
RxReadQueue - DosReadQueue
RxWriteQueue - DosWriteQueue
RxPurgeQueue - DosPurgeQueue
RxQueryQueue - DosQueryQueue
RxCloseQueue - DosCloseQueue
RxReadQueueStr - Returns data from de-referenced queue pointer
NetBios information
RxNbSessionStatus - Obtain NETBIOS session status information
Tasking, threads, etc.
RxSetPriority - Set the priority of processes or threads
Process - Related
RxKillProcess - Kill an OS/2 process by process-id
RxExecPgm - Execute a program using DosExecPgm
RxWaitChild - Wait for a child process to end
RxStartSession - Start a program in another session (DosStartSession)
RxStartRexxSession - Start a Rexx program in another session
RxDetachRexxPgm - Detach a Rexx program
Thread - Related
RxCreateRexxThread - Execute a Rexx program on another thread
RxSetExceptionExit - Specify the address of a "_System" linkage function which is called when an OS/2 exception occurs on a thread started with "RxCreateRexxThread".
RxCreateThread - Call a procedure address on another thread
RxKillThread - Kill a thread by thread-id
RxResumeThread - Resume thread execution by thread-id
RxSuspendThread - Suspend thread execution by thread-id
RxCallEntryPoint - Call a (non-Rexx) routine by entry point address
OS/2 Memory managment
RxMalloc - Allocate memory using "malloc()"
RxFree - Free memory allocated by "rxmalloc()" using "free()"
RxStructMap - Generate a structure map for RxStruct2Stem()
RxStruct2Stem - Map structure elements into a stem
RxStem2Struct - Map a stem into structure elements
RxStorage - Query/Alter storage by address
RxAdd2Ptr - Pointer Arithmetic (Add/Subtract)
RxThunkAddr - Thunk an address Flat⇾Segmented, Segmented⇾Flat
RxAllocMem - Allocate Memory
RxFreeMem - Free Memory
RxAllocSharedMem - Allocated Shared memory (named or unnamed)
RxGetSharedMem - Get (gettable) shared memory
RxGiveSharedMem - Give (giveable) shared memory
RxGetNamedSharedMem - Get named shared memory
RxSetMem - Set memory attributes
RxQueryMem - Query memory attributes
RxSubAllocMem - Suballocate memory
RxSubFreeMem - Free suballocated memory
RxSubSetMem - Set memory for suballocation
RxSubUnsetMem - Unset previously "SubSet" memory
OS/2 Semaphores
Event Semaphore
RxCreateEventSem - Create an event semaphore
RxCloseEventSem - Close an event semaphore
RxOpenEventSem - Open an event semaphore
RxPostEventSem - Post an event semaphore
RxQueryEventSem - Query an event semaphore
RxResetEventSem - Reset an event semaphore
RxWaitEventSem - Wait on an event semaphore
Mutex Semaphore
RxCreateMutexSem - Create a Mutex semaphore
RxOpenMutexSem - Invoke DosOpenMutexSem
RxCloseMutexSem - Invoke DosCloseMutexSem
RxQueryMutexSem - Invoke DosQueryMutexSem
RxReleaseMutexSem - Invoke DosReleaseMutexSem
RxRequestMutexSem - Invoke DosRequestMutexSem
MuxWait Semaphore
RxCreateMuxWaitSem - Invoke DosCreateMuxWaitSem
RxCloseMuxWaitSem - Invoke DosCloseMuxWaitSem
RxOpenMuxWaitSem - Invoke DosOpenMuxWaitSem
RxWaitMuxWaitSem - Invoke DosWaitMuxWaitSem
RxAddMuxWaitSem - Invoke DosAddMuxWaitSem
RxDeleteMuxWaitSem - Invoke DosDeleteMuxWaitSem
RxQueryMuxWaitSem - Invoke DosQueryMuxWaitSem
DLL Handling
RxLoadModule - Load a DLL
RxFreeModule - Free a DLL
RxQueryModuleName - Query the fully qualified name of a DLL (by handle)
RxQueryModuleHandle - Query the module handle of a DLL (by name)
RxQueryProcType - Query the addressing mode of an entry point in a DLL
RxQueryProcAddr - Query the procedure address of an entry point in a DLL
Rexx Macro Space Handling
RxAddMacro - Add a particular Macro Space function
RxDropMacro - Drop a particular Macro Space function
RxClearMacroSpace - Clear the Rexx Macro Space
RxSaveMacroSpace - Save a particular Macro Space function to a file
RxLoadMacroSpace - Load a particular Macro Space function from a file
RxQueryMacro - Query the position of a particular Macro Space function
RxReorderMacro - Reorder a function's position in a Macro Space
PM / Wp related functions
RxWinQueryObject - Query object handle of a WP object
RxWinDestroyObject - Destroy a WP object

License

  • BSD 3-Clause
  • Author: Dave Boll

Links

  • rxu1a.zip
  • rxu1b.zip