[comp.sys.handhelds] RAM

alo@kampi.hut.fi (Antti Louko) (01/09/91)

In article <1991Jan8.131352@ee.ubc.ca> jmorriso@ee.ubc.ca writes:
>Some new SYSEVALS:
>These SYSEVALS are for the EQ Lib only, plugged into port 1. I take no
>responsibility
>for whatever bad things happen to you if you use these!

Actually, the addresses below are not correct if you have a RAM card
in port 2 and it is MERGEd with the main memory. In such a case,
HP48SX swaps the adresses of the cards so that port2 becomes
80000-BFFFF and port1 becomes C0000-FFFFF.

>Addres Name	Number	Size(bytes)
>80000: FIN	(270)	 3184.0
>818E0: EQLIB	(273)	 7168.0
.
.
>Evaluating theses sysevals just leaves the library on the stack where
>you can play with
>it ( STO. ATTACH. it is an ordinary object).
.
.
>Add 40000h to all these values if it is in port 2.

Anyway, here is an easier way to get all variables (or pointers to
them) of a port to the stack:

%%HP: T(3)A(D)F(.);
@ input is a port number (real)
\<< # 18CEAh SYSEVAL @ convert real to short
    # 21922h SYSEVAL @ get all variables in the port to the stack
    # 18DBFh SYSEVAL @ convert the count to a real
    DUP 2 + ROLL DROP @ remove the port number from the stack
\>>
@ output is port variables and the number of them (real)

As you have probably noticed, you can't get variables (libraries) in a
ROM card or in write-protected RAM card by << :portno:libraryno RCL >>.
This is probably meant as a primitive copy protection of ROM cards.

	Antti

rrd@hpfcso.HP.COM (Ray Depew) (01/15/91)

In comp.sys.handhelds, frank@grep.co.uk (Frank Wales) writes:

    As any old-time HP owner will tell you, in order to make something
    uneraseable, you need to snip its corner off.  If you were to crack open
    your Equation Library card and examine the actual memory chips, you'd
    see that the top-left corners are missing.  In the old days, this was an
    unavailable part of the storage area, but technology improves, and so
    today one has the choice of 100% usage, or write-protection and 98%
    usage (+/-1%, dependent on the width of one's scissors).

Just make sure you snip off the correct corner.  If you do the wrong corner,
your 48 will only do algebraic.  Thinks it's a TI.


Ray again
-- okay, who's gonna put the next silly thing on here?

umapd51@cc.ic.ac.uk (W.A.C. Mier-Jedrzejowicz) (01/17/91)

Ray Depew asks who is going to be next to follow up on Frank Wales'
comment about protecting memory from being overwritten. Well, I seem to
recall that HP-67/97 cards with a corner snipped could be write-enabled
by use of a special cut-down card with just a corner (the hardware
solution) and HP-41 cards with a corner clipped could be reused if flag
14 was set (the software solution). Logically, then, there should be a
liveware solution to HP48 RAM chips with the corner cut - stick your
finger on the cut-off corner! Hmmm - better ground yourself first.
Anyone else with a firm footing in reality and their feet on the ground
care to comment? (I suspect that there may be a quantum uncertainty
effect here - can you recover more memory than was lost in the first
place? ;-) ).
Wlodek Mier-Jedrzejowicz, Space and Atmospheric Physics, Imperial
College, London

jsims@vuse.vanderbilt.edu (J. Robert Sims) (01/19/91)

Wlodek Mier-Jedrzejowicz asks if anyone else with a firm footing in reality and
their feet on the ground care to comment on nipping the corners of RAM chips.
OK:  here's the modern reality.  Only cheap calculators nip the corners off for
write protection.  The real way to write protect a RAM is to take a small nip
out of the _middle_ of one end.  This creates two quantum wells with opposite
polarity which cancel each other.  The result is that the RAM is write
protected, but the overlapping quantum functions actually reconstruct the bits
that were physically removed.  A RAM chip is like a hologram; each part can
be used to reconstruct the whole.  In this case, the fields are strong enough
to reconstruct the physically missing bits, but weakens the field as a whole
so that writing to any part of the RAM becomes impossible.  Since nipping part
of the RAM does not reduce the amount of memory, the question still remains
of why the EQ lib card is not totally full?  

Rob