ITT 2020
The ITT 2020 was an Apple II computer clone manufactured by ITT under license from Apple Computer, specifically for the European market.
In the Benelux, it was distributed by Bell Telephone mfg. company. It was distributed in the United Kingdom by Microsense Computer Limited.
The major difference, and the reason ITT believed this personal computer would be a success, was that the color video signal conformed to the European PAL standard, rather than the American NTSC standard. This meant color graphics could be viewed using a standard European monitor or TV set, rather than having to import an NTSC monitor from America or Japan as was the case with the Apple II.
ITT sold this computer for a few years, starting in 1979. When Apple Computer started shipping the Apple II Europlus, ITT withdrew from the market, although the Europlus did not support color.
ITT also supplied a 140kB single-sided floppy disk drive that was identical to the Apple II disk drive, supporting 13 sectors under DOS 3.2 on a floppy disk. They never supplied the upgraded 360kB double-sided double density drive supporting 16 sectors under DOS 3.3.
Other changesThanks to H.F. van Rietschote, who wrote an article in Databus Magazine on this subject
- A 220 V 50 Hz Power Supply manufactured by ITT themselves
- The case was spray-painted a matte silver color, and the keyboard was black.
- The ITT 2020 used a higher clock frequency, necessary for the PAL signal. A 17.73 MHz crystal was used, whereas the Apple II used a 14.318 crystal- four times the NTSC subcarrier frequency of 3.58 MHz. In the ITT 2020, the crystal frequency was divided by 17 to give the microprocessor a clock frequency of 1.042 MHz. In the Apple II, the frequency was divided by 14 to give a microprocessor clock frequency of 1.023 MHz.
- The slots in the back of the casing were smaller, making it extremely difficult to install some expansion cards.
- On later versions of the ITT2020, the reset switch only worked in combination with the Control key. This was done to avoid the many accidental resets earlier users complained about.
- The 4th annunciator output was not supported. The I/O addresses Apple used for this output were used by ITT to bank-switch the extra RAM chip.
- The third button on the game connector was not supported, as ITT used the I/O address of this input to read the extra RAM.
- The bug in the ONERR GOTO routine in the Apple II that required users to BLOAD a patch, was resolved in the ITT 2020.
- Some users reported a bug in the XDRAW routine, causing strange shapes to appear under certain circumstances.
- The DOS ITT supplied with the 2020 was Apple DOS 3.2. However a catalog listing showed Basic programs as type 'P' rather than type 'A'
Consequences
- If the program used the Applesoft Basic graphic commands in ROM, the image would appear squashed- circles would appear as ellipses and squares as rectangles.
- If the program accessed the video memory directly, 40 white or black vertical lines would appear through the image due to the 9th bit not being set.
- Programs using the HPLOT command with multiple parameters did not work properly.
- The colors were different to those on the Apple II in both hi-res and lo-res modes. In lo-res mode, some colors were not available.
- Programs using the missing annunciator output or missing switch input did not work.
- Because of the difference in clock frequency, programs on the ITT 2020 ran 2% faster.
- Programs that automatically loaded the patch for the ONERR GOTO bug would crash if an error occurred, as this bug was already fixed.
- Programs making system calls to subroutines in ROM would sometimes crash because some entry points had changed.
- BSAVE and BLOAD of graphics images did not work, as the 9th bit was not included in the file.
- The Hi-res routines in Apple's Programmers Aid did not work.
- The different timing signals made some peripherals and expansion cards malfunction.
Graphics
Differences with the Apple II
The most significant difference between the ITT 2020 and the Apple II is the Hi-res graphics resolution. ITT increased the horizontal resolution from the 280 pixels the Apple II used, to 360 pixels. The vertical resolution however, remained the same. This made many Apple II programs incompatible with this computer.The higher resolution was a necessary consequence of the higher frequency of the PAL color subcarrier. In order to provide enough bits to the video shift register to generate the higher PAL subcarrier frequency, 9 bits per memory location were needed, rather than the 7 bits the Apple II used. To achieve this, an extra 16Kx1 memory chip was added to the motherboard, which added a 9th bit to the Hires memory pages. This made it necessary to modify the graphics routines in Apple's Applesoft Basic interpreter in ROM. To emphasize this difference, ITT called this "PALSOFT".
To make room for the longer graphics routines, the HPLOT instruction was limited to a single parameter, rather than a string of parameters.
Accessing the 9th Bit
The extra RAM chip was basically a write-only memory: data was written to the chip by software, but read out by the video generation hardware.The data input of the chip was wired to the data input of the 8th bit of the main video memory and was therefore equal to this 8th bit during a write operation. By enabling the extra chip, the same data would be saved in the 9th bit as in the 8th bit.
For example, in order to set the word of memory location 'HiresLoc' to 0b110100101, the following routine is necessary:
LDA $C05E ; enable the extra RAM chip
LDA #$80 ; set MSB to 1
STA HiresLoc ; save data to both bit 8 and bit 9
LDA $C05F ; disable extra RAM chip
LDA #11010010 ; load the remainder of the data
STA HiresLoc ; save to main memory, but 9th bit remains set.
To change only the 9th bit requires even more programming:
LDA HiresLoc ; read bits 1-8
PHA ; store on stack
LDA $C05E ; enable the extra RAM chip
LDA #0 ; bit 9 must become 0
STA HiresLoc ; but bits 1-8 are also changed
LDA $C05F ; so disable extra RAM chip
PLA ; retrieve data from stack
STA HiresLoc ; and put the old value back in 1-8
It is possible to read the 9th bit when this is necessary, for instance, to save a Hires image to disk.
This is achieved as follows:
LDA HiresLoc ; read address
LDA $C063 ; MSB of this address is value of bit 9 of last address read in
BPL notset ; branch if bit is zero
Hires conversion board
The bitmap graphics compatibility with the Apple II could be improved by installing a third party Hires conversion board.When enabled this board removes the video artifacts caused by programs ignoring the 9th bit. This significantly improves compatibility with software intended for the original Apple II manipulating graphics memory directly. However even with this board enabled the colors still differ from the original Apple II.
When using PALSOFT BASIC commands for drawing Hi-res graphics, the Hires conversion board should be disabled to see the graphics as intended.