My Experiences with 64HDD

Started by airship, September 11, 2007, 01:17 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

airship

I've spent the better part of my free time this past week setting up a PC to act as a server for my C128. :)

This is the story of my experience.

First off, I had been using an XM1541 cable on my main PC, running CBM4WIN under GUI4CBM4WIN to transfer files to floppies. But I had some issues with it locking up, or not reading the directory of the CBM disk, etc. And every time I wanted new software, I had to unplug a '71 and hook it up to the PC. Eventually I got smart and dug out an old 1541 and dedicated it to the task. But after a couple of weeks I had a box full of floppies, most of them only written on one side with D64 images.

There had to be a better way.

I hadn't tried 64HDD, though it sounded cool, because it has to run in DOS mode. I tried it in an XP DOS box and it just wouldn't function. And I didn't want to have to dual-boot my main PC, or reformat an NTFS partition to FAT32 so I could write to it.


http://www.64hdd.com/index_en.html

I checked my local computer recycler, and sure enough they were closing out some 'inferior' systems due to 'no demand'. But an 'inferior' system turned out to be an Intel Celeron 1GB box with CD-ROM, 20GB hard drive, Ethernet-on-board, and 128MB of RAM. I figured that would be good enough for a C128 server. Especially at their closeout price of $40.00!! The one I picked was a cute little desktop box with an Intel chipset, which I chose for two reasons: (a) I figured Intel chips would have a lot of support and would therefore be relatively easy to set up, and (b) the small desktop form factor would blend in better aesthetically with my C128 setup - no big, honkin' tower for me!

After a bunch of reading - and thinking back to what I knew very well a decade ago but have since forgotten most of - I found that Windows 98 was the last true DOS-based Windows. I didn't have Win98 SE, which would have been more stable, but I DID have a very, very early copy of Win98 that I got from MS because I'd been a beta tester. Best of all, I had a license to install it on as many boxes as I want. I checked into buying a copy of SE, but my recycler wanted $45 for a copy of that, more than I paid for the computer. So Win98 it was.

After installation, I messed around with various drivers and settings until I got the on-board Ethernet working. This was NOT trivial, and I'm still not quite sure what combination of factors worked. But it did. Setting up TCP/IP and getting it to talk to my WinXP box was also an ordeal. Your mileage may vary.

Then I tried running IE to run Windows Update, and got nothing but errors. I needed the latest and greatest IE for Win98. So I downloaded it onto my WinXP box and transferred it over the network to my Win98 box, installed it (v6.1, I think) and suddenly I had Windows Update! So I got all the latest stuff installed and going.

(Oh, did I forget to mention that I also picked up a KVM box and cables so I could switch my PC keyboard, mouse, and monitor back and forth between my main XP PC and my Win98 box? Cost a grand total of $50 for a 4-way switch box with two cables, and it was a BARGAIN at that price. I bought it to use when I rebuild PCs, but it's been invaluable for this project. In fact, I'm going to pick up another $15 cable so I'll have one free for rebuilding again.)

So far it's all been about setting up a Win98 box and getting it to talk to my XP box. Now for the C= stuff.

I had a copy of 64HDD on my WinXP box, so I shot it over the network and got it installed. I CAREFULLY read the manual and found that I needed an XE1541 cable, not an XM1541 cable. Fortunately, I had one in the garage. So I dug that out and hooked it up. I figured out the options I wanted and started it from a DOS box.

It worked, but wasn't the most stable thing in the world. I had to run from DOS, not a DOS window. The 64HDD manual was VERY clear on this point. I just wanted to get away with murder. But before I resigned myself to that (which would have meant figuring out how to set up the network connection from DOS, which is not a trivial thing) I tried just maximizing the DOS Window with ALT-ENTER. Viola! Suddenly my little spinner thingie was spinning like mad, and my downloads were working 95% of the time! I figure this is about as good as it's going to get, right?

My main problem is with long file names. 64HDD has LFN support, but only if you run it from pure DOS. (See note on networking hassles above.) So I'm living without it, which means any files I want to access have to have shortened 8.3 format names. No big deal.

So I've got a couple of C128 drives (10 & 11, if I remember right) mapped to different directories on my Win98 server C: hard drive, and I've even got one (13) mapped to its CD-ROM D:. Not only that, but the drive (15) mapped to the WinXP NTFS drive F: actually reads pretty well. The C128 can't write to 15 because it's NTFS, and there are some timing issues across the network, but short files and directories load pretty well, and even big files work about 80% of the time. Anything critical I can just transfer across the network to the Win98 C: drive. I can even keep Firefox running in the background on the Win98 box and go out and download new files, then pop back to the DOS box, maximize it, and read them into the C128. Not QUITE a direct Internet connection for the C128, but close. And I'm still trying to figure out if I can map a drive to an FTP site (the answer so far is 'maybe') or if I can use it for Contiki or another web browser (probably not).

Best of all, I can do all of my file management, zip extraction, etc., from Win98, and just let the C128 worry about loading programs.

My only change on the C128 side was to reroute my serial cables a little more thoughtfully, and to program my function keys to give me directories of all SIX of my drives. (KEY 5,"DIRECTORYONU10"+CHR$(13), etc.) Plus there's one key programmed to load programs with an optional drive identifier: KEY8,"DLOAD>>>>>>>>>>>>>>>>>>ONU" (those '>' symbols are cursor-rights in CBM talk). This puts the cursor at the end of the line so I can just type in the drive number and hit ENTER to load a file.

The biggest hassle really is all the C= software that assumes your only drive will be 8. So I have to keep a floppy in drive 8 all the time and transfer files to it when they won't run properly off of 10, 11, etc. But it's just a 'scratchpad' setup. When I'm done, I copy any data files I've created back to the hard drive, and HEADER the disk so I can use it again.

So for $40 I've got CD-ROM*, hard drive, Ethernet, and Internet access on a dedicated C128 server. With free software. Not too shabby, huh?

*I burnt a CD with ALL of the Ahoy, Compute's Gazette, ReRUN, Transactor, etc. disks on it. And my WinXP machine is downloading the entire CompuServe archive with wget as I post this. I'll burn that tonight. Sweet!
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

swordfish1030

All's I can say at this point is WOW!!! Very nice job....

I use to own a c128 from about 87ish to 1991. I have always missed that machine and all the fun I use to have. I ran a BBs for a while
and I have always wanted to get back into the C128 world. I have a C128 coming soon and I so can not wait! I feel like a kid again =o)

I know I will have more questions later.. Thank you for sharing that.

Mangelore

Cool! :hurra:

I setup an old mini-ITX pc as a C128 hard drive some time ago using 64HDD Pro. The Pro version was a breeze to setup in DOS.

The only problem I had to overcome was a IRQ conflict with the the onboard USB and the XE1541.

nikoniko

QuoteI've spent the better part of my free time this past week setting up a PC to act as a server for my C128.
Good stuff! PC as servant to C128 -- that's the way things should be. :)

I can't remember how flexible the Win 98 task manager is, but have you tried setting the process priority to High (perhaps fullscreen mode is doing that automatically, though) or Realtime (might crash the OS, but then again maybe not)? Maybe you'll be able to squeeze out another couple percent of reliability without resorting to pure DOS.

airship

Yeah, I've definitely got some optimization issues. Again,  I think most of them come from running in a DOS window, not pure DOS. You've got a good idea, but if I remember right, task manager in 98 only works at the application level, not the process level. I'll check when I get home tonight.

I think the main problems are: (a) I can't lock the C: drive in a DOS window, and (b) networking is always running as a time-consuming background process.

I may just decide to run under pure DOS without the network, then boot to 98 with networking in between sessions just to transfer files into local drives. I mean, having access to a drive on my XP machine over the network from my C128 is cool and all, but it's really not reliable enough to be good for much but the 'gee-whiz' factor. :)

And I DO miss having LFN support, which I'd get back right away under DOS. I've almost convinced myself. Maybe tonight...
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

Guest

Quote from: MangeloreCool! :hurra:

I setup an old mini-ITX pc as a C128 hard drive some time ago using 64HDD Pro. The Pro version was a breeze to setup in DOS.

The only problem I had to overcome was a IRQ conflict with the the onboard USB and the XE1541.
Can you go into more details on this, I'm having problems using a USB keyboard on my mini-ITX system (the PS/2 keyboard port is dead).

Blacklord

Quote from: plbyrd
Quote from: MangeloreCool! :hurra:

I setup an old mini-ITX pc as a C128 hard drive some time ago using 64HDD Pro. The Pro version was a breeze to setup in DOS.

The only problem I had to overcome was a IRQ conflict with the the onboard USB and the XE1541.
Can you go into more details on this, I'm having problems using a USB keyboard on my mini-ITX system (the PS/2 keyboard port is dead).
Are you running DOS ? You may need to enable DOS USB support in the BIOS as DOS isn't aware of USB devices - also you will need a DOS USB device driver as well.

cheers,

Lance

Mangelore

Quote from: plbyrd
Quote from: MangeloreCool! :hurra:

I setup an old mini-ITX pc as a C128 hard drive some time ago using 64HDD Pro. The Pro version was a breeze to setup in DOS.

The only problem I had to overcome was a IRQ conflict with the the onboard USB and the XE1541.
Can you go into more details on this, I'm having problems using a USB keyboard on my mini-ITX system (the PS/2 keyboard port is dead).
I wasn't planniing on using a USB keyboard. I installed 64HDD Pro and could not get it to wrok even though I knew that the XE1541 cable was good as it worked with Star Commander on my laptop. I e-mailed Nick Coplin who advised me to try disabling the USB controller in the BIOS. Once disabled 64HDD Pro worked like a charm.

airship

I tried booting to pure DOS and the problems were as bad as ever, if not worse. I can load directories pretty reliably, and short programs load okay. But I can't load a longer program to save my soul.
But hey, at least long file names worked under DOS! :P

I tested last night by doing an I0, DLOAD, I0, and DVERIFY loop on a 96-block .sfx file, and couldn't get a single good load/verify after 20 tries.

Surprisingly, putting the C128 into FAST mode seems to make things somewhat MORE reliable! (But that's subjective, not objective.)

I'm sure I've got all the command-line options right: -xe -lfn -faster -xyz +p 1000
Do I need to add or take away anything? I've tried leaving off the -faster and +p options, or using +p without  a speed specified. Nothing changes.

BIOS seems fine, I'm booting with a minimum of stuff enabled, I'm just about out of ideas.

Could be the XE cable, I suppose, but then why would it work sometimes and not others? And it worked fine for file transfers under CBM4WIN before I switched it out for the XM cable. XCTEST reports it's working fine, too.

The 64HDD manual DOES say that 'on-board parallel ports may not work' but I can't see why, as long as they're set right. Do I need to pick up a PCI parallel port card and try that? Seems silly to do so, but I'm willing to try just about anything by now.

It's one of those things that has been working just well enough to be enticing, without working well enough to be useful! :sjuk:
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

Guest

Quote from: admin
Quote from: plbyrd
Quote from: MangeloreCool! :hurra:

I setup an old mini-ITX pc as a C128 hard drive some time ago using 64HDD Pro. The Pro version was a breeze to setup in DOS.

The only problem I had to overcome was a IRQ conflict with the the onboard USB and the XE1541.
Can you go into more details on this, I'm having problems using a USB keyboard on my mini-ITX system (the PS/2 keyboard port is dead).
Are you running DOS ? You may need to enable DOS USB support in the BIOS as DOS isn't aware of USB devices - also you will need a DOS USB device driver as well.

cheers,

Lance
Yes, I have the BIOS USB-Keyboard emulation turned on, otherwise I'd have no keyboard.  Nick Coplin indicated to me that this steals CPU cycles away from 64HDD and is the reason I was experiencing so much instability with 64HDD Pro on this system.  Since the PS/2 port doesn't work I basically can't do anything with it.  If Mangelore is correct and it's an IRQ conflict between the BIOS' USB-Keyboard emulation and the parallel port then I could theoretically resurrect this system.

airship

THANK YOU THANK YOU THANK YOU!!!

That was enough of a hint to help me find my problem!

I went into the BIOS and turned off 'Legacy USB Support' and now I am getting 100% PERFORMANCE from my 64HDD!

Even though Windoze had reported NO IRQ conflicts, obviously something was going on there. Since my keyboard and mouse are both PS/2 and I'm not running any other USB stuff from the 98 box, I didn't need USB anyway.

At least it all works from DOS 6.22. Now to see if it works from a Win98 DOS box! :D
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

Mangelore

Quote from: airshipAt least it all works from DOS 6.22. Now to see if it works from a Win98 DOS box! :D
Cool! Let us know how you go.

airship

64HDD still has timing issues in the Win98 DOS box, even when I turn off the Win USB driver. I suspect the Network, among other background tasks. Even running with the DOS box maximized (while better) doesn't make it 100% good.

BUT rebooting to Win98 DOS mode does! So I don't have to keep a DOS 6.22 boot floppy around, and I don't have to partition and dual-boot my drive. I can boot to Win98 and do my downloading, file maintenance, and networking to my XP box, then reboot to Win98 DOS (without networking or USB support) and run 64HDD, and everything works great! I even get back LFN support. My CD-ROM still works from Win 98 DOS, though I can no longer (obviously) map a network drive to the XP box since I don't have networking under Win 98 DOS. Oh, and LFNs don't work for CDs under DOS without jumping through various convoluted hoops.

But who cares? I'm happy. :D
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

nikoniko

That's great news. Glad you got things working 100%. :)

RE: networking from DOS,  have you looked at The Universal TCP/IP Network Bootdisk?

airship

Yeah, I tried that. I assumed it was gumming things up since 64HDD wasn't working well with it implemented. But that was before I tried turning off USB. Also, it's based on 32-bit Windows, which is stretching it, I think.

What I've got works, and I went through so much to get here that I'm just settling down and enjoying the heck out it right now for awhile.

But maybe I'll play with it again, because it WOULD be fun to have a mapped drive from the XP on NTFS serving files to my C128 over the network. I mean, how cool can you get?
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

xlar54

Is there a way to get networking via DOS 6.22?  If I remember, there was a TCP stack for DOS.  This is one of the reasons I never messed around with it either.  Im so surprised that in a day when you have 3.x GHZ processors, that we still need DOS.  Would Linux offer any benefit here?

Blacklord

Quote from: xlar54Is there a way to get networking via DOS 6.22?  If I remember, there was a TCP stack for DOS.  This is one of the reasons I never messed around with it either.  Im so surprised that in a day when you have 3.x GHZ processors, that we still need DOS.  Would Linux offer any benefit here?
Yes Virginia, you can network DOS (sorry.....)

Good guide with links here.

The network install disks are still available from Micro$oft too, this site has a lot of info on going down that path.

cheers,

Lance

11001010

If using 64HDD, the kernal replacement and pwr-load cable, or one of his speed-up cartridges are totally worth the money.  Speeds things up a lot.  Last time I did a test, I could load a 200 block program in about 4.5 seconds.

airship

I'd send him money right now if they weren't C64-only. I wish he'd come up with C128 support. What is wrong with these hardware add-on people? 64HDD, MMC64, Retro Replay and RR-Net - none of them works with the C128!!! (At least 64HDD provides GEOS 128 support..)

Anyway, 64HDD is already a bit faster than floppy, and the ability to access gigabytes of data, organized in directory structures, with multiple mapped drives, and direct access to PC files, is very, very cool.

But I think the best part is eliminating my parallel-to-1541 setup for transferring files. Downloading them in Win98 mode directly to my 64HDD directories is definitely cooler. And I can transfer text files and images over my home network from my XP PC to my 64HDD machine. Even though I'm still doing this in 'offline' mode, then switching to DOS for actual access, it's still much, much faster than 'floppynet' ever was. And once I jump back in and set up networking in DOS (I will, I will) then I can map to my XP drives directly across the network. I had it set up that way once and thought it was interfering with the 64HDD timing, so I took it out. But now that I'm pretty sure it was the USB support, I don' t think networking will necessarily be a problem.

EDIT  Okay, I just took another look and found this about the PROFESSIONAL version of 64HDD. In my defense, it was buried a couple of pages down on the site:

QuoteFor the C128 User...
Yes, there's even a version of 64HDD Professional which gives C128 users all the above features, plus these exclusive features:

    * Z-Loader - a serial fastloader for the native C128 mode
    * Pwr-Loader Support - the fastest 64HDD loading system is now available for the C128
    * GEOS128 Kernal - including the new Xtra Performance (XP) features
    * Native mode BOOTing - use the C128 BOOT feature to automatically LOAD/RUN applications
So obviously I'm going to have to send him some money for the Professional version. Which is okay, because it is a fantastic product, and I can't believe he distributes such a powerful free version.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

nikoniko

Quote from: airship...Retro Replay and RR-Net - none of them works with the C128!!!
Well, a couple of smart people have told me that, theoretically, RR-Net connected via a disabled Retro Replay cartridge should work on the 128 in 128 mode. However, no one seems to have ever actually tried it, or if they have they're keeping the results a secret. :(

There is some circumstantial evidence: the Singular web browser supports 128 mode, and can be compiled to support either RR-net or (E)TFE. Since people have told me that The Final Ethernet will not work, then I have to assume that RR-net does... at least theoretically. :ironisk:

11001010

I have the 128 version of 64HDD Pro.  Go for it, it's worth it just for the great GEOS support.  GEOS 128 works really, really well with 64HDD Pro.  Nick's "Shortcut" icons are pretty ingenious.  Just by clicking a shortcut, GEOS will attach whatever D64 (or D81) to the current drive that you want.  Just like Windows shortcuts.  Hard to describe, I guess, but it makes using GEOS very pleasant.

11001010

Totally off-topic, but 64HDD works great with the VIC20 too.

MachineDr

Quote from: airshipAfter a bunch of reading - and thinking back to what I knew very well a decade ago but have since forgotten most of - I found that Windows 98 was the last true DOS-based Windows. I didn't have Win98 SE, which would have been more stable, but I DID have a very, very early copy of Win98 that I got from MS because I'd been a beta tester. Best of all, I had a license to install it on as many boxes as I want. I checked into buying a copy of SE, but my recycler wanted $45 for a copy of that, more than I paid for the computer. So Win98 it was.
Very interesting post!

I am curious as to the statement you made that I quoted. I am an Automation Engineer and have to support MANY legacy programs that ran under DOS in order to support the hardware that was installed throughout my career.

When making the transition from DOS to 95 & 98, I found that many of the programs would NOT run. I either couldn't get them to execute or the Com Ports would not work (all the devices at that time were programmed serially).

Lo and behold, Win 2000 came along and programs that I could use under true DOS but not 95/98 came back to life. For 4 years I used the 2K Laptop to support legacy DOS based programs without a hitch.

I might add that in some instances, I found that it wasn't the OS that was at fault it was the processor in the computer. Case in point was ProComm's terminal software. When making the transition from a Pentium I to a Pentium II AND using true DOS. I would get a division by zero error. I did some research on this but it always came back to the strcuture of the new Processor (I wish I could elaborate more on this).

I have since been using XP Pro but my role in the field has waned so I don't have to actually support anything on site any more.

I have tried a few legacy DOS Apps and have had mixed results under XP Pro.

My two cents on this topic.

-Jim

airship

Thanks for the insights, Jim.

I don't know if I made it clear, but I'm running Win98 in DOS mode, not just in a DOS shell window. The timing is all screwy if the Win98 GUI is running.

As you no doubt know, Win 95 and 98 were GUIs slapped on top of DOS, while Win 2000 was based on NT. So all your drivers changed from DOS to NT drivers. Interesting that they worked for you when the DOS drivers didn't.

And as I said, the BIOS USB support is where my Win98 DOS glitches came from. When I shut that off in the BIOS and run in DOS mode it all works great.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

airship

Well, I finally got a clarification from Nick who makes the 64HDD. Here's the optimal setup for 64HDD for C128 mode, for both C128 and GEOS operation (with CP/M disk image support, too):

  64HDD Professional C128 (copy-protected disk w/utilities on CD-ROM)  $64.95 (postpaid)
  Pwr-Interceptor Parallel Cable & Adapter                                            $29.00 + $7.50 postage (worldwide) = $36.50
  Enhanced Pwr-Load Kernal EPROM for C128 (w/switch):                       $15.00 + $4.50 postage (worldwide) = $19.50

That's a total of $120.95. But he offers a deal where if you buy 64HDD professional you can get a power cartridge for the C64 ($19.95 value) for just $5.00, and I'm hoping he'll do the same deal for the C128 Kernal EPROM. That would make the whole deal $14.95 less, or $106.00 total. (He doesn't offer cartridges for C128 mode.)

I'm going to add $3.00 for a 2 meter cable instead of the standard 1-meter cable, so mine should be $109. As soon as I can afford it. :(

64HDD C128 by itself supports burst-mode loading, so it's as fast as a 1571 instead of being slow-poke 1541 speed. The parallel cable by itself will give you fast saves and loads,  but it loads a one-block driver into the cassette buffer first, so it's not 100% compatible. I think the switchable kernal replacement is the way to go. (BTW, if you can prove you've got a legit copy of JiffyDOS, he can burn you a ROM that's got JiffyDOS in it, too.)

Include the $40 cost of my server PC and the XE/XM Adapter ($14.99 + $2.50 shipping = $17.49) and the grand total is $166.49. Pretty reasonable if you ask me, especially since I've been able to build it in pieces and get a huge advantage at each step. Shoot, I could continue to do so and add just 64HDD C128 first for fast serial, the parallel cable second, then the EPROM last. Very, very nice upgrade path.

He's also got a free hacked version of GEOS 2.0 for both C64 and C128 modes. That should scream on this thing. Maybe that'll be enough to get me to actually try it again.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine