Sunday, July 11, 2021

C-64 troubles solved

One of my C-64s developed an issue with the keyboard.  The "E" key stopped working.

So I set it aside to be repaired and pulled out the "backup" C-64.  Boot up and...  Out of memory error - and I didn't load anything.  Diagnostics showed 6510 or RAM issue.  *sigh*

The "E" key issue went away when I swapped the plungers for the "E" and "R" keys.  But that issue will probably come back.  So when I had it open, I changed the Caps Lock key to be a plug that I can disconnect.

The replacement 6510 and RAM arrived for the "backup" C-64.

Now, I've been inside of C-64s before, but this one surprised me by having the 6510 and **some** of the RAM socketed.  That means that this system had issues before.

I tried the easy stuff first.  I replaced the 6510.  No change.  So it's a RAM issue.

I pulled the socketed RAM and one of the chips was highly oxidized.  So I replaced that chip with one of the new ones.  Everything works.  The Dead Test cartridge showed everything passed.

I think that this C-64 had been bought first, had a problem and was repaired.  Later, the guy got a new one and stored the old one in a more humid area, which caused that RAM chip (near to the edge of the case) to go bad over time.

So I'm back to 2 functioning C-64s.

Sunday, July 04, 2021

Lunch box portable - R.I.P.

The power supply blew.  This time there was smoke and it no longer works.

I'd like to fix it, but I think it's a lost cause - but mostly I don't want to experiment with high voltage stuff.

I examined the power supply closer trying to see if I can find the smoked component (no luck on that).  There's actually 2 power supplies there.

One is the standard PC power supply providing power to the motherboard and peripherals.  The other is just to supply power to the gas plasma display.  There was an extra power switch on the back of the PC that specifically controlled the display power supply.

I tried to source a replacement, but no luck so far.

It's not in the trash, but it is in storage for now.  I might find the parts useful for something in the future.  Or I may luck out and find a power supply.


Sunday, June 20, 2021

Lunch box Portable

So another neglected PC showed up on my doorstep recently.

A 386 "lunch box" portable.  The "lunch box" form factor was short lived as computer hardware and batteries got better and the "lunch box" was dropped in favor a regular laptop.

This old guy has an 80386, 80386sx co-processor, 5 GB RAM, 1.44 MB floppy, 40 GB MFM hard drive, red plasma monochrome display.

It actually started up (but the first power up shot out a spark but didn't seem to cause any problems - more on that later) but would not boot.  As expected, the hard drive was done.  So on to the disassembly.

It was obvious that this had been stored on concrete.  Concrete is porous and allows moisture to flow through it.  If you need to store things on concrete, it needs to be on top of something between it on the concrete.

Rust.  Lots of rust and oxidation.  I had to completely dissemble the power supply and de-rust the housing.  Even then, I had to end up spraying it with Rust-oleom just to keep the rust down.  That's where the spark came from - a piece of rust across some high-voltage lines.

So, that done, I moved on to spraying some of the places with deox-it, reseating several chips.  The 386sx had lots of oxydation - which caused issues with booting and even getting into the CMOS.

Oh, that's another thing.  The CMOS battery had died long ago and the previous owner had replaced it with regular alkalines - which he never removed before storing.  Ya, that toxic mess went into the trash.  I've made another alkaline pack, but I'll figure out how to handle the long term after I get it all working again.

Now I get a consistent boot and into the CMOS.

The MFM controller is gone.  It was too hard to find an MFM replacement, so I got a IDE/floppy controller card.  I have an IDE/CF card adapter coming soon to replace the hard drive.

The floppy drive had issues.  I didn't look too far into that yet.  I just grabbed my old 1.44 floppy drive from the display case and tested that out.

I tried DOS 6.2 and no go.  I kept going down until I found that DOS 5 will work with some issues (but they seem disk drive related).

So at this point, I have a consistent boot from floppy.  I'm going to try to removing the external floppy setup to see if I can get more reliability from the floppy drive.

I also disassembled and cleaned the keyboard.  So reassembly is next on the list today.

Tuesday, June 08, 2021

Kaypro "1"

I picked up a Kaypro 1 on eBay.  I bid bare minimum and got it (which means no one else wanted it).

When it arrived, I did the usual tear down and evaluation.

  • Disk drives in good condition.  Cleaned.
  • RIFAs replaced - because you know they will blow up.
  • Deoxit in the brightness POT.
  • Replaced the keyboard cable since it had gone bad.  Interestingly, the cable from my 4/83 worked, but the replacement didn't.  But the replacement worked on my 4/83 so all is good.
  • Keyboard good.
  • Replaced the case screws.  The previous owner(s) had replaced many screws with mismatched versions.

But what was strange was the ROM chip.  Instead of being labeled with the version number, it had "2.2G" on it - meaning CP/M 2.2G.  Also, there was a label on the back of the case that said "Kaypro 2".

More research showed at least 2 other Kaypros in the same state.  It seems that kaypro offered a service to "downgrade" your Kaypro 1 to a Kaypro 2/84.

The next step was boot disks.  I stole an OpenFlops out of the 4/83 and got several disk images from the Internet.  One of those images worked perfectly, so I use that to make several boot floppies.  Then I put the floppy drive back in and the OpenFlops back in the 4/83.

tl;dr I made several more disks, copying what I had from other sources and downloaded many files.  So I now have a nice disk library for the "1".

I'll probably do a Gotek upgrade to this at some point.  But my 5.25" stash is pretty large right now.  So I don't see a need.  The half-height drives in the "1" aren't nearly as bad as the full height ones from the 4/83.

I did upgrade my version of Super Star Trek to include the additional screen attributes that the 1 supports (since they didn't downgrade the video chip).  Mainly the reverse screen and the blink modes.

Thursday, May 06, 2021

Tandy 1500HD - Complete failure

tl;dr

If you are interested in working with or restoring vintage computers, avoid the Tandy 1500HD.  You will only be wasting your time and money.


The full story:

I picked up a Tandy 1500HD from Goodwill recently.  It came with 2 power supplies, an extra battery (probably dead too), original diskettes, and original documentation.

Once it arrived, I triaged it.  The display wouldn't light up, but it would flicker.  No beeps from the machine as it tried to boot.  The hard drive would spin.

I took it apart to see what was going on.  No leaking capacitors.  Good sign.  The clock battery looked good (i.e. not leaking but probably dead).  The Tandy 1500HD kept it's config in flash, so the battery was only there to keep the real time clock going when powered off.

I wish I had done more research on this before I paid for it.  The drives (both floppy and hard) are completely proprietary and not replaceable - and you can't even update them to flash drives like many old computers today.  The interfaces are completely non-standard.

The floppy drive belt was almost goo.  It loosened over time and just came off.  I attempted to replace it, but no go.  I figured that maybe I could get at least something working on it.  I also found out that the system won't even POST unless the hard drive is hooked up.

The display problem was simple.  The cable inside the display came off.  The old foam simply had broken down over time, allowing the cable to be pulled from the connector enough to not make a good connection.  That, at least, was a simple fix.


The bottom line is that to get this back to working condition, I'd need to replace the hard drive and the floppy drive.  Either with old stock or refurbished parts, or with modern replacements.  Unfortunately, neither exist.

Trying to find technical documentation on this computer was not fruitful either.  The usual places simply had nothing on them.  No repair guide.  Just PDFs of the documentation that came with the computer and some jumper settings (which, BTW, were incorrect).


So I wasted my money on this.  Hopefully you'll read this and not waste yours too.

Thursday, April 08, 2021

S-BASIC vs. Turbo Pascal

My next experiment was to take some of those S-BASIC programs and convert them to Turbo Pascal.

It wasn't a surprise that the conversion was pretty easy.  Much easier than M-BASIC to S-BASIC.  S-BASIC has more in common with Pascal than MBASIC.

 

Overall, Turbo Pascal is much better than S-BASIC.

Turbo Pascal has an IDE.  With S-BASIC, I needed to use an external editor.  The one that I had was TE, but that's actually a relatively new program.   But I probably could have used Wordstar - to keep the Turbo Pascal comparison apples-to-apples.

Turbo Pascal can compile to memory.  This greatly increases the speed of which it tells you where your errors are and makes it able for you to test your program quicker.

With S-BASIC, it's save, exit the editor, run the compiler, go back into the editor - and remember the line that had the problem.

As far as creating an actual .COM file, Turbo Pascal might have a slight speed advantage, but not enough to really notice.

 

So the reason for S-BASIC star not rising is proven.  Turbo Pascal is so much better.

Please don't take this as meaning that S-BASIC is bad.  On the contrary, it's really good, and if Turbo Pascal hadn't come out, it probably would have gotten much more traction.


Monday, April 05, 2021

S-BASIC - Bunco game

 So we start with a simple Bunco game written in BASIC.

10 PRINT "BUNCO"
20 S=0:W=INT(RND(1)*200)+300
30 FOR R=1 TO 6
40 PRINT "ROLLING..."
50 FOR Q=1 TO W: X=RND(1): NEXT Q
60 D1=INT(RND(1)*6)+1:D2=INT(RND(1)*6)+1:D3=INT(RND(1)*6)+1
70 PRINT "ROUND:";R;"Rolls:";D1;D2;D3
80 IF (D1=D2) AND (D2=D3) THEN 150
90 IF D1=R THEN S=S+1
100 IF D2=R THEN S=S+1
110 IF D3=R THEN S=S+1
120 PRINT "SCORE ";S
125 INPUT "PRESS ENTER";A$
130 NEXT R
140 PRINT "FINAL SCORE=";S: END
150 IF D1=R THEN PRINT "BUNCO!": S=S+21: GOTO 120
160 PRINT "MINI BUNCO": S=S+5: GOTO 120

The original for this was probably written for my Pocket Computer 2.

The S-BASIC version looks like this:

var s,w,r,q,x,d1,d2,d3=integer
var a=char

PRINT "BUNCO"
S=0
W=INT(RND(1)*200)+300
FOR R=1 TO 6
    PRINT "ROLLING..."
    FOR Q=1 TO W
        X=RND(1)
    NEXT Q
    
    D1=INT(RND(1)*6)+1
    D2=INT(RND(1)*6)+1
    D3=INT(RND(1)*6)+1
    PRINT "ROUND:";R;" Rolls:";D1;D2;D3
    IF (D1=D2) AND (D2=D3) THEN BEGIN
        IF D1=R THEN begin
            PRINT "BUNCO!"
            S=S+21
            end
        else begin
            PRINT "MINI BUNCO"
            S=S+5
            end
        end
    else begin
        IF D1=R THEN S=S+1
        IF D2=R THEN S=S+1
        IF D3=R THEN S=S+1
    end
    
    PRINT "SCORE ";S
    INPUT "PRESS ENTER";A
NEXT R

PRINT "FINAL SCORE=";S

Now, it certainly is much easier to read and much of the original code is there, but there was a significant amount of change to make this work under S-BASIC.

One gotcha was the 

60 D1=INT(RND(1)*6)+1:D2=INT(RND(1)*6)+1:D3=INT(RND(1)*6)+1

The S-BASIC compiler did not flag that as an error, but the assignments to D2 and D3 were simply ignored.

But lines 150 and 160

150 IF D1=R THEN PRINT "BUNCO!": S=S+21: GOTO 120
160 PRINT "MINI BUNCO": S=S+5: GOTO 120

Did get a compiler error because they came after the PRINT.

Lines 150 and 160 also have a second gotcha: The way to those lines is a GOTO within the FOR loop.  Again, the S-BASIC compiler flagged no problem, but the FOR loop simply exited after the first iteration.

 

Sunday, April 04, 2021

S-BASIC

On the Kaypro, there was something called S-BASIC.  S-BASIC was an early attempt at creating a "structured BASIC" language.  Think of what C++ was to C.  S-BASIC is to BASIC.

But while C++ would compile C programs, S-BASIC would not compile Microsoft BASIC programs.

To convert an MBASIC program to S-BASIC, you need to:

  • Declare all variables before their use.  That means you need to go through your BASIC program, find all variables and declare their type.
  • Remove all multi-line statements.  S-BASIC doesn't support ":" between statements.  At best, it simply ignores all the code after the ":".  At worst, compiler errors.
  • You cannot GOTO out of a FOR loop, even if you GOTO back in.

Other downsides:

  • Compile time is slow.  So the amount of time between changing something and seeing if it works is a while.
  • No IDE.  You need a text editor to write your code.
  • It cannot READ data files written by MBASIC.
  • You can still write spaghetti code, but you have the option to not do so.

So to take your MBASIC program to S-BASIC will require a great deal of rewriting.  Even for the really simple programs that I did, it was not quick.

S-BASIC came out about the same time that Turbo Pascal was popular on CP/M.  Turbo Pascal had the IDE and is a much richer language.  So it's easy to see why S-BASIC didn't really rise in popularity.

Sunday, December 06, 2020

PIGFX relook

After completely messing up my vt132 kit, I decided to give PIGFX another try.

PIGFX has come a long way since I last looked at it and it's very nice, but not perfect.

Good points:

  • It support graphic modes and sprites, so you can get closer to the real retro PC feel.
  • It's somewhat VT100/ANSI compatible.

Bad points:

  • It's somewhat VT100/ANSI compatible to the point where it's frustrating.

Frustrations:

It does not support any of the VT100 attributes.  No bright/dim, underscore, blink, reverse or hidden.

The color codes aren't even close to VT100/ANSI.  It would have been nice if they were somewhat close.

It's close enough to VT100 where you just want to run the VT100 codes, but not having the attributes is frustrating when you want to highlight something.

Something on my RC2014 (I don't know where) wraps the text when it gets to 80 columns and it takes the escape sequences as part of that 80 columns and may wrap your text when you don't expect it.


So I'm going to play with this a little more and maybe see what I can do to get around the frustrations.

Friday, October 30, 2020

New Server - Update

The SATA to USB cables are starting to fail.

So, don't buy these cables.  I picked up some one from StarTech, which is usually a very good company.  We'll see what happens.

The good news is that I simply need to see what drive isn't working and unplug it.  Then plug in the new cable.  Then reboot the Pi and I'm done.


Sunday, October 25, 2020

Osborne Executive - Part 3 - Final

So the new floppy controller chips arrived.  No go.

But this time it got worse.  I reseated and cleaned all the socketed chips and now it doesn't even self-test.

I did try a test where I replaced the Z80 in it with the Z80 from one of my RC2014, and put the Osborne Z80 into an RC2014.  Nothing.

What I believe happened is this:  The Osborne was stored for many years in a poor environment and the chips have gone bad.  My reseating them was sort of the last straw and they gave up.

So the plan is to reassemble it just to keep it together.  Then I'll research what it would take to interface the display in it to my RC2014Pro and maybe install the RC2014Pro into the Osborne case.  That would be cool and still be fairly true to the system.

Tuesday, October 20, 2020

Osborne Executive - Part 02

Well, that took a bad turn.

I pulled the floppy controller chip.  It was pretty tarnished.  According to people, the pins are silver plated and, therefore, tarnish.

So I pulled the chip and used a soft wire brush and removed the tarnish.

But still no boot.

Someone else said that I needed to replace the socket.  Another use for the Hakko desoldering tool I got for my birthday!

The socket replacement went smooth.  No problems.  I had an extra socket that fit the floppy controller chip perfectly.

But I got it assembled enough to test and now it doesn't pass the self-test.

I checked everything over.  No solder bridges.  No bad solder points that I can see.

Perhaps the floppy controller chip is really bad and now the system can see it.  Cross my fingers.  I get the replacement chips later this week.

Thursday, October 15, 2020

Osborne Executive - Part 01

 A few weeks ago, I picked up an Osborne Executive.


If you don't know the term The Osborne Effect, check out the link.  This is the computer that was involved in that mess.

At first, it looked good.  It booted to a "Insert disk into A: and press Enter", but none of the boot media that I picked up with it worked.  So on eBay I got some.

In the mean time, I dismantled it and cleaned it.  I knew it was going to be dirty, but I didn't realize that the guy who owned it decided to keep it in his "man barn".  A sealed, but not heated/cooled "garage" in the back yard.  I'm surprised that it still even powered up without blowing something.

So my boot media arrived and still no go.  I keep getting the Boot Error (meaning that something's wrong reading the floppy drive).

So it's back in many pieces again.

I tried switching the floppy drives.  No go.

I checked the cable for damage.  Nope.

I had already cleaned the drive and the heads, but I put my head cleaner in and did that.  Still nothing.

Now focusing on the floppy controller.

More in part 2 later.

Sunday, October 11, 2020

What's the point of the Whit-less lockdowns?

Sorry for the ramble, but I did a lot of driving yesterday and had time time to think.  I got to wondering what the point of all this lockdown BS is from Whit-less.

It's unsupported by the science and very unpopular.

Now, we all know that Whit-less is egotistical tyrant, but even tyrants usually don't do something just to feed their egos.  There's always some point behind it.  So I got to wondering what the point is.

She's not getting re-elected in 2020.  That's almost a certain at this point.  The fact that the crazies are going after her demonstrate that the pressure she's putting on the population is getting too high.  She's put too many people out of work and caused too many businesses to close.

Could she be trying to suppress the vote?  Most people voting Republican don't trust the USPS to do their job (rightly so) and deliver the ballots on time (if at all).  So those people will be voting in person.  If anything, she's suppressing the Democrat vote.  That leads to the question: Is she trying to de-legitimize the election?  Claiming that due to problems, that the Republican candidates really didn't win.

But the Democrats have been playing the long game for a long time now.  They've taken over the Media and the schools and have been indoctrinating generations of people.  I think that everything that they are doing isn't for the next few years, but to set things up for the next few decades.

(Side note: the theory that Pelosi's 25th Amendment tactic really isn't against Trump but against Biden.  She sets it up now that people aren't thinking along those lines to make it more plausible when they use it.)

Right now:
1. I think the purpose of the masks is to keep people in fear.  Fearful people tend to not think before doing, making them easier to control.
2. I think the purpose of the lockdowns is to kill businesses and the economy.  That may seem strange, but the fewer jobs, the more people on the gov't dole and dependent on the Democrats for that hand out.  Keep that up for long enough, and people lose their will to get off the dole.

Sadly, that means that the lockdowns won't end after the election.  It will be harder for her to keep it up now that the Legislature is back in the picture.  But the longer she can keep people down, the less apt they will be able to get work after the lockdowns and the more dependent on the Democrat hand outs.

Sunday, October 04, 2020

Tandy 1400LT upgrade - update

So all the parts finally arrived and I attempted to replace the sticky B: drive with a Gotek.

Short update: Failure.  I will have to create my own 26-34 pin adaptor.

Long update:

The goal was to replace the B: drive with a Gotek.  If I got that to work, I'd replace the A: drive as well.  I got a 26-to-34 pin adaptor from eBay.

I have both a standard Gotek + FlashFloppy and an OpenFlops and I tried them both.

So, partial disassembly and unplugged the B: drive.  I plugged the 26-to-34 pin adaptor into the Gotek and hooked the B: drive into the cable.

First issue: The Gotek must be set to the S0.  Otherwise, the A: drive won't read at all.  Simple fix of moving the jumper and tried again.

This time A: booted up fine, but B: would not do anything.  I tried the OpenFlops with the same results.

Next attempt, I hooked up just the Gotek.  No other floppies.  That worked.  So I know that everything works.  Why doesn't it work with another floppy?

The answer is in the Tandy 1400LT Service Manual.  Go to the Appendix C - 3.5 inch FDD Specification, Physical Interface.

The problem is Pin 6.  For the Tandy 1400LT, that pin is Drive Select 1.  But in the 26 pin floppy specification, that pin is Disk Change.  So a general 26-to-34 pin adaptor won't work.  I would have to build my own specific for the 1400LT.  That's a project for another time.


But the day wasn't a complete loss.  I had purchased yet another 1400LT on eBay that was non-working and was able to recover many parts - including the floppy drives.  So while I had the computer apart, I replaced the sticky B: drive with one from the parts system.  So the sticky B: drive is fixed.

I'll see if it's worth my time to build my own 26--to-34 adaptor.


Saturday, September 19, 2020

Tandy 1400LT upgrade

I was able to pick up another Tandy 1400LT on eBay for a good price.  This one has a much better screen, probably due to the fact it was taken better care of.  The new one came with a home made cover.

The only issue is that the B: drive is a little sticky when removing diskettes from the drive.  Of course, it's a special 26-pin drive connector (thanks Tandy) and replacing the drive is impossible.  Or is it?

Enter the Gotek.  I was able to source a card that will let me connect the 26-pin connector to a standard 34-pin floppy connector with power.

The Gotek arrived today, so I put Flash Floppy on it.  The only problem is that one of the 7-segment displays is missing a few functional segments, but that doesn't hurt anything for what I'm doing.

Now to wait for the other parts and see if this works.

Final truck project - complete

The final truck project (for the year, at least) is complete.

This will be the last one for this year since the weather won't cooperate for painting.

But I no longer have a goal, so unless I get a really good deal on eBay, that will probably be it for a while.

Sunday, August 30, 2020

Completed projects

 My latest truck project is complete.  See here for all the details.


It was actually complete weeks ago, but the roof needed more percussive maintenance and I broke the replacement windshield doing so.  I decided to wait until my next project needed parts and I would just order them all at once.


So the actual latest project is this.


I spent some time yesterday wiring up the flasher on top.  It turned out really nice.


But I needed to add more display space to hold them all.



Thursday, July 16, 2020

Power supplies don't last forever

I sold off one of my Tandy 1100FDs not too long ago.  It was the unmodified one (i.e. with the real floppy drive).  But it looks like I also sold it with the only good power supply that I had for them.

Today, I took out my Gotek-enhanced 1100FD and powered it up for a project to play with the CGP-115 (color printer/plotter).  For some reason the printer wouldn't work with my Linux box with the USB/Parallel cable.

So I fired up the 1100FD and... it wouldn't.  Then it finally started up.  Then powered off.  Uh, oh!  Is it broken?  It looked like a power issue.  But it stayed up, so I had some fun playing Star Trek.  But it powered off in the middle of the game.

Now I knew that there was a problem.  So I checked the power supply.  9.5V and seemed stable.  I moved the cord (thinking there might be a short), but no problems.  But I felt like it was a power supply issue since this PC was just sitting on a shelf for a while.

So I located a power supply from the spare parts box that was the correct voltage, but low amps (I figured that would be OK since the floppy was no longer physical) and, low and behold!, it worked without a problem and stayed up.

Now I know that the C-64 had power supply issues.  Over time, C-64 power supplies would go bad and increase the 5V power line and fry your C-64.  That's why we tell people who find old C-64's at their parent's house to get a new (yes, they actually make new ones) power supplies for their C-64 before they play with it.

So my 1100FD power supply didn't do that (fortunately), but finding a replacement power supply was hard.  It took some searching to find a 9V 2A center-negative power supply.  But I was successful in the end.

Monday, June 01, 2020

Refusing to wear a mask

So this is a side note from my previous post.

The decision to not wear a mask is 2 fold:
1. Refusing to participate in the fear mongering that our Tyrant is doing in order to keep power.
2. Knowing that wearing a mask is useless right now.

Now, our decision to not go to our favorite store comes from the fact that the store is private property.  They get to set the rules for their property.  If they require a mask, we will respect that decision and feel no animosity toward them.  We will return when they lift the stupid rule that was forced on them.

We will not comply with the mask edict from our Tyrant, but we will respect the business, so we simply will not go.

The funny thing is that other stores have been requiring a mask for a while now, but no one has said "boo" about us not wearing one.  But should that happen:
1. If it's another customer, they will be told in no uncertain terms were to stick it and I will not be polite about it.
2. If it's a store employee, we will be polite, refuse and continue on our way through the store.
3. If the store director asks us to leave, we will do so respectfully, and quietly.  We may never be back or we might come back the next day.

But we will never comply with arbitrary, baseless, useless demands from Tyrants.