Subject: HRD and configure questions...

From: "Marc H" <[email-masked]>
Date: Thu, 05 Jan 2012 23:15:21 -0000

I am in the middle of a HRD that is puzzling me and I think a bit of information may come in handy in trying to un-puzzle it....

In watching the Configure program operate it seems apparent to me that the program both determines that a card exists (at the CRU being queried) and it is indeed a RAM DISK.

My question is....  what mechanism does configure use to determine the card is a RAM Disk (and I need very specific information.)

Barring that does any one have the commented source for ROS 8.14F that I could look at ?

I appreciate it.

Hull

---

From: Jeff White <[email-masked]>
Date: Thu, 5 Jan 2012 19:49:33 -0500

Go to Thierry's site:

http://www.nouspikel.com/ti99/titechpages.htm

Scroll to the Downloads section and choose the Disassembled listings.  There you will find ROS source code commented by Thierry.  Additional info is on the website explaining operation and some patches.

Jeff White

---

From: Marc Hull <[email-masked]>
Date: Fri, 6 Jan 2012 14:58:13 -0800 (PST)

Thank you Jeff.  I have seen the info but haven't gleaned my answer from it.  

fact of the matter is that what my last question should have been was...

Barring that does any one have the commented source for -> CFG <-  (the configuration program) that I could look at ? (not the ROS code.)

There must be some simple technique that CFG uses to determine that the card in question is a RAM DISK.  I can guess at what the trick is but I would like to have facts and particulars on this one ;-)..

Got any more rabbits in that hat ???

--- On Thu, 1/5/12, Jeff White <[email-masked]> wrote:

From: Jeff White <[email-masked]>
Subject: Re: [TI994A] HRD and configure questions...
To: "[email-masked]" <[email-masked]>
Date: Thursday, January 5, 2012, 6:49 PM

  

      Go to Thierry's site:

 

I appreciate it.

Hull

---

From: Tony Knerr <[email-masked]>
Date: Fri, 06 Jan 2012 18:53:43 -0500

The CFG program was written by Gary Bowser. I asked him about the source 
recently (within the past year?)
and apparently he was unable to find it. I was able to continue my idea 
without the source, though.
I was able to restore the ramdisk DSR and disk(s) contents from a hard 
drive without using CFG, but it involved
knowing the CRU address of the ramdisk to begin with.

So, can you give us a clue as to what you are trying to accomplish?

Tony

On 1/6/2012 5:58 PM, Marc Hull wrote:
> Barring that does any one have the commented source for -> CFG <-  
> (the configuration program) that I could look at ? (not the ROS code.)
>
> There must be some simple technique that CFG uses to determine that 
> the card in question is a RAM DISK.  I can guess at what the trick is 
> but I would like to have facts and particulars on this one ;-)..
>

---

From: Marc Hull <[email-masked]>
Date: Fri, 6 Jan 2012 18:26:22 -0800 (PST)

Hey Tony....

Just trying to save my ass here...

I have a RAM disk that does not get recognized by the configure program and want to know why so it can be rectified.  I've done the obvious as it is a socket masterpiece but to no avail.  

The reason why CFG does not "see" the card as a RAM Disk will go a long way to fixing this card.... I think ;-)

--- On Fri, 1/6/12, Tony Knerr <[email-masked]> wrote:

From: Tony Knerr <[email-masked]>
Subject: Re: [TI994A] HRD and configure questions...
To: [email-masked]
Date: Friday, January 6, 2012, 5:53 PM

  

      

    The CFG program was written by Gary Bowser. I asked him about the
    source recently (within the past year?)

    and apparently he was unable to find it. I was able to continue my
    idea without the source, though.

    I was able to restore the ramdisk DSR and disk(s) contents from a
    hard drive without using CFG, but it involved

    Tony

      

                    Thank you
                      Jeff.  I have seen the info but haven't gleaned my
                      answer from it.  

                      fact of the matter is that what my last question
                      should have been was...

                      Barring that does any one have the commented
                      source for -> CFG <-  (the configuration
                      program) that I could look at ? (not the ROS
                      code.)

                      There must be some simple technique that CFG uses
                      to determine that the card in question is a RAM
                      DISK.  I can guess at what the trick is but I
                      would like to have facts and particulars on this
                      one ;-)..

---

From: Insane Multitasker <[email-masked]>
Date: Fri, 6 Jan 2012 22:20:28 -0600

Marc, I'll email you the 812 source.  

To: [email-masked]
From: [email-masked]
Date: Fri, 6 Jan 2012 18:53:43 -0500
Subject: Re: [TI994A] HRD and configure questions...

The CFG program was written by Gary Bowser. I asked him about the source recently (within the past year?)
and apparently he was unable to find it. I was able to continue my idea without the source, though.
I was able to restore the ramdisk DSR and disk(s) contents from a hard drive without using CFG, but it involved
knowing the CRU address of the ramdisk to begin with.

Tony

---

From: ti99_forever <[email-masked]>
Date: Fri, 6 Jan 2012 21:14:10 -0800 (PST)

I had this issue once... I wrote a Q&D assembly program to turn on the card and dump the ROS into it to save mine that time...

>________________________________
> From: Marc Hull <[email-masked]>
>Sent: Friday, January 6, 2012 9:26 PM
                      should have been was...

---

From: Marc Hull <[email-masked]>
Date: Mon, 9 Jan 2012 14:11:13 -0800 (PST)

Hmmmmmm.....  I have to back up a little here and ask some questions......

1) I have been attempting to toggle a known WORKING HRD with the MMem CRU instruction.  Funny think when I enter C<address> I just get a value of 1 and cannot change it.  Something odd about the HRD CRU structure or the way the MMem cart works ?

2) I know I should learn this but I'm pretty lazy and not that smart so could you all help me please.  I need some code that will set the CRU bit @ >1000 to a one.  Sorry for being a bum on the code here but my brain is like the 10 items or less lane and I don't want to have to put something back.

Thanks in advance...

Hull

 

    

    Tony

      

                    Thank you

---

From: tursi <[email-masked]>
Date: Mon, 9 Jan 2012 14:21:42 -0800 (PST)

> 1) I have been attempting to toggle a known WORKING HRD with the MMem CRU
> instruction.  Funny think when I enter C<address> I just get a value of 1
> and cannot change it.  Something odd about the HRD CRU structure or the way
> the MMem cart works ?

CRU bits are not exactly like memory - to read and write a CRU bit can do 
different things. It's very possible that the write is doing what you 
want, but the bit is not reflected back for read. The best way to check is 
to see if the card LED lights when you set the base CRU bit to 1. (You can 
also test that this works with other known cards, for instance, the disk 
controller should be at >1100, setting that CRU bit to 1 should light the 
disk controller card). Just always turn a card back off with 0 before 
turning on another one! :)

I don't have an HRD to verify this anymore, but I seem to remember it 
worked the same way.

> 2) I know I should learn this but I'm pretty lazy and not that smart so
> could you all help me please.  I need some code that will set the CRU bit @
> >1000 to a one.  Sorry for being a bum on the code here but my brain is like
> the 10 items or less lane and I don't want to have to put something back.

Pretty straight-forward this one. The CRU base is stored in R12 (always - 
the hardware relies on it), and then you simply use the SBO (Set Bit One) 
or SBZ (Set Bit Zero) commands to control single bits. These instructions 
take an offset from the address in R12, so you don't have to always change 
R12 around. So for your request it's literally just:

   LI R12,>1000
   SBO 0

---

From: Jeff White <[email-masked]>
Date: Mon, 9 Jan 2012 21:21:37 -0500

Not all cards turn on the LED with CRU bit 0.  The TI FDC does, but the RS232/PIO and P-code cards do not.

Once a card DSR is enabled, you should see >AA at >4000.

Jeff White

> I don't have an HRD to verify this anymore, but I seem to remember it 
<snip>

---

From: "Tony Knerr" <[email-masked]>
Date: Wed, 11 Jan 2012 01:01:16 -0000

