Slush, the TINI Operating System Shell
Slush is the TINI command-line shell environment provided by Dallas Semiconduc- tor. It is similar to a very simple UNIX-like shell. In the default configuration of TINI, slush is loaded into bank 7 of the flash ROM so it runs as the default program when you power on your TINI.
Slush provides a handful of commands that interface to the TINI firmware. Slush is used for development and when you need to run interactive sessions on your TINI, but it is not a necessary part of the TINI. Once you have your application developed, you can load that program into bank 7 to run instead of slush (or you can run it as a program from slush if you want).
You load slush onto your TINI in a manner similar to loading the TINI firmware. From the JavaKit “File” menu bar, select “Load File” and navigate through your file system to find the slush.tbin file (same place as the tini.tbin file). Press the “Open” button to load slush to your TINI. This may take 5-10 seconds and you will see the same messages you did when loading the TINI firmware. If you saw any error messages (similar to what you might see when loading the firmware), try again. To execute the TINI firmware (the Java Virtual Machine) and any Java program you loaded, such as slush, you will need to exit the loader by typing “E” at the loader prompt. Do that now. You will see a long list of messages like the following:
——> TINI Boot <——
TINI OS 1.02
API Version 8009
Copyright (C) 1999 – 2001 Dallas Semiconductor Corporation
Running POR Code
Memory POR Routines
sient blocks freed: 074F, size: 024620
CPersistant blocks freed: 0000, size: 000000
Ethernet MAC Address Part Found
TTS Revision: 170 , Date: 1/25/01 2:11p
External Serial Port Init
External serial ports not enabled
Memory Available: 06FB60
Loading application at 0×070100
Application load complete
[-= slush Version 1.02 =-]
[ System coming up. ]
[ Beginning initialization... ]
[ Not generating log file. ] [Info]
[ Initializing shell commands... ] [Done]
[ Checking system files... ] [Done]
[ Initializing and parsing .startup... ]
[ Initializing network... ]
[ Starting up Telnet server... ] [Done]
[ Starting up FTP server... ] [Done]
[ Network configuration ] [Done]
[ System init routines ] [Done]
[ slush initialization complete. ]
Hit any key to login.
At this point you can press any key and get the TINI login prompt. The default user for a new TINI is root and the default password is “tini” (you won’t see this echoed to the screen as you type it).
Welcome to slush. (Version 1.02)
TINI login: root
TINI password: tini
If you did not get to the “Hit any key to login” prompt, you may have seen an error message similar to the following:
——> TINI Boot <——
TINI OS 1.0
API Version 8005
Copyright (C) 1999, 2000 Dallas Semiconductor Corporation
After the OS loads, it will try to bootstrap the program stored in
bank 7 – this is usually the slush command shell. Here is where you
might encounter the problem you described:
Loading application at 0×070000
Bad API Version:8009
Load App Failed!
This boot message is saying that you have version 1.0 (API version 8005) of the firmware loaded, while at the same time you are trying to run a version of slush compiled with TINI OS 1.02 (API version 8009). The numbers you see may be different but the point is that the firmware version and the slush version are not the same. That is why you get the “Bad API Version” message. You need to go back a few steps and reload the firmware (perhaps you skipped this) or download the latest TINI API to get the tini.tbin and slush.tbin files again. This error message typically is seen when one upgrades to a new version of the TINI API and tries to load slush without loading the firmware first (it’s easy to forget these things). Table 7- 1 shows the various updates to the TINI firmware and how the TINIOS version relates to the API version.
You can get an idea of what you can do with slush by typing help once you login.
TINI /> help
For more detailed help on any command, type help followed by the name of the command. Try this:
TINI /> help ls
ls [option] FILE
Returns a listing of the files.
[-l] Show file attributes
In the TINI installation directory on your computer, (\opt\tini\docs), is the file slush.txt that fully describes each command, its usage, and provides details you might need to know.