UNCLE BERNIE'S WOZ MACHINE BASED APPLE-1 FLOPPY DISK CONTROLLER

39 posts / 0 new
Last post
Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
UNCLE BERNIE'S WOZ MACHINE BASED APPLE-1 FLOPPY DISK CONTROLLER

I've developed  a Woz Machine based floppy disk controller for the Apple-1, which was subject of this April Fool's joke:

 

https://www.applefritter.com/content/uncle-bernies-april-fools-day-apple-1-riddle

 

Here is a photo which shows the ICs and the functional sections:

 

 

These are the parts functionally identical to Apple's Disk II card:

 

7405                                                           - "Glue Logic"

74LS74,74LS299,GAL16V8/PAL16R6              - "Woz Machine"

74LS259                                                      - "Soft Switches"

74LS132 (1/2 of the IC)                                - "Drive Select"

555                                                             - "Motor Timer"

 

These are the Apple-1 specific additions I had to make:

 

74LS132 (1/2 of the IC), 74LS123             - "Clock Generator"

GAL16V8/PAL16R4                                   - "TFC"

 

These additions are necessary because the Apple-1 does not have a 2 MHz "Q3" clock on its bus, which clocks the Woz Machine, so the "Clock Generator" makes a substitute from the      1 MHz system clock. And the "TFC" is where the magic happens to make the whole thing work under the constant barrage of non-transparent DRAM refresh cycles, which steal CPU cycles and break Woz' original concept based on precise CPU cycle counting in all the timing critical RWTS routines.

 

As far as I can say 6 weeks into the development of the new RWTS routines, it does work, and it does work reliably. The "TFC" makes all the trouble with the stolen CPU cycles go away, like a Stage Magician makes all sorts of things, animals and even beautiful girls disappear in front of your eyes. True "Magic" !

 

Any interest / questions ? - Feel free to ask and post your comments in this thread. The more responses this thread gets, the higher the chance that I don't just shelve this project after I have completed the RWTS.

 

P.S.: for the "purists" among us: only using year 1978 "period correct" parts was an imperative requirement in my Objective Specification for this project. MMI reveiled the PAL to the public in March 1978. It was a game changer ! TTL and LSTTL became obsolete over night, technically, but not commercially, since they had a market momentum too large to die out quickly. But technically, the PAL killed them dead. Apple released their Disk-II system for sale 4 months later, in June 1978. Do not get distracted by my use of those GAL16V8 ... these are only used to emulate the precious and horribly expensive bipolar PAL16R4 and PAL16R6, which are very rare nowadays. The GAL16V8 is based on EEPROM CMOS technology and came out in 1985. But unlike PALs, GALs can be edited to make changes to the logic within. This is why I use them for the development work.

 

P.S.S.: Another riddle for you  (I'm the "Riddler" although I like "Iron Man" more): guess what the "TFC" stands for. Here is a hint: there is a movie about a close relative of this device having the same acronym but not exactly the same name. You can also guess the title of the movie. Try it ! Uncle Bernie's riddles always are fun ! Life without riddles to solve would be boring !

 

 

 

Macintosh_nik's picture
Offline
Last seen: 2 hours 51 min ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

Very glad that you realized your project. It's fantastic! I really like those black Apple floppy drives, I have 2 of them and would be happy to use them with the Apple-1. I would love to purchase a floppy drive builder like this. Thank you so much for this!

Toysoft's picture
Offline
Last seen: 3 years 7 months ago
Joined: May 1 2021 - 18:10
Posts: 1
Wonderful job, would be fun to try it on the Apple Replica I

Wonderful job, would be fun to try it on the Apple Replica I

 

TS

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
How does the software side

How does the software side look?

On the 1st April thread we can see you start a (test?) routine located at $0600 that seem to load a predefined set of sectors.

Did you creat already somekind of DOS?

If yes, would not it make sense to add an EPROM or PROMs to the PCB?

I think yes as you wrote:"Well, in the mid-1980s I wrote my own EPROM resident FMS which used only very little RAM, for all of its operations, including LOAD and SAVE of machine language programs, but it also had FORMAT, DIRECTORY, RENAME, DELETE"

Best

Stefan

 

Online
Last seen: 1 hour 53 min ago
Joined: Feb 27 2021 - 18:59
Posts: 601
guess what the "TFC" stands

guess what the "TFC" stands for. Here is a hint: there is a movie about a close relative of this device having the same acronym but not exactly the same name. You can also guess the title of the movie.

That wouldn't be William Friedkin's 1971 masterpiece The French Connection?

Is the PAL device named "The Floppy Connection"?

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
It probably won't work on the Replica I ....
Toysoft wrote:

Wonderful job, would be fun to try it on the Apple Replica I

 

 

Sorry to say my Disk-1 controller is meant for the Apple-1, originals or clones, and not for replicas. There are two reasons:

 

a) the CMOS 6502 (all of them) do not have the "phantom read" in the STA abs,x instruction execution which the original NMOS 6502 have.

The "Woz Machine" in its original form requires the phantom read to work and this is not a cycle count issue, the problem roots deeper.

This is why Apple (the corporation) had to develop the "Integrated WOZ Machine", or IWM, for the Apple-IIc which uses a 65C02.

 

b) the floppy disk drives need -12V, +5V, +12V supply voltages. On the Apple-1 I can easily provide -12V and +5V but the +12V has to be fed in externally (this is the little header between the 20 pin disk drive connectors). I have an idea on how to make +12V from the unregulated -22V and +22V on the Apple-1 44-pin bus, but this requires a switchmode DC/DC converter topology for which no ready made controller IC exists. My desire to use only "period correct" parts is compounding the problem. Designing this DC/DC converter probably is the most difficult part in this project.

 

So what can you do to add a floppy disk system to the Replica-1 ?

 

You could try to get an IWM chip and make a small PCB for it. But you need to solve the power supply issue, too.

 

This would be an entirely different animal.

 

 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
The software side is under development ...
natas666 wrote:

How does the software side look?

On the 1st April thread we can see you start a (test?) routine located at $0600 that seem to load a predefined set of sectors.

Did you creat already somekind of DOS?

If yes, would not it make sense to add an EPROM or PROMs to the PCB?

 

I'm now in the 7th week of writing and debugging the RWTS on the real hardware and so far it can read sectors and format a track, and it works well. Currently I'm developing the stepper motor driver routines to be able to access all tracks (and not only track 00).

 

The PCB will get an EPROM (2716 for extreme purists, 2732 for purists) but I intend to allow 28 pin EPROMs, too, as the JEDEC roadmap was laid out early enough to know, even back then, how the pinout of these 28-pin EPROMs would be.

 

Any such EPROM needs to be bank switched to provide 2KByte banks. This is because the other 2K are occupied by the I/Os, and I don't want to occupy more than 4K in the Apple-1 address space. (Sorry, I won't add more ICs to make the 2K I/O space smaller).

 

But based on my experience with the mini-DOS I once wrote for another well known 6502 computer I think that 4K (a 2732) would be enough to hold all the basic RWTS and FMS functions. And as a plan B, we still have 2764, 27128, 27256 ... but that would not be period correct.

 

At the moment I intend to continue the project until the RWTS is completed. It shall be Apple-1 and Apple-II compatible (on the Apple-II it needs an assembly switch but the changes this switch invokes are very trivial).

 

Let's see how much interest the small worldwide Apple-1 crowd shows in this project. Then I can decide whether I shelve it after the RWTS completion or whether I develop the hardware into something that can be "mass" produced. Not that I need to make profit out of it - the idea alone to make any profit with Apple-1 stuff is hilarious - but I just don't want to waste any of my valuable RQLT on things which I don't need to have.  As far as I'm concerned I would be perfectly satisfied if I could prove, at the RWTS level, that my concept is bug free and works as designed. My own motivation to tackle this project was threefold:

 

a) prove that I understand the Woz Machine and the RWTS in its original, unadultered form of 1978, a feat which I wanted to do for 40+ years but never had the time to do.

 

b) prove that I can make the original (1978 vintage) Woz Machine work on the Apple-1 despite of the non-transparent DRAM refresh, and without changing the Woz Machine architecture itself. This is only interesting because people in the know said it was "impossible". Making "impossible" things happen is a speciality of mine. I just had to do it once the challenge was out.

 

c) keep my professional skills sharp (despite I'm retired), to avoid brain rot, and as a Plan B if hyperinflation would turn us all into trillionaires. Then I would need to work again to earn myself a living.

 

(Did you ever wish to become a billionaire, dear reader ? Think again what you wish for !

Don't wish for a terrible fate !

If your wish was granted, we will not be better off than all the billionaires and trillionaires in Zimbabwe or Weimar Germany, which were starving because even a billion would not buy a loaf of bread ! --- Unintended consequences of stupid wishes !)

 

I think that I don't want to write the DOS. Not even a mini-DOS. I'm not too familiar with the Apple-II DOS3.3 file system. So I'd rather stop at the RWTS level, for which I am competent, and leave the rest to volunteers (if any).

 

 

 

Offline
Last seen: 2 weeks 17 hours ago
Joined: Dec 21 2013 - 20:49
Posts: 113
Great work!

Uncle Bernie,

Fantastic job on Apple-1 floppy controller! You have really done some great work. Can't wait to complete my Apple-1 replica and get it working now. You can count me in as someone who would want your floppy controller.

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
For the Apple I the CFFA1

For the Apple I the CFFA1 exists it has something like a DOS.

Not sure if it would make sense to use the same base and just replace the low level routines with yours.

I'm at the moment thinking how to interface this 64mbit mp3 player https://www.ebay.de/itm/402702110870

with the ACI my idea is to use a 74373 where you write your selection via WozMon into and a 74123 or NE555 activates the output long enough to start one of 255 stored tapes.

Simple effective, cheap about 5€ including shipment for the modul, the other parts should be about the same amount.

But the mp3 modules is for sure nothing from the 70th but atleast the way to select the mp3 file. Likely you will have problems to fill all 255 slots with usefull software.

 

Regarding a Floppy for the Apple 1 I, as a Commodore guy (Apple did not play a relevant role in Germany), was thinking about going the Commodore way,

why not use an intelligent Diskdrive and leave the work to the drive just send the command over and and receive the requested data or send it to the drive

and let the drive take care for the directory, Block Allocation Map and so on.

 The VC1541 was introduced 1982 and has unlike the 1979 parallel IEEE-488 drives a simple serial CBM-BUS aka IEC-BUS and is still easily availible.

The Hardware specs are beside interface and size same as the 1979 model:

Media: 5¼" floppy disk SS SD 170KBOperating system: CBM DOS 2.6CPU: MOS 6502 @ 1 MHz 2 KB RAM, 16 KB ROM

 

It is compatible with the Commodore VIC20 that has very compareable technical data like the Apple I it came also with 6502 CPU, only 5kB RAM and was introduced 1980.The DOS is floppy drive internal, on the Computer side you only find the BASIC commands LOAD, SAVE, there is no directory command as the directory is loaded as BASIC Listing,

you load it with LOAD"$",8 and type list to show it. There is also no DELETE command, you need to use OPEN1,8,15,"S:FILENAME":CLOSE1 to delete the File "FILENAME".

FORMATING work quite alike. The Signals for the Floppy-port are generated by parts of the two 6522 VIAs as the serial port inside this chip is broken and not used one 6520/6521 PIA could do the job aswell.

If your idea does not work out it would be also an alternative to interface a still widely availible Commodore Floppy.There are also a lot of modern replacements that work with SD-Card or with Raspberry Pi. (I know that is definatly not what you want.)

From my point of view there is no point to have a Apple 1 or 1:1 replica this thing has only one purpose after starting it up for a couple of times, and that is is to collect dust.Sure it's a nice thing for the showcase but not much more, atleast for me.I'm more interested in the modern interpretations like the Replica I or A-ONE, I like the FRAM board and the CFFA1 so for me there is no need for a floppy interface.But as most of this times that is not the question. The question is: Does someone take the challenge and proofs the persons that say it can not be done wrong?And it looks like you accepted the challange and come up with the undoable Apple I Floppy Interface with a disintegrated Woz Machine.I'm not an old school electronics expert so I would solve some things different, I would replace the PROMs and DRAMs completly with 32kB SRAM and 32kB FRAM and writeprotect some Blocks.My interpretation of the CFFA1 would not use a 3.3V CPLD, it would use a 5V version and an IDE header with a 32MB DOM. A Pi zero with HDMI and USB adapters is just 10€ and can replace the Terminal part, actually it could replace the complete Apple 1, but it's the cheapest way to get HDMI output and a USB Keyboard connected and it can also load files from SD-Card just connect the GPIOs to the PIA socket.

 

Don't get me wrong I absolutly like your invention!

But I would not spend money for it, as I don't have an Apple I, but I would definatly be interested how it works in detail just to learn how things got solved in the old times or in this case could have been solved.

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
"Intelligent Peripherals" are not a smart solution !

In post #9,  "natas666" wrote:

 

"Regarding a Floppy for the Apple 1 I, as a Commodore guy (Apple did not play a relevant role in Germany), was thinking about going the Commodore way, why not use an intelligent Diskdrive and leave the work to the drive just send the command over and and receive the requested data or send it to the driveand let the drive take care for the directory, Block Allocation Map and so on."

 

Other than the requirement to be faithful to Woz' original concept, which would rule out any "intelligent" floppy disk system anyways, it just would be wrong for the Apple-1 (and the Apple-II). Apple's Disk-II system is famous, and it is famous for a reason. Also, Woz himself regards his Disk-II controller card with his "Woz Machine" to be his true masterpiece. Why would anyone want to ignore that and replace it with something else ?

 

IMHO "intelligent peripherals" back in the day were not intelligent, but stupid, in the sense of a very stupid decision both of manufacturers and the buyers of these contraptions. Let me explain:

 

Anyone who was around and interested in microcomputers of the late 1970s and early 1980s inevitably ran into these "intelligent" peripherals, most of them being floppy disk stations. I think that these "intelligent" peripherals weren't smart, as their name implies, but  in truth, there were very stupid, if not moronic. Even back then I had gotten the impression that the concept of these assaults on our wallet and mental sanity could not possibly have been the work of real engineers, but they must have been conceived by moronic managers, the bane of all us real engineers, and the reason for the decline of all too many industries. See, the problem is that at least in the "hi-tech" industry these "managers" more often than not are lousy engineers who saw they could not achieve anything in engineering, so they went into management, but instead of just making sure the projects are properly budgeted and scheduled, they, being engineers, still want to meddle with technical decisions. Since they are lousy engineers, the outcome of this meddling are lousy products.

 

You see, there are a multitude of problems with these not-so-smart "intelligent" peripherals:

 

First of all, it's price. Instead of having one enclosure, one power supply, one motherboard, one CPU, one RAM, and one or two floppy disk drives, you had to pay for two enclosures, two motherboards, two CPUs, two RAM, and of course the same one or two one or two floppy disk drives. No wonder that all the "intelligent" floppy disk stations of the time did cost significantly more than the computer they were attached to, while Apple's Disk-II system did cost substantially less than the Apple-II itself. In fact, with their radically stripped-down solution, Apple had the cheapest floppy disk system in the whole marketplace. Which was key to the Apple being the lowest cost small business computer of the time being that could do text processing, inventory, accounting, and similar tasks. And catering to small businesses was where the real money could be made - not selling game machines to teenagers and the type of curious adults who always had to have technical novelties, and had the spare cash to buy them.

 

Problem number two is software updates. If you have "intelligent" peripherals their software typically is "firmware" in ROM. So any bug in, say, the file system manager, could only be fixed by changing ROMs, which typically required a service technician (not all computer users were technically inclined people who could swap ROMs by themselves). And making new ROMs is costly, and the costs have to be paid by the customers (plus a hefty profit margin). Apple's solution (and all others with a "dumb" floppy disk system) stored all their bug-ridden DOS software on the floppy disk. So bug fixes and updates were straightforward, quick and cheap.

 

Problem number three is maintenance. The "intelligent" peripheral is a complete small computer system with all the ills that can befall such a system. But unlike the host computer, it has no display and no keyboard. So if it is ill enough, it won't talk to the host anymore and due to the lack of any communication with it, the service technician is in a losing position (not for himself, for the customer, as for the technician it's many hours more he can bill).With a floppy disk system that lives in the host computer, such as Apple's, maintenance is much, much simpler and can be done by yourself. Dead computer ? Pull the peripheral cards out of the slots, and if it works again, you can identify the bad card by putting them back one by one. Bad floppy drive ? Swap the cables and see if the problem moves between D1 and D2. Then send the small (and lower postage) bad drive in for repair. Or order a new cable. Bad disk controller card ? Get a new one, it's cheap, with only 8 TTLs, and throw the bad one away.Contrast that with the huge, bulky and complex "intelligent" floppy disk stations Commodore had. Their big dual floppy disk stations were too large and heavy to send by parcel services and you had to haul them to a service center or pay a service technician for the trip to your place. And they charged a King's ransom for that, like the equally feared plumber or TV repairman. Only the plumber is still around ... like the roofer.

 

So which is the better solution ? I think the question is answered. I would never consider to ever buy an "intelligent peripheral" again, except if it's so cheap you just can throw it in the trash if it needs repair. Which nowadays, thanks to most microchips being a commodity made by the lowest bidder, and thanks to Chinese slave labor and Globalisation, are so cheap that nobody needs to repair them anymore. The times where a laser printer did cost the price of a small, new car are long gone. Now the value of a laser printer is being determined by the question how full its toner cartridge is. Remember the old joke:

 

