amiga.org
     
iconAll times are GMT -6. The time now is 03:47 PM. | Welcome to Forum, please register to access all of our features.

» Amiga.org » Amiga computer related discussion » Amiga News and Community Announcements » Story of VD0 - the invention of the recoverable ram disk

Notices

Amiga News and Community Announcements If you have a news item, or want to announce something to the entire online Amiga Community, this is the forum in which to place your announcement.

Reply
 
Thread Tools Display Modes
Old 03-14-2010, 12:52 PM   #1
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Default Story of VD0 - the invention of the recoverable ram disk

My name is Perry Kivolowitz. I wrote the first recoverable ram disk.

At that time, ASDG (the company I founded with Dan Esenther and a third partner almost no one has ever heard about) made only hardware products - specifically a memory board. And the box the memory board went into since there was no expansion capacity in an Amiga (other than chip ram).

I heard that a competitor, I don't remember who - maybe it was the great guys over at Microbotics or the sleazebags over at C Ltd, were going to release a ram disk that would survive reboots. Incredible. Wow would that be killer - it would mean an incredible competitive advantage for them - a compelling reason to buy their memory boards.

I have to beat them to it, I thought.

The key to the RRD (recoverable ram disk) was that the Amiga OS memory allocation call allowed you to specify where the newly allocated memory should come from. The basic call always allocated memory from low memory upwards. But there was this other call (or maybe it was the same call) that would allocate memory from the top down.

I pulled out one of the lesser known Amiga manuals, I'm pretty sure it was a printed manual, which described Amiga device drivers. The example disk driver was enormously complex and written in BCPL or was it B. What was the name of the language those wierdos nobody ever heard from again were writing in? I don't remember.