--- In [email-masked], Marc Hull <marc.hull@...> wrote:
<snip>
> 2) I know I should learn this but I'm pretty lazy and not that smart so could you all help me please.Â  I need some code that will set the CRU bit @ >1000 to a one.Â  Sorry for being a bum on the code here but my brain is like the 10 items or less lane and I don't want to have to put something back.
<snip> 

Marc,

I had to dig a bit, but here's the code I first used to force the ROS into the ramdisk when CFG didn't work. Much the same as you're experiencing with CFG not recognizing the card, but the card worked ok otherwise. The >1500 in the START line is the CRU address, and ROSDAT is the ROS disassembled into data statements. Everything else is pretty self-explanatory.

Tony

       DEF  START
START  LI   R12,>1500
       SBO  0
       LI   R2,>ROSDAT 
       LI   R3,>4000
       LI   R4,>2000
MOVER  MOVB *R2+,*R3+  
       DEC  R4
       JNE  MOVER
       SBZ  0
       BLWP @>0000
ROSDAT DATA >AA81,>0000,>4036,>0000
       (disassembled data continues here...until...)
       END

---

From: Marc Hull <[email-masked]>
Date: Tue, 10 Jan 2012 17:36:26 -0800 (PST)

Just tried some borrowed  kludge to turn the card on.   Funny I used >1500 as well.  WTF is special about >1500 ?  What doc's did you use ?

More importantly.....  Why would a function like recognizing what a card was get fired ???   Seen quite a bit of that in the HRD's I have seen.

--- On Tue, 1/10/12, Tony Knerr <[email-masked]> wrote:

From: Tony Knerr <[email-masked]>
Subject: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Tuesday, January 10, 2012, 7:01 PM

  

      

<snip>

<snip> 

Marc,

Tony

DEF  START

START  LI   R12,>1500

       SBO  0

       LI   R2,>ROSDAT 

       LI   R3,>4000

       LI   R4,>2000

MOVER  MOVB *R2+,*R3+  

       DEC  R4

       JNE  MOVER

       SBZ  0

       BLWP @>0000

       END

---

From: Insane Multitasker <[email-masked]>
Date: Tue, 10 Jan 2012 19:50:13 -0600

timing related?   My card, for example, works in a Geneve using Schroeder's format program but CFG won't recognize it in the Geneve or TI.  Looks like you have a tough nut to crack... or a tough hull to breach.  ;l) To: [email-masked]
From: [email-masked]
Date: Tue, 10 Jan 2012 17:36:26 -0800
Subject: Re: [TI994A] Re: HRD and configure questions...

 

      

<snip>

<snip> 

Marc,

Tony

DEF  START

START  LI   R12,>1500

       SBO  0

       LI   R2,>ROSDAT 

       LI   R3,>4000

       LI   R4,>2000

MOVER  MOVB *R2+,*R3+  

       DEC  R4

       JNE  MOVER

       SBZ  0

       BLWP @>0000

       END

---

From: Marc Hull <[email-masked]>
Date: Tue, 10 Jan 2012 18:15:00 -0800 (PST)

Well.......... I'll be fugued.....

The memory mappers are 74HC154E's  (not HCT's) .........  HC is nonsyncopatible with TTL cigol me thought ???  

Both the working and non working cards have this.  Working card sometime needs a lot of foreplay though sometimes........

I'm starting to suspect the Mongolians.  Grott Dram Mongrorrians.....

--- On Tue, 1/10/12, Insane Multitasker <[email-masked]> wrote:

From: Insane Multitasker <[email-masked]>
Subject: RE: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Tuesday, January 10, 2012, 7:50 PM

  

      

timing related?   My card, for example, works in a Geneve using Schroeder's format program but CFG won't recognize it in the Geneve or TI.  Looks like you have a tough nut to crack... or a tough hull to breach.  ;l) 

 

      

<snip>

<snip> 

Marc,

Tony

DEF  START

START  LI   R12,>1500

       SBO  0

       LI   R2,>ROSDAT 

       LI   R3,>4000

       LI   R4,>2000

