Share on Facebook Share on Twitter Email
Answers.com

Jupiter Ace

 
Wikipedia: Jupiter Ace
 
Jupiter Ace
Jupiter Ace
Type Home computer
Release date 1982
Discontinued 1984
Operating system ACE FORTH
CPU Z80 @ 3.5 MHz
Memory KB (Max=49 KB)

The Jupiter Ace was a British home computer of the early 1980s, produced by a company, set up for the purpose, named Jupiter Cantab. The Ace differed [1] from other microcomputers of the time in that it used FORTH instead of the traditional BASIC.

FORTH systems combine high performance and code compactness [2] with the programming benefits of high-level programming languages [3]. The designers had the courage to deliver [4] FORTH's many advantages to the public, education and industry[5].

Contents

Introduction

Jupiter Cantab was formed by Richard Altwasser and Steven Vickers. [6] Both had been on the design team for the Sinclair ZX Spectrum. Altwasser did some work on the development of the ZX-81 and in the design of the hardware of the Spectrum. Vickers adapted and expanded the 4K ZX-80 ROM to the 8K ZX-81 ROM and wrote most of the ROM for the Spectrum. The Jupiter Ace was named after the early British computer, the ACE. The name was chosen to emphasize the "firsts" of using the FORTH language and resulting performance.

FORTH is a threaded code programming language that also acted as operating system. The system was adapted to the disk-less tape-using home computer hardware. On average, and for similar programs, ACE's FORTH was 5 times faster and needing half the RAM (RAM was an expensive luxury at the time) of an equivalent program written in interpreted BASIC. ACE's FORTH made it a very fast microcomputer and simultaneously one that promoted both well structured code and modular programming. Forth programs usage tends to be more RAM efficient as the bigger programs are, the more they reuse previously-defined code[7].

System characteristics

A small Jupiter ACE system

The Jupiter ACE is often compared with ZX81 due to its similar size, low cost, and similar form factor, although internally it is an independent design. The ZX81 used 75% of its Z80 CPU time to drive the video. In ACE the Z80 CPU was fully used for running programs. The ACE used dedicated video memory of 2 KB, leaving the 1 KB main memory free for user programming.

The Jupiter-Ace was new to the market and the designers couldn't afford to use an ULA - which were common in other computers (such as the ZX 81) to reduce component count - because these weren't economical in small quantities. Instead they reduced the number of chips required by using clever design.

Like the Spectrum, the Ace used black rubber keys. Audio capabilities were CPU controlled with programmable frequency and duration. Sound output was through a small built-in speaker. A television was needed as a display - which was in black and white only.

Programs and data storage was by means of a common cassette tape, which was typical of home computers of the time.

Specifications

  • Processor  : Zilog Z80 clocked at 3.25 MHz.
  • Memory  : 1 KB, expandable up to 49 KB.
  • Video : Independent sub-system using dedicated 2 banks of 1 KB making a total of 2 KB of extra VRAM.
  • Sound : Internal Speaker.
  • Keyboard : was the same type used in the Spectrum, but avoiding single-keyword entry (due to the extensible nature of the residing Forth language).
  • Expansion : 2 connectors: One (standard, CPU related) similar to the one in the ZX-81. The other (extra) connecting to the Video sub-system.

References to the ACE RAM usually include the 2 KB video memory, like the Sinclair computers did, leading to some confusion.

Hardware

Video :
One 1K bank allowed redefinition of most of its 128 characters ASCII based characters in 8×8 pixel bitmap format. The other 1K bank stored the full screen display of 24 rows x 32 columns of characters in black and white. So while the Ace had only one text video mode, redefinition of the character shapes could provide graphics in a low resolution of 64x48, and a higher resolution mode of 256x192 graphics, limited by the 128 available (definable) 8x8 chars. Both graphics and text could be displayed at the same time.

The font of the character set was identical to that of the Spectrum, but the display was white on black instead of color. Although a color graphics board was designed [8] none was ever commercialized.

Sound
An internal speaker was directly controlled by the CPU in single task mode, with control of sound frequency and its duration in milliseconds.

External Storage :
Storage was through a cassette tape interface at 1500 baud.