I got home from work at AT&T on Friday afternoon and started coding. I coded straight through to Sunday night. Non-stop. Somewhere I have a picture or me at my A1000 wrapped in a blanket (couldn't really afford heat) at the end of that weekend. I did not look good.

The RRD was written in assembly language. I loved 68K assembly language. I had been among the first C programmers in academia (when Unix first left Bell Labs) and coded in 68K assembly language at pretty much the same speed as the two were so close.

A significant challenge was deciding when the RRD could be trusted after a reboot. There was no memory isolation - any process could nail any byte in memory. The first thing the code did was attempt to find the first bytes allocated to the RRD in memory starting at the top of memory and working its way backwards looking for a sentinel. When / if that was found it then followed a data structure backwards to determine if all the blocks allocated to the RRD were still there.

I don't remember - was it my RRD that dynamically grew or was it the one that came later? It might have been mine that dynamically grew. If all of the memory allocated to the RRD was still there it was REallocated (another cool thing about the Amiga memory manager) and then checked with a simple CRC. This is the main thing that slowed down the RRD - computing and checking CRCs to make sure nobody else had blasted the memory without us knowing.

There was a rediculous amount of code in there to mimic the crap I found in the example disk driver I was working from. The RRDs that came later didn't have any of that crap as other ways were worked out to write Amiga drivers. I had nothing else to work from but the crappy example.

It turns out the other guys RRD never came out. It never existed. Just a rumor. Mine was a huge hit on the other hand and sold us a lot of memory boards. People thought it was magic.

For a long time it was available only with ASDG memory boards and it did check for ASDG hardware. At some point down the line I removed the check for ASDG hardware but it was still only provided "legally" by us.

At some point after that I made it shareware for $10. I believe it was one of the most successful shareware products ever made on the Amiga. I can tell you that I survived on those ten dollar checks and bills sent through the mail.

It has never been told but I worked for years for no pay while building ASDG. I lived off of savings from my consulting days at AT&T - god bless 'em. It was several years (3?) into ASDG's existance that I got my first check. I made $6 an hour. And I was so damn proud.

Some time later a German kid reverse engineered my RRD and came out with a much better one. Years later we talked about it and I congratulated him on it. It really was better.

Finally, there came a day when Amiga hard disk drives didn't suck so much. Amiga hard drives were INCREDIBLY slow due to badly designed architecture. The first hard drives were slower than floppies. Especially compared to floppies augmented by Facc and Facc II - other early ASDG software products I wrote. Facc II floppies ran at ram speed as they were memory-based clones of the floppy that happened to be loaded at the time.

VD0 by the way stood for Virtual Disk 0.

EDIT: I should have had a date in here. The original VD0 was written sometime in 1985 or maybe early 1986 as I still lived in New Jersey.

p

Last edited by pkivolowitz; 03-14-2010 at 01:49 PM..
pkivolowitz is offline   Reply With Quote
Old 03-14-2010, 12:58 PM   #2
save2600
Premium Member
Points: 17,757, Level: 84 Points: 17,757, Level: 84 Points: 17,757, Level: 84
Activity: 4% Activity: 4% Activity: 4%
 
Join Date: Jul 2006
Location: Southern, WI USA
Posts: 3,007
Send a message via Yahoo to save2600
Default Re: Story of VD0 - the invention of the recoverable ram disk

Fun read, thanks for that! If you ever find that picture of you huddling over your A1000, you should post it for sake of nostalgia
__________________
Cash paid or will trade for loose and CIB Amiga games I need. Game manuals and boxes only too! Will purchase in large lots as well.
save2600 is offline   Reply With Quote
Old 03-14-2010, 01:06 PM   #3
Pyromania
Head Amiga.org Chef
Points: 19,859, Level: 89 Points: 19,859, Level: 89 Points: 19,859, Level: 89
Activity: 23% Activity: 23% Activity: 23%
 
Join Date: Aug 2002
Location: Chicago
Posts: 1,422
Default Re: Story of VD0 - the invention of the recoverable ram disk

Very cool piece of Amiga history, thanx so much for sharing it.
Pyromania is offline   Reply With Quote
Old 03-14-2010, 01:09 PM   #4
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Smile Re: Story of VD0 - the invention of the recoverable ram disk

I have a lot of stories I've never told. Maybe enough of us are dead now that I can start telling them

Actually, I'm not joking as much as I thought I was. I count my birthdays in terms of how much longer I've lived than Paul Montgomery. Man I am morbid.
pkivolowitz is offline   Reply With Quote
Old 03-14-2010, 01:25 PM   #5
Pyromania
Head Amiga.org Chef
Points: 19,859, Level: 89 Points: 19,859, Level: 89 Points: 19,859, Level: 89
Activity: 23% Activity: 23% Activity: 23%
 
Join Date: Aug 2002
Location: Chicago
Posts: 1,422
Default Re: Story of VD0 - the invention of the recoverable ram disk

Paul did die way to young, only 38 years old.
Pyromania is offline   Reply With Quote
Old 03-14-2010, 01:31 PM   #6
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Default Re: Story of VD0 - the invention of the recoverable ram disk

Quote:
Originally Posted by Pyromania View Post
Paul did die way to young, only 38 years old.
In fact I just updated his Wikipedia page to reflect one of his other contributions to the Amiga - the founding of FAUG.

I believe it is reasonable to say that had he lived longer he would have been Don King and P.T. Barnum and a dozen of the most well known promoters rolled into one and probably would be governer of California or president of Enron.

He was a force of nature. Not all positive, nobody is. But a force of nature non-the-less.
pkivolowitz is offline   Reply With Quote
Old 03-14-2010, 02:25 PM   #7
Zac67
Kindred of Babble-on
Points: 12,421, Level: 72 Points: 12,421, Level: 72 Points: 12,421, Level: 72
Activity: 15% Activity: 15% Activity: 15%
 
Zac67's Avatar
 
Join Date: Nov 2004
Location: Erlangen, Germany
Posts: 2,851
Blog Entries: 4
Default Re: Story of VD0 - the invention of the recoverable ram disk

Very cool story - thank you!

And welcome to a.org, the best Amiga place around!
Zac67 is offline   Reply With Quote
Old 03-14-2010, 02:30 PM   #8
kolla
Defender of the Faith
Points: 11,318, Level: 70 Points: 11,318, Level: 70 Points: 11,318, Level: 70
Activity: 2% Activity: 2% Activity: 2%
 
kolla's Avatar
 
Join Date: Oct 2002
Location: Trondheim, Norway
Posts: 1,698
Default Re: Story of VD0 - the invention of the recoverable ram disk

How does VD0 relate to the RAD disk that came with AmigaOS eventually?
__________________
-- kolla
kolla is offline   Reply With Quote
Old 03-14-2010, 02:54 PM   #9
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Default Re: Story of VD0 - the invention of the recoverable ram disk

Quote:
Originally Posted by kolla View Post
How does VD0 relate to the RAD disk that came with AmigaOS eventually?
VD0 might be a great-grandfather of RAD. Probably grandfather. The German kid's version would be Son-Of-VD0.

Oh, I remember now. My disk didn't resize dynamically - it ALLOCATED dynamically. At least some of the other recoverable ram disks that came later allocated all of their space in one go. I think there was one that finally allocated dynamically and resized dynamically but that wasn't mine. Actually, to be honest, I don't remember for sure if mine allocated dynamically or not, I know I did something that was better than the next RRD that came out. I have backup tapes that have the source code for everything ASDG did but no way to read them (assuming they are still readable).

Apart from this distinction there was little functional difference between them. In practical terms, however, the newer RRDs were faster and smaller. The smaller wasn't by much - we're only talking a few kilobytes at most.

I think the main things that make VD0 important are:

a) How early it was in the commercial life of the Amiga - it was 1985 or 1986.

b) How big a problem it remedied - I know for sure that several major software products would have been much more difficult to write had the authors had to rely purely on floppy disk development. Roman Ormandy for example was very enthusiastic during the development of Caligari.

c) The fact that it hadn't been done before. It was PFM at the time. Pure Magic.

d) It altered the direction of ASDG. We were a hardware company through and through. The RRD was our first software product and started us towards making software. Almost has fateful as the cab ride I took which completely altered ASDG. But that's a story for another day


Bottom line is that it wasn't so much how well the bear danced, it was that the bear was dancing at all.