MOVER  MOVB *R2+,*R3+  

       DEC  R4

       JNE  MOVER

       SBZ  0

       BLWP @>0000

       END

---

From: Marc Hull <[email-masked]>
Date: Tue, 10 Jan 2012 18:41:33 -0800 (PST)

So Tim pointed I might have been a bit cryptic with the code below so let me restate and/or clarify...

Well.......... I'll be fugued.....
Means.... well.  I'll be F*cked....

The
 memory mappers on the cards are 74HC154E's NOT  74HCT154E's...  My 
understanding is the the HC family is NOT (nonsyn) COMPATIBLE 
(copatible) with TTL cigol....  (logic spelled bass-ack-wards.)  

Both cards have the HC version of the mappers and the working card needs both warming up and frequent rests...

I'm starting to suspect the
 Mongolians.  Grott Dram Mongrorrians.....

This is a South Park 
reference making fun of the Chinese restraint owner who keeps having to 
fix his wall ;-)  . Thought it was a lark.

Was mixing HC with TTL a common practice back in the day ?  Am I reading too much into this ?

--- On Tue, 1/10/12, Marc Hull <[email-masked]> wrote:

From: Marc Hull <[email-masked]>
Subject: RE: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Tuesday, January 10, 2012, 8:15 PM

  

 

      

        

 

      

<snip>

<snip> 

Marc,

Tony

DEF  START

START  LI   R12,>1500

       SBO  0

       LI   R2,>ROSDAT 

       LI   R3,>4000

       LI   R4,>2000

MOVER  MOVB *R2+,*R3+  

       DEC  R4

       JNE  MOVER

       SBZ  0

       BLWP @>0000

       END

---

From: Jeffrey White <[email-masked]>
Date: Tue, 10 Jan 2012 19:20:36 -0800 (PST)

Prey tell.  You are confusing the dickens out of me.

Did the HRD work with the HC prior?   

As for mixed marriages/co-habitation, success is about the same.  Queue the 
fugue.

Jeff White  

Sent: Tue, January 10, 2012 9:41:33 PM

So Tim pointed I might have been a bit cryptic with the code below so let me 
restate and/or clarify...

The memory mappers are 74HC154E's (not HCT's) .........  HC is nonsyncopatible 
with TTL cigol me thought ???  

The memory mappers on the cards are 74HC154E's NOT  74HCT154E's...  My 
understanding is the the HC family is NOT (nonsyn) COMPATIBLE (copatible) with 
TTL cigol....  (logic spelled bass-ack-wards.)  

Both the working and non working cards have this.  Working card sometime needs a 
lot of foreplay though sometimes........

Both cards have the HC version of the mappers and the working card needs both 
warming up and frequent rests...

This is a South Park reference making fun of the Chinese restraint owner who 
keeps having to fix his wall ;-)  . Thought it was a lark.

Was mixing HC with TTL a common practice back in the day ?  Am I reading too 
much into this ?

---

From: Marc Hull <[email-masked]>
Date: Wed, 11 Jan 2012 04:17:48 -0800 (PST)

One HRD works a good deal of the time (TI only.)  The other doesn't work on a TI but does evidently work on a Geneve.

Having the HC chips installed instead of a TTL compatible variety caught my eye.

--- On Tue, 1/10/12, Jeffrey White <[email-masked]> wrote:

From: Jeffrey White <[email-masked]>
Subject: Re: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Tuesday, January 10, 2012, 9:20 PM

  

 
 
As for mixed marriages/co-habitation, success is about the same.  Queue the fugue.
 
Jeff White  

The memory mappers on the cards are 74HC154E's NOT  74HCT154E's...  My understanding is the the HC family is NOT (nonsyn) COMPATIBLE (copatible) with TTL cigol....  (logic spelled bass-ack-wards.)  

This is a South Park reference making fun of the Chinese restraint owner who keeps having to fix his wall ;-)  . Thought it was a lark.

---

From: Tony Knerr <[email-masked]>
Date: Wed, 11 Jan 2012 17:46:16 -0500

