• Please review our updated Terms and Rules here

New Sol-20 Owner

Do I need extra memory to run something from tape?

I wanted to see something run so I downloaded the TIC_TAC_TOE.wav file from Nama's FTP site and loaded it up. When I "XEQ TTT", I get the 909090 screen. If I do a GET, no problem, it seems but when I "EX 0", same thing. Since I know nothing about this, I figured I'd try C900 as the memory address since the sample in the manual asks you to write out test bytes there. That does the same thing as well. I also tried TRAIN.wav as it was smaller. Same thing but I started at 0100.

Could I still have an issue or is it a problem between "the seat and the keyboard"? Is there a decent reference I can use to learn?
 
Hey tried to find my screws to take a pic. It may take a little longer. I think I put them away with my Helios hardware so I'll have to look on the weekend.

Cheers,
Corey
 
Do I need extra memory to run something from tape?

I wanted to see something run so I downloaded the TIC_TAC_TOE.wav file from Nama's FTP site and loaded it up. When I "XEQ TTT", I get the 909090 screen. If I do a GET, no problem, it seems but when I "EX 0", same thing. Since I know nothing about this, I figured I'd try C900 as the memory address since the sample in the manual asks you to write out test bytes there. That does the same thing as well. I also tried TRAIN.wav as it was smaller. Same thing but I started at 0100.

Could I still have an issue or is it a problem between "the seat and the keyboard"? Is there a decent reference I can use to learn?
You'll need an S100 RAM card at 0000 to run most programs. The Sol main board only has RAM from C800-CBFF.

Mike
 
And make sure the ram card supports "phantom" and works.

I just went to test a disk image file to ENT program I wrote yesterday and discovered my 8kra card at 0000 has lost it's mind (addressing or refresh issue, not sure yet).

The other big thing to do before loading software is to calibrate your cassette interface PLL circuit. It's described in the doc and only requires some test clips, a volt meter and an audio cable. Until you do, there will be weird results to loading and saving software.
 
I'm still waiting on the Sun Type 4 keyboard in hopes its pads are still good, but in the meantime, I found that I've got problems with the UART used in the cassette interface. SAVE operations to cassette from SOLOS finish in 4-5 seconds now matter how much data I'm saving. No error is displayed.

I wrote a test program and determined the transmit buffer empty signal (TBRE) from the UART is permanently asserted, so all the data transmits in less than 100ms. Using a meter, I didn't find continuity from the TDRE pin on the UART to the line it connects to on the input bus. This explains why the signal always appears asserted. I pulled the UART out of its socket, cleaned up numerous ugly pins, reinserted it, and then the TDRE pin showed continuity to its input bus line. Thought I had an easy fix... but now when I run a tape save or my test routine, it hangs forever! I'll have to drag out the scope and dig into that tomorrow night.

Mike

This ended up being an interesting problem! The 4019 selector IC used to route the proper baud rate clocks to the UART (based on the 1200 or 300 baud selection) had a pin bent up under the chip. The bent up pin carries the clock used for 1200 baud to the UART. This previous owner must have only used 300 baud for cassette and wondered why his 1200 baud never worked!

Mike
 
Hi Corey,
What does your disk image file to ENT program do exactly?

Phil

On a related note, a .hex to .ent file utility on the PC would be handy to have. Does this utility already exist out there? If not, I can write one. Let me know.

By the way, I've had good luck loading .ent files at 9600 baud using TeraTerm. The primary issue is the screen scroll time in the SOL causing incoming characters to be missed. The SOL scrolls on both the CR and the LF at the end of each line. The TeraTerm feature to pause after each line pauses as needed after a CR, but not after the LF. This is why transfers still fail even when setting a delay after each line.

However, by stripping the LF's from the .ent file and setting a 100ms delay after each line, the transfer works great at 9600 baud. One easy way to strip the LF's from the .ent file is to open the file in Word (07 or newer), choose "Save As" and select "Other Formats." In the save dialog, choose "Plain Text (.txt)" as the file type and save the file. A "File Conversion" dialog box will pop up. Check the "Insert Line Breaks" check box and in the "End Lines With" drop down select "CR Only."

Mike
 
You'll need an S100 RAM card at 0000 to run most programs. The Sol main board only has RAM from C800-CBFF.

I have an SD Sales Expandroram board that I'll modify for the Sol-20. The directions were in Proteus News Volume 5 number 1. Hopefully the card works.

I was actually looking into Phantom and how it works. I have a wire from the bottom of my motherboard (one of the S-100 pins in the middle) to the power supply that I don't really know what it does. At some point, I'll take it apart again and see what pin it's connected to and if there is any voltage there. I can't see where the wire is hooked up in the power supply.

