Post by James DavisHi Michael,
I was not trying to FLAME you. I truly did not understand what your meant by saying, "To read a full "disk nibble" -- which I'll hijack the normal "nibble" convention ...."
Fair enough.
We both made mistakes.
Your mistake was saying:
"Stopped reading at your first math mistake. "
When it would have been far better to say:
"I don't understand why you are "hijacking" nibble. Is this a standard term or one you invented?"
My mistake was assuming that everyone knew what a (disk) "nibble" was. The term "nibble" W.R.T. Apple 2 Disk Drives has been pretty consistent and common knowledge for the past ~40 years.
I probably should have said:
-- which I'll hijack the normal "nibble" convention to use the de facto Apple 2 lingo --
I don't keep track of who is new and who isn't but I'll try to take a little more time to explain definitions in depth to prevent misunderstandings in the future.
Post by James DavisI did not remember that one bit on a diskette is really two, and that a "nibl" is really 8-binary digits, or a "byte" on a diskette. I stopped reading because I knew I would not understand the rest of your post until I understood what you meant by, "To read a full "disk nibble" -- which I'll hijack the normal "nibble" convention -- takes 4us * 8 bits / disk nibble = 32 µs/nibble."
That was the problem -- you didn't understand, so you assumed I made a "math mistake" instead of asking a clarifying question.
Post by James DavisNow that you have made it clear, I shall continue reading your post.
Hopefully I didn't make any actual math mistakes. :-)
Post by James DavisI think, though, based on what your said, that Wozniak's disk "nibl" is different than a "nibble" in more than just spelling.
Interesting theory and there may be some truth to it but I believe Woz was just abbreviating "nibble."
Why?
Remember, this is from an era where assemblers restricted symbols names down to 8 characters -- for two reasons:
1) memory was _extremely_ limited -- the common case was that symbols were < 8 chars so that is the standard picked, and
2) string comparison was one of the performance (*) bottlenecks. Since string hashing on the 6502 was more expensive then just doing a raw string compare, limiting strings to 8 characters made "some" sense.
(*) A perfect example of just how bad a naive string compare performs to hashing is my project:
https://github.com/Michaelangel007/perl_crap_reference
With this restriction everybody abbreviated the fuck out of (symbol) names so they would fit.
i.e.
We see the routine is named:
PRENIB16 <-- less than 8 characters
And not the "proper" 'NIBL' name:
PRENIBL16 <-- 9 characters
Likewise we see abbreviations such as:
RDADR16 <-- "ReadAddr16"
Now one bit of evidence towards your theory is this snippet:
001 SBTL '16-SECTOR PRENIBLIZE'
002 ****************************
003 * *
004 * PRENIBLIZE SUBR *
005 * (16-SECTOR FORMAT) *
006 * *
007 ****************************
But if we keep reading down again we have more evidence that Woz was just abbreviating "nbble" whenever he needed to:
035 PRENIB1 DEY
049 PRENIB2 LDA NBUF2,X
Why didn't Woz call these PRENIBL1, and PRENIBL2, respectively ?
Was Woz just being lazy and thus abbreviating:
* "Nibble" as "NIBL" and
* "Pre-nibbilizing" as "Preniblize"?
Did Woz _intentionally_ coinning a new homonym? "Niblze"
Was Woz just a bad speller?
I don't have know. The Etymology of Woz's "NIBL" is definitely an interesting story!
I could probably count on one hand all the people in the world who would be interested in THAT answer. :-/
Other authors definitely noticed the abbreviation.
Beneath Apple DOS (B.A.D), Figure 3.17, calls this the: PRENIBBLE routine
They also use the correct spelling:
"... This is done by the 'prenibble' routine at $B800. ... Figure 3.18 shows the before and after of prenibbilizing. ..."
I do notice that the B.A.D authors use the term (with quote):
"disk" byte
as much as possible -- possibly to minimize confusion.
I understand where Woz was coming from. A disk nibble, originally, only had 4 valid bits, even though 8 bits were read.
It is too bad he didn't coin a new word.
Or if he did, maybe everybody assumed he just abbreviated it.
But here we are ~40 years later discussing it. :-)
Post by James DavisA "nibl" is really: "one 'byte' on magnetic media representing one 'nibble' of serialized data" (input or output to or from an electronic device for interpretation or storage, respectively).
Yes, in the _context_ of the Apple 2 Disk.
Hence why I mentioned:
"The name is unfortunate but regrettable."
And use the term:
"disk" nibble
to try to minimize confusion.
Post by James DavisJames Davis
P.S. I do not understand why everyone reads so much more into simple questions than what they ask.
James, it was your tone in your second comment. "I stopped reading after your math mistake."
Instead of acknowledging that you were COMPLETELY outside your depth of field and didn't understand -- you assumed that I didn't know what I was talking about.
How we say it is just as important as what we say.
i.e. That classic "Form vs Function" debate.
ANYWAYS, it is all good. The confusion is cleared up, and we can go back to pontificating and de-railing other threads. :-)