On 1/10/2012 8:36 PM, Marc Hull wrote:
>
> Just tried some borrowed  kludge to turn the card on.   Funny I used 
> >1500 as well.  WTF is special about >1500 ?  What doc's did you use ?
>
> More importantly.....  Why would a function like recognizing what a 
> card was get fired ???   Seen quite a bit of that in the HRD's I have 
> seen.
>

I believe >1500 was the lowest free address I had at the time. Not sure 
what you're asking about docs(?), I just used some simple code to
get this-here image file loaded in to the DSR space on that-there card. :)

I, too, am interested in the code that CFG uses to check for the 
presence of a ramdisk. That was my purpose in originally requesting the code
from Gary. Let me know if you can glean anything from the code Tim sends 
you. Maybe if I'm lucky I'll get c.c.'d on that email. ;)

Tony

---

From: [email-masked]
Date: Thu, 12 Jan 2012 15:52:06 +0000 (UTC)

CRU 1500 is the RS232 card Mark. 

Try using 1900 as nothing uses that address or 1E00 is mostly not used. 

Rich 

----- Original Message -----
From: "Tony Knerr" <[email-masked]> 
To: [email-masked] 
Sent: Wednesday, January 11, 2012 2:46:16 PM 
Subject: Re: [TI994A] Re: HRD and configure questions... 

I believe >1500 was the lowest free address I had at the time. Not sure what you're asking about docs(?), I just used some simple code to 
get this-here image file loaded in to the DSR space on that-there card. :) 

I, too, am interested in the code that CFG uses to check for the presence of a ramdisk. That was my purpose in originally requesting the code 
from Gary. Let me know if you can glean anything from the code Tim sends you. Maybe if I'm lucky I'll get c.c.'d on that email. ;) 

Tony

---

From: Marc Hull <[email-masked]>
Date: Thu, 12 Jan 2012 12:59:09 -0800 (PST)

Okey doke.  Thanks for the heads up.  

--- On Thu, 1/12/12, [email-masked] <[email-masked]> wrote:

From: [email-masked] <[email-masked]>
Subject: Re: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Thursday, January 12, 2012, 9:52 AM

  

 
 
Rich

  

Tony

---

From: "Jens-Eike Hartwig" <[email-masked]>
Date: Fri, 13 Jan 2012 16:34:24 +0100

The HC/HCT is a correct design (looking at the HDR3000 schematics):
Battery backed CMOS RAM chips need a high -CE signal to turn off, the
fine print in the datasheets even says, -CE should be close to the
supply voltage for minimal power consumption. The -CE is generated by
the 74xx154, and they are on battery supply as well (this is necessary
to keep the output high when +5V are missing). TTL is not specified to
work at battery voltage, so 74LS (and HCT) is out. True CMOS outputs
(74HC) can drive -CE close to the battery voltage, but the inputs are
not TTL compatible. TTL outputs are <0.8V for low and >2.4V for high,
while CMOS inputs want minimum 3.5V for high... this is the problem you
describe. Well, the 2.4V are specified at maximum load, but the driving
outputs have nothing else to drive than the CMOS inputs, thus the
typical TTL output voltage (3.4V) may apply. Almost within limits :-(
If your HRD is not working properly, try replacing the germanium diodes
(they are doing a wired-OR function for negative logic) with a 74LS08,
or doubling the diodes with schottky types (eg BAT43) in parallel. 
If the logic voltage is the problem, another diode in the battery
voltage might help (CR8 of two diodes drops 1.4V instead of 0.7V): with
a supply of 4.3V, the minimum high input voltage drops to 3.2V (within
specs!!!).

GreeTIngs
Jens-Eike

-----Original Message-----
Date: Wed, 11 Jan 2012 13:17:48 +0100
Subject: Re: [TI994A] Re: HRD and configure questions...
From: Marc Hull <[email-masked]>
To: [email-masked]

One HRD works a good deal of the time (TI only.)  The other doesn't
work on a TI but does evidently work on a Geneve.

Having the HC chips installed instead of a TTL compatible variety
caught my eye.

--- On TUE, 1/10/12, JEFFREY WHITE _&LT;[email-masked]&GT;_
wrote:

	Prey tell.  You are confusing the dickens out of me.   Did the HRD
work with the HC prior?      As for mixed marriages/co-habitation,
success is about the same.  Queue the fugue.   Jeff White  

-------------------------
 FROM: Marc Hull <[email-masked]>
TO: [email-masked]
SENT: Tue, January 10, 2012 9:41:33 PM
SUBJECT: RE: [TI994A] Re: HRD and configure questions...

 So Tim pointed I might have been a bit cryptic with the code below so
let me restate and/or clarify...

The memory mappers are 74HC154E's (not HCT's) .........  HC is
nonsyncopatible with TTL cigol me thought ???  

