Enterprise Forever

:UK => Hardware => Interface => Topic started by: gflorez on 2019.March.17. 17:53:45

Title: External Cartridge Bay Interface and Universal Memory Expansion
Post by: gflorez on 2019.March.17. 17:53:45
I want to try the external cartridge bay that Zozo sugested. But I need some schematics.

2x 74ALS138
1x 74LS32

First 74LAS138:
/E0 and /E1: /MREQ
E2: /RFSH
A0: A19
A1: A20
A2: A21
The 8 outputs are valid for 8x512K memory areas:
/Q0: 00H-1FH
/Q1: 20H-3FH
/Q2: 40H-5FH
/Q3: 60H-7FH
/Q4: 80H-1FH
/Q5: A0H-BFH
/Q6: C0H-DFH
/Q7: E0H-FFH

With the second 74ALS138 divide one 512K are for a 64K areas:
/E0 and /E1: /Qx from first 74ALS138
E2: +5V
A0: A16
A1: A17
A2: A18

If using /Q0: 00H-1FH from first 138, then the outputs of the second:
/Q0: 00H-03H
/Q1: 04H-07H
/Q2: 08H-0BH
/Q3: 0CH-0FH
/Q4: 10H-13H
/Q5: 14H-17H
/Q6: 18H-1BH
/Q7: 1CH-1FH

The selected output will be the new /CART signal. Using Q0 from the first, and Q2 from the second, then the new external cartridge will be at 08H-0BH, next to the original.
One gate from the 74LS32 make the /CART&RD signal.

Also need a 7805 (or compatible) or a +5V from bus card.

Ok thanks. I will study it and more questions will follow, for sure....

Similar decoding is made inside DAVE:

(https://enterpriseforever.com/interface-57/enterprise-midi-hardware/?action=dlattach;attach=23082;image)

I understand that /ROM is no more necessary, with your modified EXOS a ROM can exist on any 16kb boundary(Segment).

/CART&/RD  at B3 on the Cartridge Bay is decoded outside DAVE:

[attach=1]
--------------------------------

Ok, I will make a prototype of an External Cartridge Bay with all the 4MB addressing range options selected by jumpers. It could also be useful for testing a lot of other projects, to put 1 to 4 16KB RAM/ROM segments exactly and easily on the position where we want. A 4 socket 16KB cartridge PCB would be useful for it.

I only see a drawback, the code of the SD-Reader has to be re-written "segment-position-aware" to work externally. By now it only works at 04-07 segments because the RAM window is accessed at 07. The same with the MIDI interface.
Title: Re: External Cartridge Bay Interface
Post by: gflorez on 2019.March.29. 10:52:04
The 1st. Prototype works...

[attach=1]

[attach=2]

[attach=3]

The position of the 64KB area can be selected with two 8 position jumpers. As you can see on the front view, on the first 74LS138 the Q0 output is used, while on the second 74LS138 the Q2 output is selected. This positioned the external cartridge range at the 08H-0BH address as Zozo suggested. I have a lot of Roms installed on a FlashRom inside my old Enterprise, so I have used the VENUS cartridge to differentiate from them.

On the third picture you can see how the VENUS Rom has been found on the 08 segment.

Zozo: Surprisingly(for me), the SD reader works the same on the 08H-0BH range ....
Title: Re: External Cartridge Bay Interface
Post by: Zozosoft on 2019.March.29. 11:35:08
The 1st. Prototype works...
Nice work!

Quote
Zozo: Surprisingly(for me), the SD reader works the same on the 08H-0BH range ....
It is don't use fixed address, then not a surprise for me :-)
Only one question remain: the SymbOS use fixed address or ask it from the SDEXT?
Title: Re: External Cartridge Bay Interface
Post by: gflorez on 2019.March.29. 11:45:16
Symbos works. It uses the EXDOS drives from the list.

On the V9990 tests Prodatron didn't made a hard reset at the exit, and it returns clean to Basic, the only drawback , not freeing the Ram. SymbOS can be made EXOS friendly easily....
Title: Re: External Cartridge Bay Interface
Post by: gflorez on 2019.March.29. 12:21:55
With an empty internal Cartridge Bay and the SD reader at 08H-0BH.

SymbOS behaves the very same playing an MP3 song from the G: unit.

[attach=1]
Title: Re: External Cartridge Bay Interface
Post by: szipucsu on 2019.March.31. 12:37:23
With an empty internal Cartridge Bay and the SD reader at 08H-0BH.
SymbOS behaves the very same playing an MP3 song from the G: unit.
Here the Enterprise looks really an up-to-date computer! I mean the colourful SymbOS and the brand new hardware.
Title: Re: External Cartridge Bay Interface
Post by: gflorez on 2019.March.31. 15:00:08
Sorry, this is the normal 4 colour SymbOS Nick mode, but tomorrow I can take for you a picture or video of the new V9990  SymbOS mode.

------------

Perdón, esta foto muestra el modo normal de SymbOS a 4 colores de Nick, pero mañana puedo traerte una foto o video del nuevo modo V9990 de SymbOS.
Title: Re: External Cartridge Bay Interface
Post by: szipucsu on 2019.March.31. 16:08:55
this is the normal 4 colour SymbOS Nick mode
It is also cool.
Title: Re: External Cartridge Bay Interface
Post by: gflorez on 2019.April.01. 10:18:36
This is a V9990 SymbOS running from the external cartridge bay. Still a bit dull, because I had no time to search a desktop background picture for it.

[attach=1]
Title: External Cartridge Bay Interface and Universal Memory Expansion
Post by: gflorez on 2019.April.06. 02:01:07
Now that you have some experience with memory expansions, you (with your friend) can try to make a simple SRAM/Flash ROM card for the expansion bus.
The first 74ALS138 is totally the same as the External Cartridge Bay.
Then you can directly connect 512K chips to the 138 outputs, like my first Flash  (http://ep.homeserver.hu/Galery/Bovitmenyek/Picture/512K-FLASHROM~1.jpg)  ROM card (http://ep.homeserver.hu/Galery/Bovitmenyek/Picture/512K-FLASHROM~2.jpg).
But there are already a lot of configurations and some expansions have put memory somewhere, so it will be good idea to add some configuration options:
Each memory chip needs its own 74HCT151:
Input A,B,C: A16,A17,A18
Enable (G): GND
Input D0-D7: any output from the LS138. Each Input represent a 64KB area of the memory chip, that will be enabled in the selected 512KB area.
The Y output of each LS151 will be the CE of every associated memory chip

For example D0:Y2, D1:Y0, D2-D7:Y2, then the ROM chip will be at: 40h-43h, 04h-07h, 48h-5Fh. The second 64KB is moved to cartridge area, then you can install there the quick memory test for EXOS 2.0/2.1 (on a machine with original ROM), when no cartridge is used.
Another example, SRAM at top:
On EP64: D0-D6:Y7, D7:Y6, SRAM at E0h-FBh, DCh-DFh
On EP128: D0-D5:Y7, D6-D7:Y6, SRAM at E0h-F7h, D8h-DFh

For a card I suggest to place a 7805 with a jumper to select or not +5V from bus Pin4A/B. Then the card could be also used with a soldered edge connector to plug directly to the machine. This will be a good alternative to the internal memory expansions, for who doesn't want to open the machine.
Title: Re: External Cartridge Bay Interface and Universal Memory Expansion
Post by: Zozosoft on 2019.April.09. 10:09:36
Some more jumper suggestion: 512K SRAM and Flash ROM pinout are very similar. The main difference are the /WE location. It is on Pin31 at ROM and Pin29. Address line order only important at ROM, don't care at SRAM.
Put a ROM sockets with a jumpers for exchange Pin31/29 wires. Then any socket can be configured for use a RAM or ROM.
Title: Re: External Cartridge Bay Interface and Universal Memory Expansion
Post by: gflorez on 2019.April.09. 11:14:01
Good idea, but the jumpers marked as SRAM/FlashROM only, to avoid confusions.