Add-Ons :
Originally developed to receive ZX-81 add-ons, with a compatible expansion slot, it was actually delivered in a different configuration. A simple rewiring adapter could be used, but not very effective due to power losses. Dedicated add-ons were needed and built by external companies, after the initial 16KB by Jupiter Cantab.

RAM [9]
  1. Pack 16KB by Jupiter Cantab.
  2. Pace 16KB and 32KB by Stonechip Electronics.
  3. Pack 48KB by Boldfield (new Jupiter ACE owner after Jupiter Cantab).
Keyboard [10]
  • Memotech Keyboard, by Memotech.
Sound [11]
  • SoundBoard (1983) by Essex Micro Electronics,
Storage [12]
  1. Jet-Disc Disc Drive System (1983) by MPE (control up to four 3", 5", or 8" drives).
  2. "Deep Thought" Disc interface with a 4K AceDOS in an EPROM (1986) by J Shepherd & S Leask.
Printer Adapters
  • ADS Centronics Interface Machine (1983), by Advanced Digital Systems,[13]
  • RS232 & Centronics PrinterCard (1984) by Essex Micro Electronics.[14]
Graphics Card
  1. Gray Scale card - 4 shades of gray by S Leask (1986)


Firmware

The ACE had an 8 KB ROM containing the Forth kernel and operating system, and the predefined dictionary of Forth words in about 5KB. The remaining 3KB of ROM were used for tape control, floating point numbers library and character definitions table[15]. Some of the ROM was written in Z80 machine code, but some was also coded in Forth, both maximizing the number of functions available in ROM and also maximizing the RAM space for extensions.[16]

The next 8 KB were split in 2 blocks of 4KB each. The video subsystem access allowing two different priorities by the user to the 2KB VRAM, Regular or Overriding video. The 1 KB of user RAM was only partially decoded, so it echoed to fill the next 4 kB block. So a 16KB space was used for ROM, VIDEO, and USER, leaving free a 16KB space for RAM extension plus 32KB space free for all possible usages.

ACE's Forth

ACE's Forth Vocabulary

The major visible difference from previous introductory computers, was Forth as its default programming language. Forth was considered well adapted to microcomputers with small memory and relatively low-performance processors. Forth allowed control structures to be nested to any level, limited only by available memory. Forth allowed implementation of machine code routines, if needed for a particular task. Forth also allowed recursive programming, if desired. On the downside, the usage of a data stack and the associated Reverse Polish notation were as unfamiliar as was structured programming.

ACE's Forth, maybe more correctly named as Jupiter Forth, was based mostly on Forth-79, with some relevant differences.[17] Runtime error checking could be turned off to get a speed improvement of 25% to 50%. A few extra words were named similar to known BASIC sound, video and tape commands, as behavior was the same. The implementation lacked less frequently used Forth words, but these were easily implemented if needed.

The ACE's dialect of FORTH introduced several innovations. It simplified usual Forth definer and compiler words creation, with the CREATE .. DOES> [18], creation pair with:

  1. DEFINER .... DOES> : Create new Defining words, usually used to define and build data data structures, [19] ( Examples: Arrays, Records, ... ).
  2. COMPILER .. RUNS> : Create new Compiling words, less frequently used to extend the language with new control structures.[20] ( Examples: Case, Infinite-Loop, ... ).

As an operating system, it was adapted to Tape usage, saving/loading user vocabularies instead of the usual numbered programming blocks used in diskette systems.

The ACE's Forth could decompile its programs, unlike usual Forth systems. This decompiling ability had several advantages as a solution to the absence of the more flexible disk system used by Forth. It did not store the text of a Forth program, instead it compiled the code after editing and stored it in ready-to-run format. While this saved RAM it also saved time in reading and writing programs from cassette tape. This tape-friendly and RAM-saving solution was unique to the Jupiter ACE Forth.

Commercial

Though Forth delivered several advantages over the interpreted BASIC used on all other home computers, the weak box and small initial memory kept the sales low in spite of technical interest. Reviews in magazines attracted interest in the ACE and its characteristics. [21]

Models

Jupiter ACE 4000

1982 - Original Jupiter ACE in a yogurt-pot type of case - Reported 8000 units built. [22]

1983 - Jupiter ACE 4000 on stronger injection moulded case - Reported 800 units built. [23]

Sales

Sales of the machine were never very large; as of the early 2000s, surviving machines are quite uncommon, fetching high prices as collector's items. One main reason for low sales seems to have been the need to buy an extra 16KB RAM-extension which almost doubled the ACE's price. It happened that the designed 4 KB of base RAM was not built in favor of the less expensive 1 KB delivered. Industry and Education did not respond apparently because of the weak case, later replaced in the new ACE4000 model. As for the public, the absence of color kept the ACE squarely in a niche market of programming enthusiasts.

It must be understood that with ACE's Forth, 1 KB was equivalent to 2 KB (on average) in Sinclair computers, used here as reference.
It was a real limit nonetheless. Notice that an initial 4 KB (in design) would be the equivalent of about 8 KB in Sinclair BASIC. With the designed 4 KB, though the final price would be slightly more expensive, the ACE would have been much more useful and attractive starting right from the base model.

Education

Its full discrete logic construction makes this home computer an excellent choice to clone [24] for digital electronics, programming learning and small languages study. An added advantage for educators is that Forth is a high level language but still very close to the hardware. Its design blueprints are available for study and construction, as is its ROM file and code.

References

  1. ^ "Sales Brochure". http://www.jupiter-ace.co.uk/advert_JCSB_1.html.  Page1
  2. ^ "Sales Brochure". http://www.jupiter-ace.co.uk/advert_JCSB_2.html.  Page2
  3. ^ "Sales Brochure". http://www.jupiter-ace.co.uk/advert_JCSB_3.html.  Page4
  4. ^ "Personal Computing Today - Editorial". http://www.jupiter-ace.co.uk/news_pctoday_8211.html.  November 1982 (Volume 1 Number 4)
  5. ^ "Sales Brochure". http://www.jupiter-ace.co.uk/advert_JCSB_3.html.  Page3
  6. ^ "An interview with Richard Altwasser and Steven Vickers". http://www.sincuser.f9.co.uk/004/newbiz.htm. 
  7. ^ James, John S.: "Byte Magazine, 1980, Aug. - What is Forth?", page 102, "Characteristics of FORTH Code" section
  8. ^ "Adding colour to the Ace". http://www.jupiter-ace.co.uk/hardware_colour_board.html.  article in ETI Magazine, April 1984
  9. ^ "RamPacks". http://www.jupiter-ace.co.uk/hardware_rampacks.html. 
  10. ^ "Memotech Keyboard". http://www.jupiter-ace.co.uk/hardware_memotechKboard.html. 
  11. ^ "EME AY-3-8910 Sound board Review". http://www.jupiter-ace.co.uk/review_soundcard.html. 
  12. ^ "Disc Drives". http://www.jupiter-ace.co.uk/hardware_JetDisc.html. 
  13. ^ "ADS Centronics". http://www.jupiter-ace.co.uk/hardware_ads_centronics_review.html. 
  14. ^ "Printercard". http://www.jupiter-ace.co.uk/hardware_printercard.html. 
  15. ^ "ACE ROM Project (E-Book)". http://factor-h.net/_extra/ace_rom_project.zip. 
  16. ^ "ACE Memory Map]". http://www.jupiter-ace.co.uk/romlisting.html#L0038. 
  17. ^ Vickers, S: "Jupiter ACE Manual", page 176, 1982.
  18. ^ Winfield, Alan: "The Complete Forth", Chapter 9 "Extending FORTH", Sigma Technical Press, 1983.
  19. ^ Vickers, S: "Jupiter ACE Manual", page 120, 1982.
  20. ^ Vickers, S: "Jupiter ACE Manual", page 136, 1982.
  21. ^ "Jupiter ACE Reviews]". http://www.jupiter-ace.co.uk/reviews.html. 
  22. ^ "What is A Jupiter ACE]". http://www.jupiter-ace.co.uk/whatisanace.html. 
  23. ^ "What is A Jupiter ACE 4000]". http://www.jupiter-ace.co.uk/ace4000.html. 
  24. ^ "Customised Aces". http://www.jupiter-ace.co.uk/index_custom_aces.html. 

External links

1982 News:

Resources:

Learn:

Build:


Search unanswered questions...
Enter a word or phrase...
All Community Q&A Reference topics
 
 

 

Copyrights:

Wikipedia. This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "Jupiter Ace" Read more