On another note, I dismantled the commoning block and pushed down everything again with a screw driver (the connectors don't seem to come out again) and I've been pretty good after a few hard start ups. I also learned how to use the "upper case" and "repeat" keys to do a "soft start up". Seems pretty solid so far.
 
I have an SD Sales Expandroram board that I'll modify for the Sol-20. The directions were in Proteus News Volume 5 number 1. Hopefully the card works.

I was actually looking into Phantom and how it works. I have a wire from the bottom of my motherboard (one of the S-100 pins in the middle) to the power supply that I don't really know what it does. At some point, I'll take it apart again and see what pin it's connected to and if there is any voltage there. I can't see where the wire is hooked up in the power supply.

Most all versions of the ExpandoRAM supported the Phantom line, so that shouldn't be a problem. Be sure to enable just the first 3 banks (0000-BFFF) on the ExpandoRAM (unless the Proteus instructions have a simple way around the memory conflict problem at C000).

The wire from the power supply to one of the S-100 pins is most likely to pick up a 60hz signal for a real-time-clock board the previous owner might have used.

Mike
 
Yesterday I made the changes to the ExpandoRAM card but I don't think it worked. It was originally set up for a Z80 machine so I'll have to double check what jumpers were previously set. I also disabled C000 on.

Here's the strange part and maybe it's my misunderstanding. I assume I should be able to write to 0000 if Phantom is working but I can't. I can write to C900 as the sample in the manual indicates. The 0000 memory page is all FFs and when I write to it and dump it back, it's still all FFs. This was the case without any cards. With the ExpandoRAM, I tried that and other boundaries and that wouldn't work either.

I'll have to do some more digging to see why this is the case. It sounds like there may be a "jumper" to disable Phantom as indicated in the Theory of Operations part of the manual but it doesn't really say where it is. Maybe mine is permanently disabled?

I'm learning the hard way but that's the way I learn best :)
 
What version ExpandoRAM card do you have? I have an ExpandoRAM Rev E outfitted with 4116's for 64K. I have it running in an 8080 machine already (an Altair). I'll see if I can make it work in the SOL this weekend and then we could compare jumper settings.

The Phantom* signal is asserted by the SOL mainboard only during the first four fetch cycles after a power on (POC*). These first four cycles fetch data starting at address zero. The intent of the Phantom* is to make the S100 RAM card NOT respond to these four fetch cycles. Instead, while Phantom* is asserted, the personality module responds to page zero addresses (as well as page 0xc0). The processor ends up retrieving a JMP instruction into the ROM during the first three complete cycles. Phantom* is de-asserted after the next cycle and the SOL is up and running in ROM back on page 0xc0.

Once the SOL is up, you should be able to read/write page zero in RAM. At this point, the Phantom* is not a factor. You're seeing all FFs because of some other issue with the ExpandoRAM card.

Mike
 
My ExpandoRAM is a Rev E also. After deciding to remove the card to test out memory without it and to check traces and jumpers, I looked at it and thought it was a little loose to be properly seated. The previous marks on the edge connector were not very deep so I thought I had seated it properly but with one last try, it went in about another 1/4 inch... <cough>idiot<cough>. One positive outcome; I read more and learned more than I would have otherwise. After that, I tried a couple of data entries and dumps and it works at page 0. I loaded up a couple of WAV files and after playing with the volume on my phone, got the WAVs to work too. I need to do some more extensive memory checking but I think we're good on this end in that regard. Reference that edition of Proteus and you should be good to go also.

My last issue is fuses still burning out once in a while. There's two things that get fed by the power plug and fuse holder and that's the fan and the transformer. I don't have a dirty or sticky fan. in looking at the manual, it indicates a 3amp fuse. It originally had a .75 amp slo-blow fuse and that went pretty quick. I've been blowing 1 amp fuses. Is the fuse 3A? That might be my problem.
 
That's great news.
It's also nice to see someone using the .wav files I made. They were recorded direct out of my SOL-20, and there has been no audio manipulation at all, so that should all work with no problems.

Congrats.
 
If anyone tracks down some of those cover fasteners, I'd love to get one.
It would be impossible to find anything like that here in Japan, the land of metric.

Cheers

Phil
 
Thanks for the pics Mike. These match up with the picture in the manual but I thought I had seen a picture somewhere with a 1/4 turn thumb screw. The thread is 10-24 on these so I went ahead and ordered these (I've been watching them since I started looking for the rear screws). They are not slotted or exactly the same but they are in that period and they should fit. The thread is 3/4" which should be fine according to your ruler.

Sol-20 not quite rear screws.JPG

Nama, there's two left for you if you want to snatch them up at http://www.ebay.com/itm/181362099856. They're relatively cheap and make good replacements until you can find the real ones.


Thanks for everyone's help.
 
Thanks snuci,
Seems that have all sold out already. I did find some 1/2" versions of the same thing. Do you think that will be long enough?

Phil
 
I don't know for sure if 1/2" will work but at that price, I think it's worth the gamble. Even the 3/4" is a gamble at this point if the thread diameter is not correct in the manual :)
 
The Sun Type 4 keyboard I ordered was $16.99 plus shipping. It came in Friday and it looks like it is brand new. I tore it apart and the pads look perfect. After a full swap out of pads, most of the keys worked. I could see no reason why the failed positions didn't work. After a couple of disassembly/inspect/reassembly sequences, I still had a few keys not working.

I then took some 600 grit fine sand paper to smooth all key locations on the PCB. I did this even though I didn't see or feel any real problem with the board. After cleaning off the board and reassembling, all keys now work great!

There are presently more of these keyboards available from the same seller both through eBay and outside of eBay.

Mike
 
Back
Top