mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-10 06:29:33 +00:00
Updated doc and FULLBOOT (stable.800) for dev to examine.
This commit is contained in:
parent
27817a2a79
commit
89cde54306
|
@ -1,7 +1,7 @@
|
|||
|
||||
# A2osX Shell Developers Guide
|
||||
|
||||
### Updated November 24, 2019
|
||||
### Updated November 25, 2019
|
||||
|
||||
One of the most significant parts of A2osX is its shell which can perform both interactive and scripted tasks. Using the interactive part of the shell, you can perform many common and complex tasks using both built-in (native or internal to shell) and external (BIN or executable) commands. Internal commands include CD (change directory), MD (make directory), PWD, DATE, etc. External commands include CP (copy), RM (remove), CAT (display file contents), TELNET, etc. It is even possible to create and execute short scripts right on the interactive command line (these are run once and not saved like true scripts) such as:
|
||||
|
||||
|
@ -213,6 +213,7 @@ The A2osX shell contains an expression evaluator that can perform simple integer
|
|||
SET C = A * B # 1230
|
||||
SET C = A / B # 12
|
||||
SET C = A MOD B # 3
|
||||
SET C = 100 * 2 / 4 + 2 / 13 * 4 # 16
|
||||
|
||||
#### \<op\>
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
109
EXAMPLES/ANDORDEMO.txt
Normal file
109
EXAMPLES/ANDORDEMO.txt
Normal file
|
@ -0,0 +1,109 @@
|
|||
NEW
|
||||
PREFIX
|
||||
AUTO 4,1
|
||||
#!/BIN/SH
|
||||
#
|
||||
# Complex AND OR Tests
|
||||
#
|
||||
SET A = 1
|
||||
SET B = 2
|
||||
SET C = 3
|
||||
SET D = 4
|
||||
ECHO -N "TRUE AND TRUE OR TRUE AND TRUE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -eq 2 ] OR [ $C -eq 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND TRUE OR TRUE AND FALSE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -eq 2 ] OR [ $C -eq 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND TRUE OR FALSE AND TRUE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -eq 2 ] OR [ $C -ne 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND TRUE OR FALSE AND FALSE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -eq 2 ] OR [ $C -ne 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND FALSE OR TRUE AND TRUE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -ne 2 ] OR [ $C -eq 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND FALSE OR TRUE AND FALSE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -ne 2 ] OR [ $C -eq 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND FALSE OR FALSE AND TRUE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -ne 2 ] OR [ $C -ne 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "TRUE AND FALSE OR FALSE AND FALSE ---> "
|
||||
IF [ $A -eq 1 ] AND [ $B -ne 2 ] OR [ $C -ne 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND TRUE OR TRUE AND TRUE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -eq 2 ] OR [ $C -eq 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND TRUE OR TRUE AND FALSE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -eq 2 ] OR [ $C -eq 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND TRUE OR FALSE AND TRUE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -eq 2 ] OR [ $C -ne 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND TRUE OR FALSE AND FALSE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -eq 2 ] OR [ $C -ne 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND FALSE OR TRUE AND TRUE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -ne 2 ] OR [ $C -eq 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND FALSE OR TRUE AND FALSE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -ne 2 ] OR [ $C -eq 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND FALSE OR FALSE AND TRUE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -ne 2 ] OR [ $C -ne 3 ] AND [ $D -eq 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
ECHO -N "FALSE AND FALSE OR FALSE AND FALSE ---> "
|
||||
IF [ $A -ne 1 ] AND [ $B -ne 2 ] OR [ $C -ne 3 ] AND [ $D -ne 4 ]
|
||||
ECHO TRUE
|
||||
ELSE
|
||||
ECHO FALSE
|
||||
FI
|
||||
MAN
|
||||
TEXT /MAKE/USR/SHARE/EXAMPLES/ANDORTESTS
|
|
@ -1,72 +1,72 @@
|
|||
NEW
|
||||
PREFIX
|
||||
AUTO 4,1
|
||||
A2OSX.LOGO
|
||||
A2OSX.SYSTEM
|
||||
BIN/ARP
|
||||
BIN/CAT
|
||||
BIN/CHMOD
|
||||
BIN/CHTYP
|
||||
BIN/CMP
|
||||
BIN/CP
|
||||
BIN/CUT
|
||||
BIN/DNSINFO
|
||||
BIN/EDIT
|
||||
BIN/FORMAT
|
||||
BIN/GREP
|
||||
BIN/HTTPGET
|
||||
BIN/IPCONFIG
|
||||
BIN/KILL
|
||||
BIN/LS
|
||||
BIN/LSDEV
|
||||
BIN/LSOF
|
||||
BIN/MD5
|
||||
BIN/MEM
|
||||
BIN/MEMDUMP
|
||||
BIN/MKDIR
|
||||
BIN/MORE
|
||||
BIN/MV
|
||||
BIN/NETSTAT
|
||||
BIN/NSCUTIL
|
||||
BIN/PAK
|
||||
BIN/PING
|
||||
BIN/PS
|
||||
BIN/RM
|
||||
BIN/RPCDUMP
|
||||
BIN/SH
|
||||
BIN/TELNET
|
||||
BIN/TERM
|
||||
BIN/UNPAK
|
||||
BIN/USERADD
|
||||
BIN/USERDEL
|
||||
BIN/WC
|
||||
BIN/WHO
|
||||
DRV/LANCEGS.DRV
|
||||
DRV/SSC.DRV
|
||||
DRV/SSC.I.DRV
|
||||
DRV/UTHERNET.DRV
|
||||
DRV/UTHERNET2.DRV
|
||||
ETC/HOSTNAME
|
||||
ETC/HOSTS
|
||||
ETC/INIT
|
||||
ETC/ISSUE
|
||||
ETC/MOTD
|
||||
ETC/NETWORK
|
||||
LIB/LIBBLKDEV
|
||||
LIB/LIBCRYPT
|
||||
LIB/LIBPAK
|
||||
LIB/LIBTCPIP
|
||||
SBIN/GETTY
|
||||
SBIN/INITD
|
||||
SBIN/INSDRV
|
||||
SBIN/KCONFIG
|
||||
SBIN/LOGIN
|
||||
SBIN/NETWORKD
|
||||
SBIN/TELNETD
|
||||
SYS/KERNEL
|
||||
SYS/KM/KM.APPLETALK
|
||||
SYS/KM/KM.NSC
|
||||
SYS/KM/KM.RAMWORKS
|
||||
SYS/KM/KM.VSDRIVE
|
||||
a2osx.logo
|
||||
a2osx.system
|
||||
bin/arp
|
||||
bin/cat
|
||||
bin/chmod
|
||||
bin/chtyp
|
||||
bin/cmp
|
||||
bin/cp
|
||||
bin/cut
|
||||
bin/dnsinfo
|
||||
bin/edit
|
||||
bin/format
|
||||
bin/grep
|
||||
bin/httpget
|
||||
bin/ipconfig
|
||||
bin/kill
|
||||
bin/ls
|
||||
bin/lsdev
|
||||
bin/lsof
|
||||
bin/md5
|
||||
bin/mem
|
||||
bin/memdump
|
||||
bin/mkdir
|
||||
bin/more
|
||||
bin/mv
|
||||
bin/netstat
|
||||
bin/nscutil
|
||||
bin/pak
|
||||
bin/ping
|
||||
bin/ps
|
||||
bin/rm
|
||||
bin/rpcdump
|
||||
bin/sh
|
||||
bin/telnet
|
||||
bin/term
|
||||
bin/unpak
|
||||
bin/useradd
|
||||
bin/userdel
|
||||
bin/wc
|
||||
bin/who
|
||||
drv/lancegs.drv
|
||||
drv/ssc.drv
|
||||
drv/ssc.i.drv
|
||||
drv/uthernet.drv
|
||||
drv/uthernet2.drv
|
||||
etc/hostname
|
||||
etc/hosts
|
||||
etc/init
|
||||
etc/issue
|
||||
etc/motd
|
||||
etc/network
|
||||
lib/libblkdev
|
||||
lib/libcrypt
|
||||
lib/libpak
|
||||
lib/libtcpip
|
||||
sbin/getty
|
||||
sbin/initd
|
||||
sbin/insdrv
|
||||
sbin/kconfig
|
||||
sbin/login
|
||||
sbin/networkd
|
||||
sbin/telnetd
|
||||
sys/kernel
|
||||
sys/km/km.appletalk
|
||||
sys/km/km.nsc
|
||||
sys/km/km.ramworks
|
||||
sys/km/km.vsdrive
|
||||
MAN
|
||||
TEXT /MAKE/USR/SHARE/MAKE/FULLFILES
|
||||
|
|
|
@ -65,31 +65,72 @@ SWITCH $RCS
|
|||
ECHO "Exiting"
|
||||
EXIT
|
||||
END
|
||||
ECHO "Which Prodos:"
|
||||
ECHO " 1) Asset ProDOS 2.03tc"
|
||||
ECHO " 2) Asset ProDOS FX"
|
||||
ECHO " 3) Asset ProDOS FX Paked"
|
||||
ECHO " 4) Build ProDOS 2.03tc"
|
||||
ECHO " 5) Build ProDOS FX"
|
||||
ECHO " 6) Build ProDOS FX Paked"
|
||||
READ -P "Enter 1-6: " PDOS
|
||||
IF [ -Z $PDOS ]
|
||||
ECHO "You did not enter any response."
|
||||
ECHO
|
||||
ECHO "Exiting"
|
||||
EXIT
|
||||
FI
|
||||
SWITCH $PDOS
|
||||
CASE 1
|
||||
SET PDOSFILE = "/MAKE/ASSETS/PDOS203TC/PRODOS"
|
||||
BREAK
|
||||
CASE 2
|
||||
SET PDOSFILE = "/MAKE/ASSETS/PDOS203FX/PRODOS.FX"
|
||||
BREAK
|
||||
CASE 3
|
||||
SET PDOSFILE = "/MAKE/ASSETS/PDOS203FX/PRODOS.FX.PAKED"
|
||||
BREAK
|
||||
CASE 4
|
||||
SET PDOSFILE = "${SRC}/PRODOS"
|
||||
BREAK
|
||||
CASE 5
|
||||
SET PDOSFILE = "${SRC}/PRODOS.FX"
|
||||
BREAK
|
||||
CASE 6
|
||||
SET PDOSFILE = "${SRC}/PRODOS.FX.PAKED"
|
||||
BREAK
|
||||
DEFAULT
|
||||
ECHO "You did not enter a valid response."
|
||||
ECHO "You must enter only one of the characters R C or S!"
|
||||
ECHO
|
||||
ECHO "Exiting"
|
||||
EXIT
|
||||
END
|
||||
ECHO "Formatting Destination..."
|
||||
FORMAT -B 1600 S7D2 FULLBOOT
|
||||
FORMAT -B 1600 S7D2 fullboot
|
||||
ECHO "Making Directory Structure..."
|
||||
MD /FULLBOOT/BIN
|
||||
MD /FULLBOOT/DRV
|
||||
MD /FULLBOOT/ETC
|
||||
MD /FULLBOOT/LIB
|
||||
MD /FULLBOOT/ROOT
|
||||
MD /FULLBOOT/SBIN
|
||||
MD /FULLBOOT/SYS
|
||||
MD /FULLBOOT/SYS/KM
|
||||
MD /FULLBOOT/TMP
|
||||
MD /FULLBOOT/VAR
|
||||
MD /FULLBOOT/VAR/LOG
|
||||
md /FULLBOOT/bin
|
||||
md /FULLBOOT/drv
|
||||
md /FULLBOOT/etc
|
||||
md /FULLBOOT/lib
|
||||
md /FULLBOOT/root
|
||||
md /FULLBOOT/sbin
|
||||
md /FULLBOOT/sys
|
||||
md /FULLBOOT/SYS/km
|
||||
md /FULLBOOT/tmp
|
||||
md /FULLBOOT/var
|
||||
md /FULLBOOT/var/log
|
||||
PAUSE
|
||||
ECHO "Copying Files..."
|
||||
FOR FILE IN (FULLFILES)
|
||||
CP -Q ${SRC}/${FILE} /FULLBOOT/${FILE}
|
||||
CP -Q ${SRC}/${FILE} /fullboot/${FILE}
|
||||
NEXT
|
||||
CP -Q -Y /MAKE/ASSETS/PDOS203TC/PRODOS /FULLBOOT
|
||||
CP -Q -Y INITBOOT /FULLBOOT/ETC/INIT
|
||||
ECHO "Welcome to A2osX!" > /FULLBOOT/ETC/ISSUE
|
||||
ECHO >> /FULLBOOT/ETC/ISSUE
|
||||
ECHO $IM >> /FULLBOOT/ETC/ISSUE
|
||||
CP -Q TCPIP.CONF /FULLBOOT/ETC/TCPIP.CONF
|
||||
CP -Q PROFILE /FULLBOOT/ROOT/PROFILE
|
||||
CP -Q -Y $PDOSFILE /fullboot/ProDOS
|
||||
CP -Q -Y INITBOOT /fullboot/etc/init
|
||||
ECHO "Welcome to A2osX!" > /fullboot/etc/issue
|
||||
ECHO >> /fullboot/etc/issue
|
||||
ECHO $IM >> /fullboot/etc/issue
|
||||
CP -Q TCPIP.CONF /fullboot/etc/tcpip.conf
|
||||
CP -Q PROFILE /fullboot/root/profile
|
||||
ECHO "FULLBOOT Disk Created!"
|
||||
MAN
|
||||
TEXT /MAKE/USR/SHARE/MAKE/MAKEFULL
|
||||
|
|
Loading…
Reference in New Issue
Block a user