Niakwa, Inc.

    

 


What's News
NPL Products
NPL Support
NPL Downloads
System Integration
swiggle_small.gif (991 bytes)

swiggle_small.gif (991 bytes)

April 15, 1996 No. 87

Summary of $MACHINE Settings

The following Technical Note is intended as a quick reference for all current $MACHINE settings and where to look for more information. As of Revision 4.21 of the Niakwa Programming Language, 44 bytes containing significant values are returned by $MACHINE ($MACHINE is a 64 byte system variable and new values will likely be added in the future).

NOTE: This is not intended to replace existing $MACHINE documentation.

BYTE

DESCRIPTION

PLATFORMS

SEE PAGE/
DOCUMENT

1

RunTime Version
"I" - for MS-DOS/Novell NetWare
"N" - for MS-Windows
"P" - for Phar Lap
"S" - for SuperDOS
"X" - for Intel XENIX (286)
"A" - for Intel UNIX (386 models)
"U" - for Motorola 68000 UNIX
"V" - for VMS
"W" - for MS-DOS on Wang PCs

All

Statements Guide,
Section 8 Supplement

2

Hardware Manufacture CodeDOS/Novell,
Intel Xenix/UNIX,
Motorola 68000 UNIX
Statements Guide,
Chapter 8 Supplement

3

Monitor TypeAllStatements Guide,
Chapter 8 Supplement

4

Graphics Enabled ('true' box graphics available).AllStatements Guide,
Chapter 8 Supplement

5

Hardware Model Code.

--------------------------------------------
Binary # of overflow areas setup in the memory share module.

DOS/Novell,
Intel Xenix/UNIX,
Motorola 68000 UNIX

----------------
SuperDOS

Statements Guide,
Chapter 8 Supplement

6

Number of users in the Niakwa RunTime before this task was executed.

--------------------------------------------
Number of users in the Niakwa RunTime after this task was executed.

DOS/Novell,
SuperDOS, Motorola 68000 UNIX, VMS, Intel Xenix/UNIX (3.01 or earlier)

-----------------
Intel Xenix/UNIX (3.20 and later)

Statements Guide,
Chapter 8 Supplement

7

RunTime type in use.
"I" = Interpretative
"P" = Non-interpretative
AllStatements Guide

8

Display screen width in binary. Always HEX(50) on 80 column screens. On screens that support more than 80 columns, the width currently enabled is displayed.AllStatements Guide,
Chapter 8 Supplement, Chapter 7 Programmer's Guide

9

Terminal type.SuperDOS, Intel Xenix/UNIX,
Motorola 68000 UNIX
Statements Guide,
Chapter 8 Supplement

10

Math coprocessor presence.
HEX(00) - no coprocessor is present.
HEX(01) - a coprocessor is present. Used by setting byte 16 of $OPTIONS to a value of HEX(01).
AllStatements Guide, Appendix C
Supplement
Chapter 8 Supplement

11

Memory model in use.
HEX(00) - Standard model in use. Maximum partition size is 56k. Returned when "S" start up option is not used.
HEX(01) - Extended model in use. A 56k program segment and 64k variable segment are available. Returned when "S" start up option is in use.

--------------------------------------------
HEX(02) - Large model in use.

All - Release II only

-----------------
All - Release III and greater

Statements Guide

12

Number of colors available.AllStatements Guide, Chapters 6 & 8 , MS-DOS Supplement

13

Maximum number of authorized users (in binary).AllStatements Guide

14

Reserved for Niakwa use.n/an/a

15

Reserved for Niakwa use.n/an/a

16

Maximum number of Device Equivalence Table entries available. Equal to the number of devices specified in the "D" start up option. If the "D" option is not used, the default value of 16 DET entries is used. AllStatements Guide, Chapters 4 & 8 Supplement

17

Number of Device Equivalence Table entries currently in use. A DET entry is defined as in use when a Niakwa Programming Language address or file number is assigned. AllStatements Guide, Chapters 4 & 8 Supplement

18

Indicates whether the task in use was started as a background partition. HEX(00) - Task started in foreground.
HEX(01) - Task started in background.
SuperDOS, Intel Xenix/UNIX, Motorola 68000 UNIXStatements Guide, Chapter 8 Supplement

19

Contains the status of $DEMO keyboard redirection and keyboard logging.
HEX(01) - 1 indicates that keyboard re-direction from a $DEMO file is in effect. Set to 0 on all conditions which terminates a $DEMO script.
HEX(02) - indicates that keyboard logging is in effect. Set to 0 whenever SELECT LOG status is OFF or the SELECT LOG address is /000.
AllStatements Guide, Chapter 12 Programmers' Guide

20

Indicates if the version of NPL running is32-bit or non-32-bit.n/an/a

21

Contains the maximum number of entries (in binary) allocated to the handle table (in K) during a RunTime session. All - Revision 3.20 and greater.Statements Guide, Chapter 8 Supplement

22

Indicates the XMS usage as specified in the /m and /u start up options. DOS/Novell, 386/DOS-Extender - Revision 3.20 and greaterStatements Guide, Chapter 8 Supplement

23

Contains the current row position of the mouse pointer when a mouse event occurs (if it is on screen).DOS/Novell, MS-Windows, Intel UNIXRevision 4.10 MS-DOS Addendum

24

Contains the current column position of the mouse pointer when a mouse event occurs (if it is on screen).DOS/Novell, MS-Windows, Intel UNIXRevision 4.10 MS-DOS Addendum

25

Extended field equivalent to $MACHINE byte 6 (number of active users in the RunTime before this task booted).  For systems with 256 or more users, these bytes must be used to get an accurate user count.DOS/Novell, MS-Windows, Intel UNIXStatements Guide

26

Extended field equivalent to $MACHINE byte 6 (number of active users in the RunTime before this task booted).  For systems with 256 or more users, these bytes must be used to get an accurate user count.DOS/Novell, MS-Windows, Intel UNIXStatements Guide

27

Extended field equivalent to $MACHINE byte 13 (number of active users in the RunTime before this task booted).  For systems with 256 or more users, these bytes must be used to get an accurate user count.DOS/Novell, MS-Windows, Intel UNIXStatements Guide

28

Extended field equivalent to $MACHINE byte 13 (number of active users in the RunTime before this task booted).  For systems with 256 or more users, these bytes must be used to get an accurate user count.DOS/Novell, MS-Windows, Intel UNIXStatements Guide

29

Indicates whether keyboard mouse events are supported.
HEX(00) No mouse available.
DOS/Novell, MS-Windows, Intel UNIXRevision 4.10 MS-DOS Addendum

30

Reserved for Niakwa use.n/an/a

31

Reserved for Niakwa use.n/an/a

32

Used to record the networking operating environment detected by NPL at startup of the RunTime.DOS/Novell, MS-WindowsRevision 4.10 MS-DOS Addendum

33

The high order nibble of $MACHINE byte 33 is used to record the user count method for the current user. The low order nibble is used to record the locking mechanism used for the current user.DOS/Novell, MS-WindowsRevision 4.10 MS-DOS Addendum

34

Reserved for Niakwa use.n/an/a

35

Used to determine the Year of expiration. If no expiration date, contains zeros.DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXStatements Guide

36

Used to determine the Month of expiration. If no expiration date, contains zeros.DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXStatements Guide

37

Used to determine the Day of expiration. If no expiration date, contains zeros.DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXStatements Guide

38

Reserved for Niakwa use.n/an/a

39

Reserved for Niakwa use.n/an/a

40

Reserved for Niakwa use.n/an/a

41

Mouse pixel "Y" coordinate of last reported event in binary.
Out of range value is HEX(FFFF).
DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXRevision 4.21 MS-DOS Addendum

42

Mouse pixel "Y" coordinate of last reported event in binary.
Out of range value is HEX(FFFF).
DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXRevision 4.21 MS-DOS Addendum

43

Mouse pixel "X" coordinate of last reported event in binary.
Out of range value is HEX(FFFF).
DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXRevision 4.21 MS-DOS Addendum

44

Mouse pixel "X" coordinate of last reported event in binary.
Out of range value is HEX(FFFF).
DOS/Novell, 386/DOS-Extender, MS-Windows, Intel UNIXRevision 4.21 MS-DOS Addendum

 

blank.gif (841 bytes)


Niakwa, Basic-2C and NPL are trademarks of Niakwa, Inc. All other products mentioned are registered trademarks or trademarks of their respective companies.

Questions or problems regarding this web site should be directed to webmaster@niakwa.com.
Copyright 1996-2010 Niakwa, Inc. All rights reserved.
Last updated: Thursday January 07, 2010.