Man drives his old car to used car dealership and asks for what he could get for it.Dealer responds with the question: "is the gas tank full or empty ?"

 

Then you know you really have a worthless car. Much the same now with home office laser printers. Which are an "intelligent" peripheral. But due to the effects of Moore's Law, computing power and memory got so ridicolously cheap nowadays that the electronics in that thing are basically worthless when the toner tank is empty. There was a time, long ago, almost half a century now, a Hewlett Packard scientific calculator did cost several hundred dollars when a nice steak at a restaurant was $5. Nowadays you can get a new scientific calculator at Dollar Tree for $1, and it has more functions on it than the HP. It can even do hexadecimal and binary. I got one of those 20 years ago when it was $10. They still make them, same chip inside, looks much the same, but nowadays they dump it for prices as cheap as it gets. The keys are crap, though, so I still use my HP.

 

These ridicolous prices for electronic commodity products are an enormous opportunity for the swinders who cook the CPI, but alas, we can't eat these calculators or DVD players. If we could, life would be cheap !

 

 

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
It's a bit different in EU.

In the 80th you could not go to the next Computershop and buy an Apple Disk Drive or Apple II or a Clone, only a couple have been sold in Germany. Opposite to Commodore, Schneider, Atari, Sinclair, or XT. Commodore had a marketshare of 75% while Apple had something in the lower 1 digit numbers. 1985 you could buy for the price of the Apple II Europlus without anything a C64 with a Floppy Disk Drive and maybe even some Floppy Disks.I can not even remember ever having seen any Apple 8 Bit Computer in real life beside in the museum or on retro events. Even the badly sold C128 was sold worldwide more often than the Apple-II. The 680x0 Macintosh was a bit more common for business but private people mostly used emulation on Amiga in Germany.I'm born 1975 my first Computer I played with was the Sinclair ZX81 and that was 1981 or 1982 a C64 with Floppy followed 1984.The Floppy gerneration VC1541 was not as heavy as the one you write about and it weight is likely about same weight as the Disk 2 full hight Apple Drives. The later Model 1541-II is 1.6 kg without PSU.All post C64 3,5" Floppys have been sold as dump Floppy drives regardles if internal or external btw.

Sure the intelligent peripherals are not a costeffective solution but it was a working and commonly availible one.

A Commodore VC1541 on ebay is about 50€ and you have a wide selection of offers. For an Apple Drive you have exactly 0 offers in Germany and a whopping amount of 0 offers for Europe, and Worldwide shipment is usually far more than half of the 50€.

So I see no reason for me why I should prefere an Apple Drive.

DrZ
Offline
Last seen: 2 years 10 months ago
Joined: Apr 22 2020 - 18:04
Posts: 12
Hi Uncle Bernie! Again -

Hi Uncle Bernie!

 

Again - wonderful work and - absolutely right - WOZ IWM and Floppy controller was the most impressive work ever done by WOZ and the Product that made Apple start over and earned the most revenue.

i absolute understand that this project was a thing you HAVE to do if possible.

 

efficiency is defind by getting the most out of anything.

 

smart peripherals are an example for not beeing efficient.

------

 

but i cannot agree to the comments on Commodore..

 

yes , 30M C64 compared to 7M Apple II is a lot.

but you compare apples with peaches .

 

Apple Ii design is from 1977. Beside the work on 6502 , Chuck Peedle developed the Pet2001 in 1976. The VIC20 came out 1980, the C64 1982. 

 

the Pet2001 was not very impressive in specs. and could be trchnically compared to Apple I.

 

And it is simply not true that Apple products did not appear in significant numbers in germany - in the 80s german schools have been equipped with apples..

 

Also i am not sure about the relevance of Commodore Machines in Business applications. i cannot remember to have seen any C64 as Office Computer. 

 

it remember there had bern a clear differenciation of Apple Ii users developing stuff for serious applications and Commodore users for gaming.

but thats my personal impression.

 

 

greetings from one of the fist amiga users from germany,

 

DrZ

 

 

 

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
DrZ,

DrZ,

the VIC20 was the first home computer that had an integrated port for a disk drive to my knowledge.

The Pet2001 was mainly used as business computer and not very often as home computer.

I am born 1975 and from the Paderborn area and no School I know used Apple computer and you did not see them at Allkauf and other computer shops around in that area  I also do not know anyone owning one at that times.

In big cities the situation was properly different but from my side Apple was pretty much not existing before the Macintosh came out.

The main reason was properly that Apple was all the time very expensive.Even with cheap disk drives the system cost was over the cost of Commodore Computer with Disk Drive.

Otherwise the emulation and clones would not have been so successful.

Best

Stefan

 

 

DrZ
Offline
Last seen: 2 years 10 months ago
Joined: Apr 22 2020 - 18:04
Posts: 12
Apple vs Commodore

Hi Stefan,

 

A Commodore vs. Apple Discussion would be much off topic in an Apple I user forum and - my opinion -should not be continued.

 

Also it is well known that personal knowledge not always represents reality, thats why people read books- or wiki..

 

To my knowledge the Commodore Floppy interfaces just as a serial device - so any computer generating serial data could use it.

 

As Uncle Bernie said, the reason not to have smart devices is that they could not be updated easily in case of errors.

 

the commodore floppy is one of the most famous flaws of smart devices in these days!

and i think uncle bernie wanted to be gentle and did not explicitly mention it as an example - excuse me: so i have to do that!

 

as mentioned before -reading helps-

a citation from wiki:

 

"The C-64's designers blamed the 1541's slow speed on the marketing department's insistence that the computer be compatible with the 1540, which was slow because of a flaw in the 6522 VIA interface controller"

And to take it a bit further:

 

"As implemented on the VIC-20 and C64, Commodore DOS transfers 300 bytes per second, compared to the Atari 810's 2,400 bytes per second, the Apple Disk II's 15,000 bytes per second"

 

Apple 1 Tape interface maybe faster.

 

millions of commodore users installed a "super floppy" parallel modification , a horrible hardare i often installed for some friends, of course voiding warranty, to get rid of that error.

 

as a conclusion i suggest we keep in mind that there is a dead slow serial floppy around which anyone may - or may not - use with serial output from any computer.

 

 

greeting

DrZ

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
DrZ

DrZ,

after writing such a posting you expect me not to answer?

No, you are wrong about your serial theory if you would have read my post closely you would not have missed where I explained what it needs to get it useable serial Floppy Port, you are missing the software side. So, your conclusion is wrong. The software implementation on the C64 is the slow thing and can be speedup via software more than 20 times. In addition, for the little RAM of the Apple I the speed really does not matter.

So you see your example is by far not as good as you think. With a simple piece of software, you could place on the floppy disk itself or in a ROM or Module you could speed up the Floppy by the factor of 10-25 so it was already about 7kBps in reality. Many games had special loaders. If you added a little hardware mod with a parallel cable you could reach the factor 40 what is 12kBps.

No the Tape is not much faster it is less than 1333 baud = 166 Bps it’s about half as fast if you count in the prelead time it's 1/4 or maximum 1/3.

The parallel mods worked perfect even with two drives maybe it was your installation that made it horrible? I used different Commodore Drives with different Speeders even one with 512kB RAM. At that time not many people worried about warranty and any TV Repair shop offer professional installation. Even the software speeders usually as part of a module with lots of other useful functions already took the speed to an acceptable level. It was easy fixable but as they could sell it as it was, they did.

Best

Stefan

 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Hey --- please stop these off topic discussion about Commodore

... this is an Apple-1 forum, and Apple folks typically are not interested in Commodore stuff. Just to put end on this discussion here is my point of view:

Commodore was a lousy company making crappy products at the lowest possible cost, and Jack Tramiel was a terrible cheapskate who would not pay electronics or software designers well, so all the good ones left for other employers, and only the not-so-bright ones were left at Commodore.

Same issue at Atari. The Atari 400 and 800 custom chips were designed by top talent, a group under the legendary Jay Miner, who later went on to  design the much greater Amiga custom chips. But same thing here - some managers and bean counters at Warner decided that these exceptionally bright IC designers would not be paid more than they themselves made, so they made these top people leave. This is why Atari was unable to make any great products anymore (all the few later marvels like the Jaguar were designs bought from third parties). The 600XL and 800XL basically were the same old, lame tech in a re-styled enclosure. The Atari 810 floppy disk drive was an unreliable POS. The Atari 1050 was somewhat more reliable but sucked in a big way, slow and rattly. But I can't complain ... by designing, manufacturing and selling the solution I made my first million, the foundation of my fortune. Had the management at Atari not been so moronic and had they made better products, I could not have raked in all the money from their ineptitude. Thanks, you morons at Atari (doubt they are still alive, due to age).  You made my day !

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
It was not intended to

It was not intended to escalate like that.

The question I brought up was, does it make sense to offload some of the work to make the software that is needed on the computer side smaller.

Okay I got the message that this is not Applestyle.

My other idea was it to reuse part of the code that is created for the CFFA1 and replace the IDE routines with floppy routines.

As the CFFA1 uses SRAM and an Option ROM I guess that is also not what you have in mind right?

Another option would be to port the Apple II ROMs for the Apple I.

My unsterstandig is you are basically rewriting this: https://github.com/cmosher01/Apple-II-Source/blob/master/src/dos/system/common/rwts.m4 and/or this https://github.com/cmosher01/Apple-II-Source/blob/master/src/dos/system/common/rwtsapi.m4 and also this: https://github.com/cmosher01/Apple-II-Source/blob/master/src/dos/controller/common/disk2.m4

If assembled with the rest of the DOS it should result to a working DOS correct?

Looks like thinks work really different on an Apple.

There is no DOS ROM only a Kickstarter PROM that reads (Track 0 Sector 0) which contains the code to read Track 0 (Sector (0)1-9) the RWTS (to my understanding that will allow to access the rest of the Disk) to memory and also the actuall DOS from Track 1-2.

So I guess your idea is to read the RWTS from EPROM into RAM (or use it diretly) skip Track 0 and directly load the the DOS from Track 1 and 2?

And this DOS hocks into the Apple II Basic Interpreter that is availible in ROM on Apple II.

As you are reading 16 sectors of a DOS3.3 Disk I guess you are going to be DOS3.3 compatible.

 

 

 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
In post #17, natas666 wrote: 

In post #17, natas666 wrote:

 

"The question I brought up was, does it make sense to offload some of the work to make the software that is needed on the computer side smaller. "

 

Uncle Bernie answers:

 

Exactly this is the idea. I don't want to do all the work towards a fully functional Apple-1 floppy disk system myself, despite that I probably could do it, skill wise, but my RQLT is running out, so I can't spend any more RQLT on projects which don't look rewarding to me personally, because I've already been there and have done that (writing a DOS). For other coders out there, writing (or re-writing) a DOS3.3 compatible DOS for the Apple-1 may be a very rewarding and satisfying project, though.  I don't think it's a huge task in terms of time, as I got frustrated a few days ago with my stepper motor routines and so I put them aside for a short while and spent that afternoon writing an Apple-DOS3.3 compatible mockup DOS in "C". In the evening I had it at the point where I could load a dos33 image file found on the web, do a CATALOG dump, and open and read any file there found in the catalog. This was maybe four hours of coding. Adding the code to write / append a file would be maybe twice that effort, but since I didn't do that, it's a tentative estimate. So, maybe in two work days of eight hours each a good coder could write an Apple DOS3.3 compatible file management layer in "C". Once the algorithms are debugged, and the modified disk images produced can be loaded into an Apple-II emulator, and the real DOS3.3 does not complain, it would be ready for the next step, coding the same algorithms in 6502 assembly language. I have found that this is the most efficient way to approach any software project targeting microprocessors or microcomputers, despite you later throw away (or archive) the "C" source code. The reason is that once a certain complexity of the data structures is reached, debugging on a micro is far too inefficient and tedious. In "C" under Linux you have much better tools to handle any such complexities.

 

As for your other comments, you are right on how the Apple-II works. But I would not load the DOS from EPROM into RAM, the RAM on the Apple-1 being scarce. I would run it in the EPROM on the Disk-1 controller card. Which for purists, must be a 2716 (probably a bit too small) or a 2732 which came out in 1979. Bank select would be used. And almost no RAM would be used. Already in my "C" code for the FMS I have demonstrated the viability of  buffer techniques which greatly decrease the sector buffer RAM usage compared to the original Apple DOS3.3. There is a small performance penalty but since in my concept the smaller buffers can be dynamically adjusted in size, you can dial it to the same performance as the DOS3.3, and still need only about 60%-70% of the total buffer RAM. (I use "buffer RAM" as a term to discern it from the RAM which DOS3.3 needs to reside in by itself).

 

What do we need other than the FMS layer ? I think that most of the utilities code seen in DOS3.3 can be thrown away, as it deals with peculiarities of Microsoft BASIC and the language card,  etc., all does not apply to the Apple-1. We need a resident LOAD and SAVE utility for machine language programs, but that's all. It might even fit into the 2732. All the other utilities could be loaded when needed.

 

Now, if we use the otherwise useless track 00 (which in DOS3.3 can't have files in it) as a swap area for RAM, we could load any utilities such as FORMAT, DELETE, RENAME, LOCK, UNLOCK, COPY from floppy disk into any RAM segment, run it there, and then swap the previous RAM content back. Atari DOS II did that (the DUP = Disk Utility Programs part of it offered such a swap option).  Of course, any such utilities could also be EPROM resident if we would allow a larger device than a 2732, but purists would consider that to be "cheating", as it is not period correct.

 

So there is absolutely no reason why the Apple-1, with only 8K of RAM, could not become a very useful and capable machine if it only had a floppy disk system. I can tell you that with two floppy disks, D1 and D2, and only 8K of RAM, if the RWTS and FMS is in EPROM, you could run a PASCAL or "C" compiler. (The early 1970s versions, not GCC, which is a monster, but very powerful). Or, if you like, a FORTRAN compiler. In the 1950s and 1960s thay routinely ran such jobs on computers having less than 8Kbytes of RAM.

 

So far how I see the task at hand.

 

BTW, my stepper motor routines work now. They always had worked. Trying to hunt down the reason why they apparenty did not turn off the stepper motor after a track seek is completed was a wild goose chase. It was no bug in my code, it's a feature of the floppy disk drive I use. It turned out that these drives memorize the last stepper motor phase even if the controller turns it off. They keep the stepper motor energized until the drive select signal goes away. I wonder if original Apple-II drives had that same hidden feature.

 

More on my progress with the RWTS when I have more to say. Currently I'm fine tuning some aspects of the read code, I think I can make it smaller in  size without losing reliability, but these tests run for a long time, as they have to read 100000 sectors to get any meaningful error statistics. It's already that good !

 

 

 

 

 

 

 

 

 

Offline
Last seen: 1 year 1 day ago
Joined: Apr 9 2021 - 04:31
Posts: 90
Some not so serious comment

Some not so serious comment try to do this with an apple floppy: https://www.youtube.com/watch?v=BXiIbwXcftI

Offline
Last seen: 7 months 3 weeks ago
Joined: Apr 9 2021 - 06:55
Posts: 49
CPU6502 Demo

the great 1541 DEMO is really cool ... the noises come from the stepper motor ...

but the graphics demo alone is super cool (doesn't come via a C64 video chip, but actually only via the CPU 6502 of the floppy),so this 2K program should also run easily on the Apple1 ..

Offline
Last seen: 7 months 3 weeks ago
Joined: Apr 9 2021 - 06:55
Posts: 49
CPU6502 Demo

--- delete

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Status of this project - shelved / on the back burner (sad)

In a post #8in the tread:

 

https://www.applefritter.com/content/how-fix-nonstandard-apple-1-video

 

macintosh_nik asked:

 

"... how are things going with the 5.25 drive card project for the Apple-1, which you so intrigued everyone with this spring?"

 

Uncle Bernie answers:

 

Well, in this summer 2021 I had developed this project to the point where I could run a ~1.8K Byte program on the Apple-1 which would:

 

a) format a floppy disk

b) write random sectors on random tracks with random data

c) keep a CRC checksum record for each sector on the disk

d) verify (before over writing a sector) by reading the sector that it still had the right CRC

e) output a log of retries / errors encountered

 

Basically, a tough test to mimic what happens to a floppy disk in a real computing environment.

 

It worked fine. Problem solved. No  more intellectual challenge for me. I have proven that I can design a Woz Machine based floppy disk controller hardware and the RWTS software needed to run it on the Apple-1 despite of the nontransparent DRAM refresh cycles. Which cannot be compensated for in software.

 

The "secret" - and the solution to the riddle the two or three guys who were interested (thanks !) and tried to solve is the following:

 

Time Flux Compensator = "TFC"

 

Unlike the "Time Flux Capacitor" of the famous but fictional Doc Emmet  L. Brown, Ph. D., from the "Back To The Future" movie franchise, my more humble - but real world - IC just warps the time axis of the FDC data stream such that  despite of the nontransparent DRAM refresh cycles of the Apple-1, to the Woz Machine and the floppy disk drive everything looks normal. A nice little engineering exercise to show how brilliant I am brain wise.

 

And that's that. End of story. The "hard nut cracked". No more intellectual challenge for me. No more of my precious and invaluable RQLT invested in this project. You thought I would turn it into a full blown Apple-1 floppy disk system ? Complete with a full blown Apple-II compatible RWTS and a port of Apple DOS3.3 ? Sure I could do that. Any idiot able to code in 6502 assembler could do that. I wrote a "fake" DOS in "C" which is able to do CATALOG and read files off a DOS3.3 disk image in about one afternoon. Trival. Not challenging at all. This stuff is so much below my pay grade and my skill level that I refuse to do this.

 

So end of story. Has been a nice project though. The TFC really was a challenge for me. Even at my IQ. Next time I will design Star Trek Warp Drive.  (Just joking, I am solidly grounded in reality). Making the WOZ Machine work on the Apple-1 by "inventing" the TFC I consider my finest engineering achievement in the field of digital electronics. Much like Woz considers the Disk-II system to be his finest achievement (and I agree).

 

But that's that. My achievements in analog electronics (such as the 1ppm/K bandgap reference using only a room temperature trim on the tester) or my 50ppm/K residual tempco in a crappy sputtered aluminum current sense resistor (native 3900 ppm/K) by far are more important achievements. The sh*tty company who bought Linear Technology just cancelled all the famous products using my patent for the latter (they lost the "secret sauce") and my 1 ppm/K bandgap reference was demonstrated in a prototype but never entered mass production. My privately patented and owned one wire mixed signal bus system which would enable remote (web based, around the world) diagnostics of almost every electronic PCB also never was manufactured despite the prototypes did work just fine. The patent trolls who claimed that they want to buy my patent for that system for a measly $50,000 tried to defraud me in the purchasing contract, but my jewish lawyer spotted the trap and was smarter than their jewish lawyer (They are the best - think "Saul Goodman" from Breaking Bad. Great show. The only downside is if you do the math you will find out that "Heisenberg" (Mr. White) never could have cooked up $80 million worth of meth.)

 

As far as I'm concerned I'm out of this world of usury, cheating, and deceit, and if you want your "vaccine" which means certain premature death, go get it ! And give it to your kids, too ! The world treated me unfairly (despite I got somewhat wealthy) and after the mass dieoff from the "vaccine" I will be the main star in my favourite movie "The Omega Man" with Charlton Heston. I will cruise through empty cities in an American V8 driven cabriolet, and whenever I see something move, I'll grab the submachine gun on the passenger seat and shoot up them mutants, like Charlton Heston did in the movie.

 

And in some 5-20 years, I'll die myself of old age. Nobody will be left to remember my technical exploits and achievements. I have nothing to show for, like most of us do. Should have become a politician, like that Austrian painter with the funny moustache. Seems the only way to fame is to kill millions of people, legally, without being called a "mass murderer". Like politicians do all the time. But enough of that. Allow me one final disclosure from the Nazi empire: in the late 1930s, there was a German stage comedian who had a funny moustache. And he had a German shepard  (dog) who wore a swastika armband and could do the "ssieg heil" gesture by raising his right front leg. The audience laughed a lot. As a consequence, the comedian was arrested and disappeared in the Dachau concentration camp. The dog was adopted by the Austrian painter and was renamed "Blondie". The dog could still do the stage trick and it was a lot of fun on the "Berghof" showing that to the guests. The Austrian painter poisoned the dog in the Fuehrer bunker before he shot himself in the head. 

 

This is how you get famous and into the history books. Go and become a politician. I failed. I'm just an IC designer. Nobody cares.

Macintosh_nik's picture
Offline
Last seen: 2 hours 51 min ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

I think that's not exactly what a lot of people, including me, were counting on. This card could be the most in demand if you connect it not a real floppy drive, but an immulator like the Apple II. But it's up to you, of course. Perhaps someone, at some point, will bring it all to an end. Thank you!

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
There is hope ....

I don't know what "macintosh_nik" meant with his previous post. 

 

All I would need to continue with the Apple-1  floppy disk controller is some cheer up from Apple-1 owners and I will pull the project off the back burner and continue to complete at least the RWTS.

 

Please understand I am quite old and my RQLT is running out and I can't squander any of my RQLT to mere coding work that could be done by anyone fluent in 6502 assembly language. I have more important work to do before I croak / keel over.

 

So far nobody - ABSOLUTELY NOBODY - has contacted me to pick up and carry on the flag on this project. NOBODY !

 

So why should I continue to develop the RWTS software. 

 

Tell me why.

 

One guy (macintosh_nik) is not enough motivation !

 

Macintosh_nik's picture
Offline
Last seen: 2 hours 51 min ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

 

I meant to connect a floppy drive immulator to this card.

 

Why should you continue this work? 

 

Because you're one of the best at it.

 

Because you really can do it.

 

Because you can't go on your journey yet anyway, so there's time.

 

And finally, because you don't really owe ANYTHING to ANYONE, but if you do, you should finish the job. Take a couple of pictures of the prototype and write that all is fine, but lost interest is not the final, which was all expected. This is somehow not professional. 

 

You're sorry if what Uncle Bernie, I'm used to speaking directly.

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Don't worry ...

... I have planned for everything.

 

All my wealth/assets are in a Trust. If you don't know what that is, it's a legal construct that manages the assets by a "Trustee". As long as I live, I'm the Trustee. But when I die, lawyers will become the "Trustee" and have to execute my instructions I gave to the Trust.

 

The first rule of my Trust is that in case of my death not being natural, but by violence from criminal or state actors, the Trustee will hire mercenaries to hunt down and kill the perpetrators and those who sent them.

 

The second rule of my Trust is to secure all of my technical notebooks and designs and make them public domain, downloadable on the internet.

 

The third rule of my Trust is that all my collections of historic computers etc. (several storage units full) shall be auctioned off.

 

The forth rule of my Trust is that everything else of my earthly possessions shall be destroyed.

 

The fifth rule of my Trust is that my body shall be incinerated and the ashes flown by private jet to a specified island in the Indian Ocean and dispersed there into the Ocean at an exact point given by exact GPS coordinates. This is the location where I did my first scuba dive and I was mesmerized by the wonders of the Ocean. Like Captain Nemo of the Nautilus, I cherish the life beneath the sea much more than the life on the dry land.

 

You see I'm no fool. I have planned for everything.

 

 

--- Uncle Bernie

Macintosh_nik's picture
Offline
Last seen: 2 hours 51 min ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

Now I don't understand anything... 

 

Just think that in 10-20 years the new generation of Apple-1 builders will be reading this wonderful forum and will find this post. Such an ambitious start, making the impossible possible and other beautiful words. But it's still essentially words.

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Ok it seems that giving you a small glimpse into my soul ...

... and what really drives me on and keeps me working is fruitless. 

 

I'm just an old retired guy surrounded by many technical playthings. And I want to keep my mental capabilities and not turn into a vegetable until I die (hopefully from natural causes). So I pick technical challenges as I see fit and try to find solutions for them. Once a solution is found, I'm satisfied. I could close that technical notebook and start another little project, for the next intellectual challenge. But nobody else benefits or is any the wiser.

 

So from time to time I test the waters if somebody else in the world (Hello - anybody out there ? - Anybody ? Hello ?) would be interested in the little project I just did. To build a copy at least. Or, even better, to carry on the torch and write software for it, and make it more useful. This is why I publish snippets of information on Applefritter.

 

If such a little project finds enough interest / resonance then I can justify the extra expense in investment of my irreplaceable RQLT to apply some final polishing on the project, such as drawing nice schematics and writing up documentation so others can use it and further develop it.

 

This Apple-1 floppy disk controller took me almost a year to get it into the current shape. It's not a "little" project. The technical documents, schematics, state machine diagrams, timing diagrams, etc. fill a folder which is 1" thick. Hundreds of pages. And this does not include any of the software I wrote for it. The current incarnation of the RWTS was preceded by many, many development steps.

 

And it finally works !

 

To turn it into a tarball I could give to the world such that people could understand it, build it, and use it, would require many more months of my RQLT. Nothing is in a publishable form yet, all is hand drawn. The RWTS works but still misses the IOB layer on top of the basic I/O routines. This IOB layer must be added such that Apple DOS3.3 can call the IOB functions in the usual way.

 

So, this is the "price" I would need to pay in terms of my RQLT to make this Apple-1 Disk-1 system available to the word.

 

Is it worth to do all this work for the three or four people in the world which have shown interest for it ? What would these handful of people do if they had the hardware and the source code ? Would they just "collect" these artifacts as a curiosity and occasionally show it to disbelievers who say it can't be done ? Or would they carry on the torch and invest a lot of their own RQLT and write a DOS (or Mini-DOS) for it ? See, I can't do everything myself. Not enough RQLT left to do that.

 

For me, in terms of feedback / interest shown / praise this is the most disappointing project of my whole life. Not that it would be the first one of those brilliant marvels of engineering I have designed which found ZERO takers and did NOT make me any money nor fame. The "industrial establishment" always nodded, said "well done", "good idea", "innovative", and some other hollow words, and went away. Some ordered their own design teams to steal my idea and make a knockoff (none succeeded, their engineers not being in my league). Not one contract was offered to me by the industry to actually build and market these achievements. So for me, all these projects of mine were a colossal waste of my time and my money. I did learn some lessons, though, about how the world really works: the industry never, ever allows individual inventors to come up. Their policy is to nip them in the bud, and, if possible, steal the ideas and litigate the patents to declare them null and void. I've been through this several times and I am very, very angry against those greedy and braindead corporations. Those projects where my wealth comes from were those rare exceptions I could mass produce and sell myself together with one or two partners, but no venture capital needed, as venture capitalists nowadays also are dishonest in most cases).

 

With the Apple-1 world, it's different. It's such a niche market that "those greedy corporations" cannot possibly have any interest in it. Nobody can get rich with selling stuff to the Apple-1 crowd, so it's not a matter of money (I haven't made one dime of profit with my kits so far). It's just a nice hobby. Fair enough. I don't need more green toilet paper (GTP). I have far too much of that already and the blatant theft of its purchasing power by the insane money printing the Goverment does right now makes me really angry. They steal from me in a sneaky way and I can't stop them. So any attempt to "earn" some more GTP is utmost idiotic, IMHO. If you have no money, just work enough to get just the GTP you need for the day, to have a roof, and food, and pay the utilities. Don't work one minute more so you could save some GTP: the Government will steal your savings, all of it, by inflation, and you have worked for naught.

 

Human psychology is like that: it requires motivation to do anything. Even getting out of bed in the morning requires motivation.

Fixing some breakfast also requires motivation (being hungry is a great motivator for most people).

 

Now the philosophical groundworks having been laid, allow me a few questions:

 

- Which kind of motivation do you offer me to continue to work on the Apple-1 Disk-1 system ? 

- Any volunteers to draw nice schematics and lay out nice PCBs ?

- Any volunteers to write a DOS ?

 

Note that this project has not been abandoned, it just has been put on the back burner because of lack of interest from the worldwide Apple-1 crowd. I don't know if the global Fear, Uncertainty and Doubt ("FUD") about the current pandemic, the worries about the "death jab", the loss of jobs when refusing the "death jab", and fear of the future in general is a factor for the lame response I got. I seem to notice some "disturbance in the Force" and people I interact with act weirder every day, moon prices being asked everywhere, and nobody wants to work. I had to rake and bag all the leaves on my property myself this year, which was very painful for me, and recovery will take days. The usual guy did not show up and was not answering the phone. My chip broker told me months ago I could buy 2519N from him and since then no response either despite I sent a PO. Nobody is answering the phone but the line is not disconnected. Maybe they got the "death jab" and their company runs on autopilot. Who knows. I had to order the parts elsewhere. Also, at the major distributors, some parts I need are out of stock, despite these are modern parts still being produced. Seems everything falls apart right now in the supply chain.

 

But back to macintosh_nik:

In post #27, macintosh_nik wrote:

 

"Just think that in 10-20 years the new generation of Apple-1 builders will be reading this wonderful forum and will find this post."

 

Uncle Bernie answers (off topic but necessary to understand my mood):

 

In 10-20 years most of us will probably be dead, me included. So who cares. But if there is still a technical civilisation left, and the internet still works, the survivors will be able to find my technical notes and all the software I ever wrote on the internet, and the design for the Apple-1 Disk-1 system will be in it. Don't be shocked about this opinion of mine - I'm just connecting the dots based on facts.

 

Here is a real eye opener:

 

https://sarahwestall.com/major-development-rabbinical-court-decrees-mrna-jab-absolutely-forbidden-for-children-adolescents-young-men-women/

 

IMHO, after I have read the prevalent scientific papers, the mRNA "vaccine" (and any other vaccine expressing the toxic spike proteins) highly likely may cause much the same irreversible damages to the human body as the virus does. This means a slow decline of health until a premature death by multiple, diffuse, hard to diagnose causes. Exactly how the designers of this bioweapon virus wanted it to be. If this conjecture is true, most of those who got the "vaccine" or caught the virus and survived it, may die from slowly degrading health within the next few years. If there will be enough skilled survivors left to keep the "engine of the world" running (a metaphor from "Atlas Shrugged") we shall see. I think the best chances of survival are with those who caught the virus but their immune system, thanks to individual disposition, quickly put it down before it could invade further into the body and sneakily hide to make another assault from time to time. And, of course, then they must never have taken "the jab" because they knew about their natural immunity.

 

Don't be too alarmed as I might be mistaken and I always was a pessimist (this is why my designs work robustly). But you may now understand why I have some more important worries than to finish coding of a technically long obsolete 1970s era floppy disk controller RWTS.

 

(And please, no comments on the pandemic, or the virus, or my dire predictions here in this forum. It's off topic for an Apple-1 forum and we all don't want any further discussions on these off topics. Just take the above "eye opener" as a personal gift from me and use it as a starting point to do your own literature research on this topic and then decide what is the best course of action for yourself and your family to have the best survival chances. And don't give in to coercion from any third party, neither from family, nor "friends", nor state actors. Turn on your brain, decide, plan, and stick to the plan no matter what comes. It will be a rough ride. See you on the other side !) 

Offline
Last seen: 1 month 3 weeks ago
Joined: Jul 5 2018 - 09:44
Posts: 2587
DrZ wrote:Hi Stefan, A
DrZ wrote:

Hi Stefan,

 

A Commodore vs. Apple Discussion would be much off topic in an Apple I user forum and - my opinion -should not be continued.

 

Also it is well known that personal knowledge not always represents reality, thats why people read books- or wiki..

 

To my knowledge the Commodore Floppy interfaces just as a serial device - 

 

You are correct that any computer generating serial data can be connected to a Commodore 1541 type floppy drive.  Back in the 1980s I built a Commodore Serial Bus Interface Card for an Apple II using a 6522 chip (similar to the 6526 in a C64, and the same chip as is actually used inside the floppy drive).  It was based on an Apple II card that I got the schematic for that used the 6522 and the C64 schematic.  I wrote some simple 6502 assembler to wrap code mostly stolen from a disassembly of the C64 ROM code that I called from a BASIC program.  It was pretty simplistic but you could get a directory listing of the Commodore floppy and copy files back and forth from it to an Apple floppy.

 

I built that because a guy I knew needed to move a lot of files from a C64 to a //e and he got thouroughly tired of doing it with his 300 baud modem.

 

A couple of years ago I re-created that design.  It is only 3 chips besides the 6522, a 74LS245, 74LS74 and 74LS06.  Optionally a 2716 can be added to store a little code to "boot" from the 1541.

 

Other than timing issues, I can't think of much reason why the same thing couldn't be built for an Apple 1, although personally I think that Bernie's project is way cooler and more true to the spirit of what Woz would have done.

 

 

 

 

 

 

Offline
Last seen: 1 year 2 months ago
Joined: Nov 16 2021 - 23:47
Posts: 7
I'm interested

As seen by my first post I am new to apple 1. However it's these type projects that make it extra special.

Apple as a whole and computers went down the apple ii and other route. But with this project you get to see a possible what if? What if woz didn't make the apple ii but added a different interface card?

I think there are lots of ways data (in this case) can be transferred onto the apple I, might not be the cheapest or the easiest but I for sure think it is the most interesting. 

 

To answer the first question about interest, I don't know how much the base parts cost but below $100 I am very interested. 

 

Please keep us updated. 

 

PS. Like the idea about your trust. 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Tentative cost estimate for a Disk-1 controller & some history

In post #30, Acorn wrote:

 

"I don't know how much the base parts cost but below $100 I am very interested."

 

Uncle Bernie answers:

 

I think a whole kit for the controller card could be put together for below $50 (2021 US$, in 2025 it may be billions of US$ if we get hyperinflation).

 

A little bit more if builders insist on period correct bipolar fuse link PALs instead of the GALs (which came later, in the mid 1980s).

 

The one other thing you would need is an Apple-II disk drive. The originals using drive belts need a new drive belt. But there are many examples out there sold by the Taiwanese Apple epigones who used more modern "direct drive" motors. There are no rubber belts of any kind in those drives.

 

Then you need a few 5.25" floppy disks. Amazingly, high quality ones from the 1980s, if properly stored, still do work. If they were kept too dry/hot, the magnetic coating tends to flake off. If they were stored too cold/damp, they develop mold. How this nasty lifeform can literally "eat" plastic floppy disks and then thrive and multiply eludes me.

 

All 5.25" floppy disk drives I have encountered (and grabbed whenever I could get them) needed a "cap job". This is not to be confused with "kneecapping". Instead, all electrolytic capacitors in the read/write electronics must be replaced. After 25-40 years most of them are finished and they don't do their job anymore. Replacing the few electrolytics in the direct drive PCB can be tricky or impossible. It depends how the whole assembly was put together. I encountered some which could not be taken apart.

 

The real problem why this project got put on the back burner is that it's too large a bite I took out of this sandwich. I did not anticipate how difficult and time consuming it would be to develop the RWTS software for it. If I find some volunteers who would write a "mini dos" or something like that I'm inclined to finish the RWTS and design a PCB. But you can't copy anything from Apple DOS3.3 and expect it to work on the Apple-1. Apple DOS3.3 is too large and too clumsy to do anything useful in a mere 8K of RAM. A lot of its code is needed to interface it with Applesoft BASIC and then there is the dubious "text " file type which I did not find reasonable and I'm not inclined to waste time on studying the DOS3.3 code to understand why they put in such a nasty superfluous complication and how it works. I prefer the spartanic API functionality the Unix file system provides in its most primitive form. The Unix file system manager knows nothing about the flavor of data stored in any file. It's just a stream of bytes. You can reposition in it or append.  And read and write (if permitted). All the permission bits seen in Unix can be done away with in an Apple-1 DOS, except for one bit, lock a file so it can't be deleted or written to. And like in Unix, all the format/rename/delete/copy functionality should be seperate little tools which reside on the floppy disk. I think such a Mini Dos could be done in only 2K Bytes of EPROM. The RWTS would consume the other 2K. So a period correct 2732 EPROM could be used. Of course I would design the PCB such that it can take a 28 pin EPROM but I consider that cheating.

 

I wanted to demonstrate that a "Disk-1" floppy disk controller for the Apple-1 based on the Woz Machine can be made with period correct parts, which I did, but for obvious reasons it could not have happened in 1976 because Woz designed the Disk-II controller in Winter 1977/78 and the Disk II went on sale in June 1978 (according to my notes). Such are the "period correct" key dates / events. Now if we assume that in an alternate (fictional) timeline the two Steves would have pitied their firstborn computer and would have made a Disk-1 card for it based on the Disk-II technology, Woz would have used 1978 era ICs.

 

Which means:

2708 EPROM became available in 1975

2716 EPROM became available in 1977

2732 EPROM became available in 1978

PALs were introduced by MMI in March 1978 --- too late for the Disk-II project at Apple, but appropriate to use in a Disk-1 controller which would have been developed shortly after the Disk-II came on the market (in June 1978).

 

Of course all of this nit-picking on "period correctness" may look insane as we could do everything with a tiny FPGA and even put the whole Apple-1 in it, and also a complete Apple-II to fill it up, but there is a reason why we build Apple-1 clones using period correct parts and so any Disk-1 floppy disk card for such a period correct Apple-1 clone should also use only period correct ICs, and the only liberty would be the allowances made into the year 1978 as they (Apple) never would have made a Disk-1 controller before the Disk-II controller (Apple-II was the cash cow), even if they had not decided to orphan the Apple-1 but to continue to support it. Would not have made any business sense (proof: they didn't do it) but in the fictional alternate time line as explained above it could have happened that way. Who knows what nonsensical ideas could come to the mind of freshly baked multi millionaires if they had been more eccentic than they were. If I had been in their place I would have done it, just to mock the naysayers, not to make money. Think of a public relations stunt along the lines "We don't orphan our machines and your investment is safe, so confidently go ahead and buy an Apple-II system". I witnessed that time and I saw such activity, companies trying to keep products obsoleted by the fast pace of technical progress in semiconductors alive by releasing little add-on gadgets / kits for a while. But most of them lost money and went out of business. Apple is still among us and is one of the most valuable companies in the world. So the two Steves probably did the right thing by orphaning the Apple-1.

 

Macintosh_nik's picture
Offline
Last seen: 2 hours 51 min ago
Joined: Jan 8 2021 - 05:18
Posts: 464
Hi Uncle Bernie!

Uncle Bernie really wants to get into an alternate (fictional) timeline where Apple-1 and Disk Drive ][ interact with each other. I'm not a programmer, I'm a plumber - tell me how I can help you make "the impossible possible". I'm a very fast learner, I can work at night.

Offline
Last seen: 1 year 2 months ago
Joined: Nov 16 2021 - 23:47
Posts: 7
Hey, I just wanted to see if

Hey, 

I just wanted to see if this is still on the cards? I really like the idea of this project. 

Regards

Acorn 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
About the slow progress on this project ...

Acron asked:

 

"I just wanted to see if this is still on the cards? I really like the idea of this project."

 

Uncle Bernie answers:

 

There has been a little progress with this, the RWTS is nearly complete, it just lacks the API for Apple DOS 3.3, but that's maybe a weekend of programming work. So far I've given up on the idea to write a DOS from scratch. I wrote, in one weekend, a proof-of-concept "DOS" in C, which works on Apple II disk images, and indeed it can show directories and open, read, and close files.

But it can't do writes and sector allocations / release yet. This might be another weekend of intense C programming.

The real hard part is to rewrite all this in 6502 assembly language. Many, many weeks. I don't have the time for that.

You might wonder about this method but it makes sense. Since when I had mastered "C" about 40 years ago I wrote absolutely everything in "C" first, including all my digital designs, computer architecture, state machines, combinatorial logic, ALUs, everything, and only when it worked I rewrote it in whatever target language needed ... assembler code for ST6, PIC, Z80, 8080, 6502, 68000, ABEL, Verilog, VHDL, etc. etc. ... all reasonably good languages but they are inefficient and suck when it comes to debugging of algorithms.

Hardware wise the proof-of-concept disk controller card needs a rework to generate its own clocks by means of a PLL, Costas loop, injection locked ring oscillator, whatever is cheap, quick, and dirty, because frankly, the timing signals available on the Apple-1 bus simply don't cut it. But for me this is maybe a few hours of extra work.

The proverbial elephant in the room is RAM, or the lack thereof. I've started to work on a 20k RAM expansion mod a while ago but got nowhere. It works, but only with a foul trick. I could not find out what the root cause is. The timing is rotten. But although most of my debugging of circuits throughout my career needed no more than a good analog oscilloscope, and I needed a logic analyzer only three times, IIRC, this is the 4th time in 40 years in which I'd need a logic analyzer to really get to the root of the problem. Alas, my two logic analyzers are taken apart since more than a year (or is it 2 years now ?) in an attempt to make a good one out of two bad ones.

But one thing shall be made clear: unless I die before the work is finished, there will be a Woz machine based floppy disk controller for the Apple-1, and I will make it available as a kit. I've spent more than 1000 hours in the design and test of this thing so I simply can't stop it. There are no flaws in the hardware anymore. The "Time Flux Compensator" works perfectly.

The only issue is that my day only has 15...16 wake hours of which I can use my brain maybe 4 hours at full open throttle, and this limits the amount of work I can accomplish. At the moment I have more important things to do.  I'm far from having fixed all the problems in the Apple-1. Even the work on the ACI is not yet complete. The hardware and firmware of the Gen2 improved ACI appears to be the solution sought, but there is a lot of auxiliary software under Linux which needs to be brought into shape to be published. Also, people always ask me about transformers, fuses, interlock circuits, keyboards, etc., etc.

The Apple-1 is an enormously wide and deep field of possible improvements. Unlike with the Apple II, where every nook and cranny has been investigated, analyzed, documented, programmed, modified, and expanded, by thousands of activists, in the past 46 years since it came into the world, the Apple-1 did not see such activism yet and there are not many people in the world who actually do groundbreaking work for it ... maybe five ? Or six ? Worldwide ?

 

- Uncle Bernie

 

 

 

 

NowlasWolf's picture
Offline
Last seen: 4 months 3 weeks ago
Joined: Dec 1 2023 - 20:00
Posts: 24
Interested!

This would be amazing if this project came to fruition. Doing it age appropriate and how woz would have done it is is perfect. I'm really interested to hear when this project may get further along, even a kit for the boards could be fun to start experimenting with drives and routines to drive them. Of course it sounds like you have been putting a lot of work into making sure we have a DOS to go with.

 

I know it's been a couple years since the last update here but I'm sure I'm not the only one that has a lot of interest in this still

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
Current state of the project (on the backburner) and the plan ..

In post #35, 'NowlasWolf' wrote:

 

" Of course it sounds like you have been putting a lot of work into making sure we have a DOS to go with. "

 

Uncle Bernie comments:

 

This is exactly the 'problem' with this project: lack of a DOS. What I wrote is a RWTS which was required because the read and write loops must have a reduced cycle count to allow for the 'DMA' hitting these timed loops. The TFC - "Time Flux Compensator" PAL/GAL looks for these DMA hits and counts them, and then adds wait states such that the cycle count is right again.

 

But this project is not dead. I'm just overloaded with work since I ventured into the Apple II world and started the "Replica 2e" project which at first only involved the reverse engineering of the IOU and MMU custom ICs, and then got mission creep into substituting the IWM, too. Since my skills in biochemistry are much more limited than my skills in electronics, sorry, I can't make several clones of myself, each clone having the same know-how.

 

So, lacking such clones, I must follow the work plan like this:

 

1. complete the IWM reverse engineering / substitute development work

2. complete the MMU / IOU work - some of it still not done, such as the hidden mouse functions in the IOU

3. after all the above is done, I can repurpose the test rig PCB to make an improved Apple-1 memory expansion / color graphics card

4. After this is done, I can change the Apple-1 floppy disk controller cicuit to tap into the ressources of the card of point 3.

5. Then, design PCBs for all of this.

 

Lot and lots of work to do, probably too much for one person to do this in a useful amount of time. It will take years, if I live that long (I'm in a critical age where bad things can happen at any time). Still, I continue to work on all these projects because otherwise, if I would not use my brain every day, 10h per day, 70h per week, it sure would deteriorate quickly and I would get dementia. Which would (partially) qualify me to become President (the current deal, IMHO, apparently is giving him one ice cream cone against one signature on an EO which is not read / not understood by him due to dementia, really a great deal for his 'handlers', they can shape the fate of the nation by EO as they please, no resistance ever /sarc). As far as I'm concerned I don't want to go there ... I want to keep my mental skills until I wake up one morning and I'm dead. So I will continue to work on my hobby projects until I run out of ideas or out of lifetime. But the message to you is: don't hold your breath !

 

- Uncle Bernie

 

 

 

NowlasWolf's picture
Offline
Last seen: 4 months 3 weeks ago
Joined: Dec 1 2023 - 20:00
Posts: 24
Volunteering

As a project I am actually quite interested in developing/porting a DOS over to the Apple-1. Is there any possibility of getting the plans/schematics for your interface so as to be able to work on it?

This sort of project is part of why I built my apple-1, I wanted to get more hands on experience with lower level programming and hardware design.

This sort of project would be an invaluable learning experience, I can't say I would make any fast progress but it sounds like it would be really fun and interesting.

Let me know if this is a possibility 

-Alex 

Offline
Last seen: 4 days 15 hours ago
Joined: Apr 1 2020 - 16:46
Posts: 996
About volunteering to write am Apple-1 DOS ...

In post #37, NowlasWolf wrote:

 

" I am actually quite interested in developing/porting a DOS over to the Apple-1. Is there any possibility of getting the plans/schematics for your interface so as to be able to work on it ?"

 

Uncle Bernie comments:

 

I appreciate you enthusiasm towards writing a DOS. It's not impossible to volunteer, but there are some obstacles to be moved out of the way first:

 

I don't have good, readable schematics for this project yet. What I have is hand drawn bits and pieces of the schematic and which on-the-fly changes during development were hand drawn. So I had to decipher this schematics mess when I built a DISK II controller substitute based on the same PLDs (less the TFC PAL) for my Replica 2e project earlier this year. You can see this as a "salvage" project because of the poor shape of the "documentation". So far it seems to work but at the moment I'm too bogged down with the IWM reverse engineering process to further test this new incarnation ... once I'm sure I got at least that part right, I can then proceed to make a new plan for the 'final' Apple-1 floppy disk controller (there are still some minor things that need to be sorted out ... for instance, when I load the RWTS via my keyboard emulator, the floppy disk motor suddenly starts running, which it definitely shouldn't do. I have a hunch from where this is coming (a quirk in the Apple-1) but the fix must be tested on my Replica 2e hardware first, before I move the solution to the Apple-1.

 

GENERAL REQUIREMENTS FOR APPLE-1 DOS

 

The point for writing a DOS for the Apple-1 is to   a v o i d   copying any of  Apple's code. This means you can't look at the DOS 3.3 source code which was posted on the internet a while ago. What I actually did do towards writing a DOS is to write a "C" program which reads a .DSK image of a DOS3.3 floppy disk and then provides ability to show the CATALOG of that disk image. Just to prove that I understood the formatting as explained in the "Beneath Apple DOS" book. I don't remember if it got any further than that. To be able to write to the image, the sector allocation table must be managed. Which I think I didn't write the code for yet. At least I can't remember to have done that.

 

It is NOT required to provide full DOS 3.3 compatibility. Most of the DOS 3.3 functions can be ignored, because this DOS was meant for the Apple II with Microsoft BASIC in ROM, and so they had to provide a lot of workarounds and hooks to sneak DOS functionality into the BASIC which was not prepared for that but already in ROMs. DOS 3.3 also makes a difference between file types, which IMHO is nonsense which probably came out of the first and foremost source of all evil and botched software (aka "Microsoft"). It is hilarious, for instance, to handle text files and BASIC program files and machine code files differently at a file management system (FMS) level, and Microsoft carried that nonsense over to their MSDOS from which this wrongthink also infected Windows, which still does different things with different files, depending on the three character file name extension (Ouch !). None of such evil exceptions should even exist. A DOS should treat every file the same, as a sequence of bytes, values $00 to $FF, all with the same meaning, with no CR/LF translation ever (ouch !), be able to OPEN and CLOSE such a file, and to position the read/write pointer within it, and to query position and health/status of the file. Not more. Not less.

 

Look for the basic file system calls of UNIX / LINUX, fopen(), fclose(), fgetc(), fputc(), ftell(), fseek(), etc. Essentially, every file being treated alike, on the FMS level. If you want to load and execute a machine language program, or a BASIC program, you need to invoke a shell program which provides the links to these FMS functions.

 

For the Apple-1, all basic DOS functionality should be in a bank selected EPROM located on the floppy disk controller card. This means no bootstrap loader. This DOS should be able to be started from the Wozmon like any other firmware, as with the ACI card, for instance. I think it could be fit into less than 4 kBytes, for the FMS and the DOS utilities (i.e. the shell). The RWTS however also needs space, so bank select is inevitable. I expect something around 8 kBytes in total.

 

If you are willing and able to tackle such a project, I can give you some guidelines and some code, but at the moment, I can't give you a Apple-1 floppy disk controller card nor do I have the bandwidth (in terms of my own time) to support such 'volunteer' projects. I have some hard deadlines to meet (despite it's a hobby !) because other projects, non Apple related, also must be finished before this Fall. All this keeps me very, very busy ... I actually work some 70-80 hour per week on my hobby projects, more than I would be willing to do for any breadwinning job. Ever wondered why retired people never have time ? This is the reason: when you worked in a job, the boss you hated told you what to do, which you despised to do, because their projects were so far below your own abilities, and their specifications sucked, so you did the minimum work required to produce the lousy product "they" wanted, but it would never satisfy you, as you want something better, and so you had some "time off" left. But once you are retired and are your own boss and tell yourself what to do, these are much loved, interesting, great projects and these never end ... and get more and more and more. Until they fill all time available. 

 

- Uncle Bernie

NowlasWolf's picture
Offline
Last seen: 4 months 3 weeks ago
Joined: Dec 1 2023 - 20:00
Posts: 24
Volunteering Pt 2

This project has honestly been swimming around my head all day honestly hahaha.

I certainly don't expect you to send over your precious controller card, it's why I was asking if you had schematics or plans. I certainly understand not having all those ducks in a row though. I was just thinking of a plan today that involves a simulated controller and a virtual disk to be used in place of actual hardware. The thought of it actually has me kind of excited but I'll contain myself until I actually make some progress past dumping my brain into my notebook.

To that end, code, information, guidelines, anything as to how the interface works and can/will be interacted with will be invaluable. I doubt I could ever make something that 100% simulate the hardware but I hope I could get close enough like a rough cut that you just make a few adjustments to to then fit the DOS to the controller.

I certainly agree with your sentiment that simplicity is best and no reason for Apple DOS/ProDOS compatibility or porting. Something that is as small as possible with the utilities you would ever need/want feels like it would work best on the Apple-1.

I am interested to see if a DOS could be made with a bootstrap loader and a smaller ROM on the board as this feels more in line with the times, but due to the limited memory on most Apple-1's having all the basics on the ROM itself is very understandable, but a challenge I would still accept in an effort to keep things small and efficient as possible.

For now I can do all this development on my replica-1 plus and/or P-lab's SD storage card board that adds additional memory so as to support my crazy scheme plus easier ways to upload and test my work.

I certainly can't wait for a time where I could potentially retire and fully indulge in these sorts of things, but that's in about 50 years time. As long as I can fill in my "time off" with things I enjoy for now that has me satisfied, I'm in no real rush either, I enjoy the trip and the roses.

In any case let me know! I'll likely be working on some aspect of this regardless as it has peaked my interest at this point. Having better details will just make my work more accurate and focused.

 

-Alex

 

 

Log in or register to post comments