Last edited by pkivolowitz; 03-14-2010 at 03:00 PM..
pkivolowitz is offline   Reply With Quote
Old 03-14-2010, 02:54 PM   #10
Matt_H
VIP / Donor
Points: 22,269, Level: 92 Points: 22,269, Level: 92 Points: 22,269, Level: 92
Activity: 34% Activity: 34% Activity: 34%
 
Matt_H's Avatar
 
Join Date: Mar 2003
Location: Boston, MA, United States
Posts: 4,986
Default Re: Story of VD0 - the invention of the recoverable ram disk

Ah, VD0/ASDG-RAM. Used it for many years on my 500. Thanks for the story

It's still on Aminet, by the way. I'm not sure this is the same version I used, though.
Matt_H is offline   Reply With Quote
Old 03-14-2010, 03:16 PM   #11
Tension
Banned
Points: 11,914, Level: 71 Points: 11,914, Level: 71 Points: 11,914, Level: 71
Activity: 56% Activity: 56% Activity: 56%
 
Tension's Avatar
 
Join Date: Jan 2008
Location: Belfast
Posts: 2,034
Blog Entries: 3
Default Re: Story of VD0 - the invention of the recoverable ram disk

Quote:
Originally Posted by pkivolowitz View Post
Almost has fateful as the cab ride I took which completely altered ASDG. But that's a story for another day
Do tell!!

And welcome to Amiga.org -- You'll never leave!!
Tension is offline   Reply With Quote
Old 03-14-2010, 06:35 PM   #12
JimS
Defender of the Faith
Points: 10,135, Level: 67 Points: 10,135, Level: 67 Points: 10,135, Level: 67
Activity: 5% Activity: 5% Activity: 5%
 
JimS's Avatar
 
Join Date: Mar 2002
Location: Michigan, USA
Posts: 1,057
Default Re: Story of VD0 - the invention of the recoverable ram disk

Perry: Welcome to A.org... It's beginning to look like a familt reunion around here... Dave Haynie was here a little while back. Hedley Davis stopped by to tell the tale of the Memorial Disk Drive. ;-)

Re: RRD. I used to copy my workbench and favorite utilites into it back before I could afford that whopping huge 40MB hard drive.
__________________
Obsolescence is futile. You will be emulated. - Amigus of Borg
JimS is offline   Reply With Quote
Old 03-14-2010, 10:30 PM   #13
matthey
Cult Member
Points: 5,816, Level: 49 Points: 5,816, Level: 49 Points: 5,816, Level: 49
Activity: 13% Activity: 13% Activity: 13%
 
Join Date: Aug 2007
Location: Kansas
Posts: 738
Default Re: Story of VD0 - the invention of the recoverable ram disk

Quote:
Originally Posted by pkivolowitz View Post
The key to the RRD (recoverable ram disk) was that the Amiga OS memory allocation call allowed you to specify where the newly allocated memory should come from. The basic call always allocated memory from low memory upwards. But there was this other call (or maybe it was the same call) that would allocate memory from the top down.
MEMF_REVERSE ;AllocMem: allocate from the top down

There is some new AllocMem() flags that would have made your life much easier back then...

MEMF_LOCAL ;Memory that does not go away at RESET
MEMF_24BITDMA ;DMAable memory within 24 bits of address
MEMF_KICK ;Memory that can be used for KickTag stuff

Some of us are still programming you know. The Amiga is too good to let disappear . A lot of people have come back and are having fun with it. There are lots of good forums and enough new hardware being worked on that it can't all be vapor ware. I love 68k assembler programming as well. You should check out http://www.Natami.net/ and http://eab.abime.net/.

What format is the ASDG software tape backups in? Maybe someone here has the right tape drive. You should release the code and programs to Aminet. ADPRO at the least, had some features like a large variety of dithering types that would be very handy in other projects.
matthey is offline   Reply With Quote
Old 03-14-2010, 11:38 PM   #14
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Default Re: Story of VD0 - the invention of the recoverable ram disk

Quote:
Originally Posted by matthey View Post
What format is the ASDG software tape backups in? Maybe someone here has the right tape drive. You should release the code and programs to Aminet. ADPRO at the least, had some features like a large variety of dithering types that would be very handy in other projects.
The would be 1/4 inch Exabyte tapes written probably on an A4000 running Unix with tar. This is just a guess.

I'd have to have a pretty solid understanding with someone to send away the tapes as there would be stuff on there which should not see light of day.

Maybe I should visit eBay and see if there's a drive available. I'd be happy to give away some of the source code.
pkivolowitz is offline   Reply With Quote
Old 03-14-2010, 11:42 PM   #15
pkivolowitz
Beginner
Points: 2,153, Level: 28 Points: 2,153, Level: 28 Points: 2,153, Level: 28
Activity: 2% Activity: 2% Activity: 2%
 
Join Date: Mar 2010
Location: Wisconsin
Posts: 43
Default Re: Story of VD0 - the invention of the recoverable ram disk

Yeah, I have a tape labeled "Whole Company 1/23/94" - it's an 8mm I think.

Interesting.
pkivolowitz is offline   Reply With Quote
Reply

Bookmarks

Tags
story , recoverable , invention , asdg , disk , rrd , recoverable ram disk , vd0 , ram
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump