While some floppy drives have a sensor to determine when the head is at the outermost position, the Apple uses four approaches:
On startup, it blindly tries to move the head outward about 40 tracks. When the motor hits the end stop it will be unable to move further and will consequently stop. Once the Apple has done this, it will assume the head is at the ...
I was working in software development at the time, and this wasn't seen as a problem. Colour monitors were expensive and not usually high-quality.
In PC-compatibles, the Colour Graphics Adapter (640x200) wasn't regarded as adequate to be the only display on a machine; the Enhanced Graphics Adapter (640x350) appeared the same year as the original Mac, but ...
A nice one - and coming up every now or then.
The Apple IIs video logic produces a B&W bitstream at the right frequency to bedazzle an NTSC TV set in a way to make it 'see' colour. The colours produced are based on the way the bitstream creates interferences that are detected by the TV set as colour information.
The encoding is rather a series ...
The Mac was designed from the start to be a GUI-based machine so clear, high-resolution graphics were a requirement. At the same time available memory was extremely limited due to cost considerations. The original Macintosh only had 128kB of RAM of which over 21kB were used by the display. Going to even 8-bit color at that resolution would have pushed the ...
UCSD Pascal was a product of UCSD - The University of California at San Diego. It was not a product of Apple.
UCSD Pascal was available on a number of machines, including the PDP-11, TI99/4, the BBC Micro and the IBM PC. It was a noble attempt to produce a fully cross-platform language.
UCSD Pascal used a disk filing system that was intended to be ...
The Apple II was a hobbyist's computer that unexpectedly found a business niche. Apple recognised that niche in its design of 1980's Apple III. Specifically, it thought that the following were necessary changes to produce a business computer relative to the contemporaneous II+:
a full-ASCII keyboard, with lowercase and uppercase entry;
an 80-column display;
They both shared the same memory so it didn't really forward instructions.
The Z80 card stopped the 6502 running using the DMA signals and the system swapped between the two by writing to $CN00 where N is the slot number.
Since the memory was shared the Z80 stuffed some values (A,X,Y,P) into the 6502 zero page ($F045 and up from the Z80 side) stored the ...
Managing memory on an Apple II using Applesoft BASIC can be quite complicated, especially for large programs.
A general map of Apple II memory at power-up looks like this:
$E000-FFFF - Monitor ROM / Extended RAM 8 / 8 kB
$D000-DFFF - BASIC ROM / RAM bank 1 & 2 4 / 4 / 4 kB
$C800-CFFF - Shared slot ROM memory 2 kB
$C100-C7FF - Permanent ...
I imagine it being a huge downgrade for some, not to have color on the Macintosh. Macintosh games were black and white in the beginning, while Apple II had color.
For back then the whole assumption of a 512x342 pixel B&W display being a downgrade from a display with an effective (*1) colour resolution of 140x192 is so strange(*2), I doubt anyone would ...
The Apple II reads disk tracks as a continuous stream of bits. To make sense of the data, it's necessary to figure out where individual bytes start. This is done with self-sync bytes.
Standard self-sync bytes are FF, followed by two "invisible" zeroes:
byte 0 ** byte 1 ** byte 2 **
11111111 00 11111111 00 11111111 00
The Apple II will read bits ...
Fast Screen Refresh With PEI Slamming
(Or: Dirty Tricks With the Direct Page)
This article is based on my KansasFest 2004 presentation "Code Secrets of Wolf 3D."
Drawing super high-resolution (SHR) graphics on the Apple IIgs is slow. Unfortunately, the SHR screen's memory in bank $E1 is located in "slow RAM" — that is, memory controlled by ...
UCSD Pascal was developed prior to the Apple II, during the 70's in San Diego, using PDP-11 class machines with a 512-byte block disk structure. In the process of porting it to microcomputers, often (not always) the file system also got ported.
UCSD Pascal was seen as a closed environment offering everything in one place. Today we might call this an IDE ...
how do CPU cards work on the Apple II if there's no way to take the bus over?
That's what /DMA (pin 22) is good for. It halts the CPU and tristates the bus. Now any card can take over.
Unlike its daddy, the 6800 (and many other CPUs as well), the 6502 can be halted in at any clock state by pulling /RDY. It will extend the actual cycle (*1). This doesn't ...
If you look at the screen clear code in the Applesoft BASIC ROM, you'll find this:
f3f6 lda $e6 ;put base address of current hi-res page
sta $1b ; into $1a/1b (will be $2000 or $4000)
f3fe lda $1c ;get color value
sta ($1a),y ;store it in frame buffer
jsr $f47e ;...
The keyboard on the Apple II+ was designed to type uppercase letters only, which rather limited the machine's usefulness for word processing. Because almost nothing used paddle button 2 and very few controllers even had a third button, a common user-installed modification was to run a wire from the shift-key signal to the paddle-button-2 input. Word ...
Why did the original Apple //e have two sets of inverse uppercase characters?
Simple: To allow lower case inverse letters.
It's all about the clever way Woz arranged the original II's single character set to save in hardware and offer additional functionality. There is only a single character set of 64 characters, showing up 4 times in 256 entry character ...
1. What are screen holes?
The Apple II video architecture is based around a text display of 40 columns by 24 rows. Woz had already built an ARPANET terminal for a TV, and said in his book iWoz that "Forty columns was the limit of American TVs".
To map those 40 column rows into memory sequentially would for various reasons have increased the chip count - ...
The maximum is 8309 ($2075) nibbles for track 0. Well, according to a little experiment I did. ; - )
The Disk II uses Constant Angular Velocity standardized by Shugart at 300 RPM. The earlier 8-inch drives were 360 RPM, and since the physical media was the same it's likely that 300 RPM was chosen to increase data density on the smaller disks, and perhaps ...
The Apple II has an input buffer separate from the screen, with a maximum capacity of 256 characters. Typing a printable character adds it to the buffer and the screen. The left-arrow button removes a character from the input buffer and moves the cursor left. The right arrow adds the character at the cursor position to the input buffer and moves the ...
Apple II is also available in board-only form for the do-it-yourself hobbyist. Has all of the features of the Apple II system, but does not include case, keyboard, power supply or game paddles. $598.
— Apple Computer Inc. advert, p.~15 Byte Magazine Volume 02 Number 06.
This could just have been an ad, and never followed through, but anecdotally:
The Bilestoad. Axes, flying discs, and blood - kind of narrows it down. ; - )
But here's a screenshot with axes, a flying disc, and blood.
Here's a clean crack (playable in-browser), a video of the game and an interview with the author. This was a controversial game at the time, and possibly influential. John Romero is apparently a fan.
If I recall correctly, there were lots of variations to implement this scheme. Besides embedding characters in the listing that would reboot, or clear the screen every so often, a particular one I remember worked roughly like this:
The listing only consisted of a single CALL. The internal structure of the BASIC program was carefully changed so the listing ...
Apple has not released sales figures for their early systems, so your question cannot be answered accurately. I will therefore do so inaccurately. ; - )
Jeremy Reimer published historical computer sales data for an article he wrote.
Starting with that data and using tidbits from other (often conflicting) sources, I derived the following highly questionable ...
The way to identify different Apple IIs is described in Apple II Miscellaneous Tech Note #7. Excerpting from that document:
To identify which computer of the Apple II family is executing your program, you must check the following identification bytes. These bytes are in the main bank of main ROM (shadowed on the Apple IIgs), and you should make sure that ...
Assuming your data is on floppy disk and you have a functioning disk drive it is pretty easy to transfer files from an Apple II via cassette port. The program that I recommend using is called ADTPRO.
You will need to first bootstrap ADTPRO using the following tutorial:
Applesoft is usually fairly well-behaved. For instance, this will give an OUT OF MEMORY error:
10 GOSUB 20
20 GOTO 10
However, there are many Applesoft bugs, mostly benign. Wikipedia mentions a couple that "crash":
A deficiency in Applesoft's error-trapping with ONERR means that the system stack would not be reset if an error-handling routine did not ...
In composite video, a scanline has the following format:
Every line has:
a sync mark, which is the lower level, on the left.
a color burst, which I'll explain below.
The sync mark is used to tell the TV set to bring the beam back to the left side of the screen.
At the time TVs were black and white, you had the sync mark and then the video ...
This is an AppleSoft issue where it puts spaces either side of a token.
PET/CBM BASIC (based off the same code base) doesn't do this.
Tokenising ignores spaces, this means it can be difficult on the PET to see some of the problems that the tokeniser can cause.
For example LET AFOR=ONER gets parsed as LET A FOR = ON ER
Which is very difficult to see on a ...
I personally don't believe that Winger understood anything that wasn't well understood by both Apple and IBM at the time.
I would say that this passage is pointing out the confusion that Apple's approach to "computing in the workplace" bore little resemblance to IBM's well-established approach to "computing in the workplace." The commentary is attempting to ...