Well,
Looking at the REXCPM board, it is possible to go from 3 signals on the
jumper to 4.
This would allow for A15 to be brought in, and to identify the special case
where /BANK3 is zero but the address bus is 8000-9FFF.
At first blush I can't think of a good way to solve this other than by
adding a wire.

Which puts the T200 install on the same page as T102, with a single wire
required.


On Wed, May 25, 2022 at 10:16 PM Stephen Adolph <twospru...@gmail.com>
wrote:

> AH, I see your point.
> I stand corrected, A15 is not on the socket.
> [image: image.png]
>
> So, maybe your suggestion works; is A15 needed at all?
>
> Yes, I think it is needed.
>
> How would you tell the difference between these two addresses, from the
> perspective of REXCPM?
>
> 0000  vs 8000.
> Both have /BANK3 = 0, and /BANK6=1.  And A14 to A0 = 000000000000000.
>
>
> Seems like you gotta have an additional signal, A15.  And A15 is NOT on
> the memory card.  That means you would need to jumper in from inside the
> case.
>
>
> Thanks, good discussion. I think I got all excited but I forgot which part
> of the address was multiplexed!!
>
>
>
> On Wed, May 25, 2022 at 10:08 PM Stephen Adolph <twospru...@gmail.com>
> wrote:
>
>> Couple of comments.
>>
>> Agree with your rule, but REXCPM is even more fancy.
>>
>> It supports 32k bank switching in 0000 to 7FFF and 2 banks of 16k
>> switched at 8000 to BFFF and C000 to FFFF.  So REXCPM has to differentiate
>> a bit based on which bank is indicated.
>>
>> All this bank switching to support RAM disk as well as general option rom
>> switching, plus general ram banking.
>>
>> I agree the service manual isnt clear.  But I know from experience that
>> ALE can latch A8 to A15 in T200 and M100 option rom socket.
>>
>> One diagram does make it clear though.  I'll snip and send separately.
>>
>> 8085 in general has a multiplexed address bus.
>>
>>
>>
>> On Wednesday, May 25, 2022, B 9 <hacke...@gmail.com> wrote:
>>
>>> Yes, that helps quite a bit. Thank you.
>>>
>>> One more question: If you are already handling situations 1 & 3 — bank3
>>> is low and bank 6 is high for both, so A15 must be checked — why not reduce
>>> the scenarios to a single rule:
>>>
>>>    - If either bank3 or bank6 is low, address is 0 to FFFF, rexcpm
>>>    responds.
>>>
>>> —b9
>>>
>>> P.S. Where can I read more about the data latched in by ALE? The Tandy
>>> 200 service manual and technical reference make it look like the AD bus is
>>> holding only the lowest 8 bits of the memory address, A7 to A0, so I do not
>>> yet understand how it contains A15.
>>>
>>>
>>> On Wed, May 25, 2022 at 6:10 PM Stephen Adolph <twospru...@gmail.com>
>>> wrote:
>>>
>>>> when bank3 is low, address 0000 to 7fff, bank6 is high, rexcpm responds.
>>>>
>>>> When bank6 is low, address a000 to ffff, bank3 is high, rexcpm responds
>>>>
>>>> When bank3 is low, address 8000 to 9fff, bank6 is high, rexcpm responds.
>>>>
>>>> All of these scenarios are unique.  Cpm gets 64k when option rom and
>>>> optikn ram 2 are engaged.
>>>>
>>>> Yah?  Hope that helps.
>>>>
>>>> Steve
>>>>
>>>>
>>>>
>>>>
>>>> On Wednesday, May 25, 2022, B 9 <hacke...@gmail.com> wrote:
>>>>
>>>>> I'm a little confused.
>>>>>
>>>>> It sounds like you're selecting on /BANK3 = 0 (option ROM selected)
>>>>> AND  /BANK6 = 0 (expansion RAM selected). But, if I'm reading figure 4-6
>>>>> from the service manual correctly, /BANK3=0 AND /BANK6=0 will always be
>>>>> false because no two banks are ever selected at the same time. Decoders
>>>>> AA0037 and AA0038 are mutually exclusive, governed by the same logic: NOT
>>>>> (A15 AND (A14 OR A13)).
>>>>>
>>>>> That is, it appears that for addresses 8000 to 9FFF, bank 3 is
>>>>> selected: /BANK3=0 and /BANK6=1.
>>>>>
>>>>> Or, am I missing something?
>>>>>
>>>>> —b9
>>>>>
>>>>> On Wed, May 25, 2022 at 5:41 PM Stephen Adolph <twospru...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> I've been thinking about it too.
>>>>>>
>>>>>> /BANK6 is perfect for selecting that ram bank for address A000 to
>>>>>> FFFF.  No issue.
>>>>>>
>>>>>> I believe that  , when option rom is selected, it is actually
>>>>>> selected for all addresses from 0000 to 9FFF.
>>>>>>
>>>>>> Now about A15.  It is actually present in the socket because the AD
>>>>>> bus is present and ALE is present.
>>>>>>
>>>>>> So all you need is a register to capture it. A15 is AD7 sampled by
>>>>>> ALE.
>>>>>>
>>>>>> The T200 diagrams dont call the bus AD but it is.
>>>>>>
>>>>>> So, the T200 ram adapter needs to supply
>>>>>> 1. Battery voltage
>>>>>> 2. /WR
>>>>>> 3. /BANK6  (and or BANK5)
>>>>>>
>>>>>> Three wires, the same as M100 REXCPM but with different logic
>>>>>> implemented in the CPLD.
>>>>>>
>>>>>> For the record, in M100 and T102 REXCPM disables the internal ram by
>>>>>> manipulating RAMRST.  This isn't necessary for T200.  The option rams can
>>>>>> be replaced by REXCPM.  Back driving RAMRST takes only a few mA.
>>>>>>
>>>>>> So yeah I think it works.  I am thinking about a few little
>>>>>> experiments to confirm my suspicions.
>>>>>>
>>>>>> Still a lot of firmware and software work to do.  I already laid out
>>>>>> the adapter. That's easy... ;)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wednesday, May 25, 2022, B 9 <hacke...@gmail.com> wrote:
>>>>>>
>>>>>>> If you can get A15 without a blue wire, it does not seem that you
>>>>>>> would need the new select signal based on /BANK6. Requests for 8000 to 
>>>>>>> 9FFF
>>>>>>> appear to already go to Bank 3, so you'd just need to detect addresses 
>>>>>>> in
>>>>>>> that range in the OPTION ROM. It looks like the service manual schematic
>>>>>>> for bank select does that using NOT( A15 AND (A14 OR A13) ).
>>>>>>>
>>>>>>> —b9
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Mon, May 16, 2022 at 3:57 PM Stephen Adolph <twospru...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> I took a fresh look at the T200 "all ram mode" which would be
>>>>>>>> needed for REXCPM to work (nicely).
>>>>>>>> Summary: it is actually feasible I believe to implement an all RAM
>>>>>>>> mode fairly easily, which would support CP/M nicely.
>>>>>>>>
>>>>>>>> *Issue 1.  The 8k ROM at 8000-9FFF*
>>>>>>>> * as shown on the schematic, the M15 ROM is only enabled when
>>>>>>>> /BANK1 is low and A15 is high.
>>>>>>>>    (also reference the 8k rom datasheet in the tech reference
>>>>>>>> manual)
>>>>>>>> * also as shown on the schematic, the M13 32k ROM is only enabled
>>>>>>>> when /BANK1 is low and A15 is low.
>>>>>>>>
>>>>>>>> *SO - the 8k range is only active in /BANK1.*
>>>>>>>>
>>>>>>>> *Issue 2.  Creating an all RAM mode*
>>>>>>>> * /BANK3 enables the option ROM socket for 0000-7FFF address range
>>>>>>>> * /BANK6 enables the 2nd option RAM socket for A000-FFFF address
>>>>>>>> range.
>>>>>>>> * a new select signal is needed for when /BANK3 = 0 (option rom
>>>>>>>> selected) AND A15=1 (upper addresses) AND  /BANK6=0
>>>>>>>>     (so when we are using the option ROM, and address is in range
>>>>>>>> 8000-9FFF)
>>>>>>>>
>>>>>>>> * A15 is available in the OPTION ROM socket indirectly; as shown in
>>>>>>>> the service manual in Figure 4-3, the AD bus is provided to the option 
>>>>>>>> ROM
>>>>>>>> socket, as is ALE.  This means that A15 is present on AD7 (D7) on the
>>>>>>>> falling edge of ALE.
>>>>>>>>
>>>>>>>> *SO - by stealing /BANK6 from the 2nd Option RAM socket, REXCPM
>>>>>>>> could be programmed to provide an all RAM mode.*
>>>>>>>>
>>>>>>>> *What's needed to make REXCPM support T200*
>>>>>>>>
>>>>>>>>    1. A modified REXCPM that is able to deduce when to enable RAM
>>>>>>>>    in the 8000-9FFF range.
>>>>>>>>    2. an Adapter Board sitting in Option RAM #2, which sends 3
>>>>>>>>    signals to REXCPM  (1)  Battery voltage  (2) /RD signal and (3) 
>>>>>>>> /BANK6
>>>>>>>>    signal.
>>>>>>>>    3. an updated RXCMGR application
>>>>>>>>    4. an updated "T200 CP/M"  IE the M100 CP/M modified to use the
>>>>>>>>    T200 environment.
>>>>>>>>    5. updated CP/M uilities
>>>>>>>>    6. (VirtualT updated to support REXCPM for T200...)
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sun, May 15, 2022 at 5:35 PM Stephen Adolph <
>>>>>>>> twospru...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> There would have to be a convenient plug and play ideally way to
>>>>>>>>> decode that.
>>>>>>>>> From what is present in the ram module compartment, I dont see a
>>>>>>>>> good solution.
>>>>>>>>> I'll take another look.
>>>>>>>>>
>>>>>>>>> On Sunday, May 15, 2022, B 9 <hacke...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I, too, would love to see RexCPM for the Tandy 200.
>>>>>>>>>>
>>>>>>>>>> I apologize for my ignorance, but why is there a hole? For ROM?
>>>>>>>>>> Would it be possible to bank out 8000 to 9FFF and replace it with 
>>>>>>>>>> RAM when
>>>>>>>>>> running CPM?
>>>>>>>>>>
>>>>>>>>>> —B9
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Sun, May 15, 2022 at 9:44 AM Stephen Adolph <
>>>>>>>>>> twospru...@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi
>>>>>>>>>>>
>>>>>>>>>>> At this time, no.   It would require some changes due to the
>>>>>>>>>>> unique memory map in the T200 relative to the M100.
>>>>>>>>>>>
>>>>>>>>>>> I think the biggest issue is that an all ram mode is not clearly
>>>>>>>>>>> possible.  There would be a hole fro. 8000 to 9FFF.   That's not 
>>>>>>>>>>> great for
>>>>>>>>>>> CPM.
>>>>>>>>>>>
>>>>>>>>>>> Steve
>>>>>>>>>>>
>>>>>>>>>>> On Saturday, May 14, 2022, Hiraghm <hira...@hotmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Is there an equivalent to the Model 100 REXCPM rom for the
>>>>>>>>>>>> Model 200?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>

Reply via email to