Both the working and non working cards have this.  Working card
sometime needs a lot of foreplay though sometimes........

Both cards have the HC version of the mappers and the working card
needs both warming up and frequent rests...

This is a South Park reference making fun of the Chinese restraint
owner who keeps having to fix his wall ;-)  . Thought it was a lark.

Was mixing HC with TTL a common practice back in the day ?  Am I
reading too much into this ?

Links:
------
[1]
http://groups.yahoo.com/group/TI994A/join;_ylc=X3oDMTJnOTM4YjVhBF9TAzk3NDc2NTkwBGdycElkAzMyMzIxMDU5BGdycHNwSWQDMTcwNTExNTM4NgRzZWMDZnRyBHNsawNzdG5ncwRzdGltZQMxMzI2Mjg0Mjcw
[2] mailto:[email-masked]?subject=Email Delivery:
Digest
[3]
http://groups.yahoo.com/group/TI994A;_ylc=X3oDMTJlamQycXU2BF9TAzk3NDc2NTkwBGdycElkAzMyMzIxMDU5BGdycHNwSWQDMTcwNTExNTM4NgRzZWMDZnRyBHNsawNocGYEc3RpbWUDMTMyNjI4NDI3MA--
[4] http://docs.yahoo.com/info/terms/
[5] mailto:[email-masked]?subject=Unsubscribe

---

From: Marc Hull <[email-masked]>
Date: Fri, 13 Jan 2012 12:30:34 -0800 (PST)

Ok.....  It will take a minute for that to sink in.  ;-)  The question I raised but did not elucidate very well was....  perhaps the 74LS family (all the glue logic) was not going to be reliable driving the HC family  HC154E and maybe the fix was to either replace the HC with HCT or the LS with HCT.  

The standby voltage at U11 is around 4 volts currently.

--- On Fri, 1/13/12, Jens-Eike Hartwig <[email-masked]> wrote:

From: Jens-Eike Hartwig <[email-masked]>
Subject: Re: [TI994A] Re: HRD and configure questions...
To: [email-masked]
Date: Friday, January 13, 2012, 9:34 AM

  

specs!!!).

GreeTIngs

Jens-Eike

-----Original Message-----

caught my eye.

wrote:

 

Links:

------

[1]

Digest

[3]

---

From: "Marc H" <[email-masked]>
Date: Wed, 25 Jan 2012 22:00:27 -0000

--- In [email-masked], "Jens-Eike Hartwig" <j-e_hartwig@...> wrote:

> (they are doing a wired-OR function for negative logic) with a 74LS08,

Thanks JE.

I am puzzled as to why AND gates are used as a replacement for a wire run OR.   Could you elaborate a little please.  Yours is the next suggestion to go under the knife and I'd like to understand the logic (no pun intended) to your idea.

MH....

---

From: "Stuart" <[email-masked]>
Date: Thu, 26 Jan 2012 12:49:58 -0000

The diodes provide an OR function for negative logic - "give me a low output if this input is low, this input is low, or this input is low". Which is exactly what an AND gate does - if any input is low, the output is low.

Stuart.

--- In [email-masked], "Marc H" <marc.hull@...> wrote:
>
> 
> 
> --- In [email-masked], "Jens-Eike Hartwig" <j-e_hartwig@> wrote:
> >
>