Path: utzoo!attcan!uunet!mcsun!ukc!icdoc!mvax.cc.ic.ac.uk!sunb!umapd51 From: umapd51@sunb.cc.ic.ac.uk (W.A.C. Mier-Jedrzejowicz) Newsgroups: comp.sys.handhelds Subject: Re: Machine code on the 28S (and 48SX) Summary: A little about the Saturn processor instruction set. Message-ID: <1990Jun7.022758.17672@cc.ic.ac.uk> Date: 7 Jun 90 02:27:58 GMT References: <55022@microsoft.UUCP> <1990Jun4.222439.21761@portia.Stanford.EDU> <55066@microsoft.UUCP> Sender: news@cc.ic.ac.uk (USENET News System) Reply-To: umapd51@cc.ic.ac.uk (Wlodek Mier-Jedrzejowicz) Organization: Imperial College Computer Center, London, UK Lines: 39 Question 5 of the original posting was "How was the instruction set determined..." Alonzo Gariepy's reply concerns the nature of the instructions and the fields thsy use. Did the question ask about this, or about the way that users have found out what codes are used? If the question was the latter, then the answer is that HP released internal documentation on the HP-71B, the first HP handheld which used the Saturn processor. The price of the documentation was high enough to discourage most individual users from buying it, but a few did. When the HP-28C was released, HP told the user clubs that the 28C also used a Saturn processor, but with a few extra instructions. Some detailed analysis of the HP-28C, with a list of HP-71B Saturn instructions, and with the information from HP that a new instruction called PC=(A) was used, allowed me to sort out what was happening and publish a PEEK program in August 1987 for the HP-28C. That led to a lot of interesting work by other users, and HP eventually relented and released the full list of the new instructions to a user club. When the HP-28S came along, HP again released a full set of instructions to a few user club people, and this is the set described by Alonzo. The original set was called the "level 0" instruction set, the expanded instruction set used by the HP-28C is the "level 1" set, and the HP-28S and HP 48SX use the "level 2" set. Back to the origins of the instruction set - Alonzo points out that it could be better designed - well, this is like evolving an arm from a fin - the Saturn level 2 set evolved from the original Saturn set, and that evolved from the HP-41 CPU, which in turn evolved largely from the CPU used by the HP-25 and... Sure, HP might like something better suited to what is happening now, but they've got what evolved from back then. The same applies to the names/mnemonics used - they could be designed differently, but when Alonzo made a reasonable suggestion he found a lot of people objecting on the (also reasonable) grounds that a great deal of code had been written and documented using the HP mnemonics. So, a long answer to a short question, sorry... Wlodek Mier-Jedrzejowicz, Space and Atmospheric Physics, Imperial College, London. BITNET: UMAPD51@VAXA.CC.IC.AC.UK Unix: see header Disclaimer - the above are my opinions, not those of Imperial College or HP. If Alonzo has opinions on my opinions, I look forward to them!