Autorem opisu jest Paweł Boguś

Apple ][

Zawartość


Projekt

Pomimo iż Apple I sprzedawał się nieźle, Apple Inc. pozostawało wciąż maleńką firmą funkcjonującą w garażu. Jej produkt był konstrukcją dla hobbystów, jego uruchomienie i używanie wymagało sporej wiedzy technicznej. Wozniak pracował nad ulepszeniami, które były tak radykalne, że powstała praktycznie nowa maszyna - Apple II. Najważniejsze zmiany to:
  • zwiększona szybkość działania, mimo zastosowania tego samego procesora 6502 1 MHz,
  • pamięć obrazu z prawdziwego zdarzenia,
  • kolorowy tryb graficzny,
  • możliwość rozbudowania pamięci do 48 kB (na płycie) lub 64 kB (z kartą rozszerzeń),
  • wbudowany głośniczek - możliwośc generowania dźwięków,
  • złącza dla paddle (rodzaj analogowego manipulatora do gier),
  • osiem slotów na karty rozszerzeń (podobnie jak wcześniej w MITS Altair i później w IBM PC).
Jobs był zdania, że wystarczyłyby dwa sloty, ale Wozniak wiedział, że użytkownik zawsze znajdzie jeszcze jedną kartę, którą chciałby zainstalować i pozostawił osiem slotów, mimo iż podnosiło to koszty komputera.


Po zakończeniu prac nad Apple I Wozniak miał już gotową listę ulepszeń, które uważał za ważne i zamierzał skonstruować taki komputer, jaki sam chciałby posiadać. Przede wszystkim dodał kolorową grafikę. Zamierzał również przenieść pamięć ekranu do pamięci operacyjnej, aby móc wykonywać w niej szybkie zmiany. Pierwotnie jego celem było nie tyle uczynienie komputera atrakcyjniejszym dla klienta czy bardziej wydajnym, lecz umożliwienie napisania wersji gry Breakout - którą wcześniej zrealizował sprzętowo dla Atari - w BASIC'u. Wozniak przyznał później:

A lot of features of the Apple II went in because I had designed Breakout for Atari. I had designed it in hardware. I wanted to write it in software now. So that was the reason that color was added in first - so that games could be programmed. I sat down one night and tried to put it into BASIC. Fortunately I had written the BASIC myself, so I just burned some new ROMs with line drawing commands, color changing commands, and various BASIC commands that would plot in color. I got this ball bouncing around, and I said, "Well it needs sound," and I had to add a speaker to the Apple II. It wasn't planned, it was just accidental... Obviously you need paddles, so I had to scratch my head and design a simple minimum-chip paddle circuit, and put on some paddles. So a lot of these features that really made the Apple II stand out in its day came from a game, and the fun features that were built in were only to do one pet project, which was to program a BASIC version of Breakout and show it off at the club.


Pewien problem pojawił się przy próbie uzyskania certyfikatu FCC (test na zakłócenia elektromagnetyczne generowane przez urządzenie). Niestety okazało się, że zastosowany modulator RF (potrzebny, aby móc podłączyć komputer do telewizora zamiast do monitora) zakłóca odbiór telewizyjny w promieniu 100 m. Konieczna stała się wymiana modulatora na inny, nie powodujący takich zakłóceń. Jednak zamiast zająć się konstrukcją nowego modulatora, Apple zawarł umowę z Marty Spergel'em prowadzącym firmę hardware'ową M&R Electronics (specjalizującą się w produkcji i sprzedaży różnych trudnych do zdobycia lub wykonania komponentów komputerowych dla hakerów i hobbystów). Apple przekazał specyfikację urządzenia M&R oraz zezwolił na produkcję i sprzedaż modulatora wraz z komputerem. W handlu Apple II sprzedawany był razem z kosztującym ok. $30 adapterem "Sup'R'Mod" umożliwiającym podłączenie do komputera odbiornika tv. Jobs obiecywał Spergel'owi, że będzie on sprzedawał min. 50 sztuk miesięcznie, po latach Spergel wyliczył, że łącznie sprzedał około 400 000 sztuk tego urządzenia.

Wozniak napisał dla Apple II nowy interpreter BASIC'a (Integer BASIC), który pozwalał prowadzić obliczenia wyłącznie na liczbach całkowitych.


Ciekawostką jest, że napisał go od razu w języku maszynowym, nie używając w ogóle asemblera. Po prostu napisał na kilku luźnych kartkach rozkazy po jednej stronie i odpowiadające im, wyszukane w podręczniku do 6502, wartości hex po drugiej. Przy redakcji podręcznika do Apple II, gdy chciano zamieścić listing interpretera w asemblerze, trzeba było poddać deasemblacji zawartość pamięci ROM i podopisywać komentarze.

I wrote this BASIC processor, and I wrote a little ALGOL simulator and got it simulated. It looked like it would work, but I had forgotten to build the machine. I had no assembler, that was another thing. To use an assembler, they figured that somebody was going to buy this processor to use for a company, and their company can pay a few thousand dollars in time-sharing charges to use an assembler that was available in time-share. I didn't have any money like that, so a friend taught me that you just sort of look at each instruction, you write your instructions on the right side of the page, you write the addresses over on the left side, and you then look up the hex data for each instruction--you could assemble it yourself. So I would just sit there and assemble it myself. The [Integer] BASIC, which we shipped with the first Apple II's, was never assembled - ever. There was one handwritten copy, all handwritten, all hand-assembled. So we were in an era that we could not afford tools.


Jak widać rola Wozniaka w firmie była jasna: hard- i software. A co robił Jobs? Otóż Jobs miał wizję, nadawał kierunek i stanowił siłę napędową. Jeden z przykładów jego pomysłów to obudowa Apple II. Jobs chciał, aby była ona lekka, wykonana z tworzywa sztucznego i łatwa do otwarcia, mimo iż wiązało się to z wyższym kosztem urządzenia. W przeciwieństwie do większości sprzedawanych wówczas komputerów, w ciężkich, blaszanych skrzynkach, często z tabliczką "Nie otwierać! Nie zawiera części wymagających konserwacji. Zerwanie plomby oznacza utratę gwarancji!", Jobs uważał, że obudowa powinna dać się otworzyć bez użycia narzędzi. Aby zapobiec ewentualnym wypadkom, we wnętrzu obudowy umieszczona została dioda sygnalizująca obecność napięcia zasilania. Ponadto Jobs wybrał kolor obudowy (beżowy) i klawiszy kierując się względami estetycznymi. A ponieważ denerwował go szum wentylatorów, Apple nie posiadał takowego (w związku z czym konieczne były liczne szczeliny zapewniające odpowiednią cyrkulację powietrza). Nawet śruby nie były widoczne, gdyż zostały umieszczone na spodniej stronie obudowy. Poważnym problemem było ciepło generowane przez zasilacz. Klasyczny zasilacz na bazie transformatora i prostownika wytwarza znaczne ilości ciepła. Jeden z inżynierów - pracujący wcześniej dla Atari Rod Holt - wynalazł - zmuszony zaistniałą sytuacją - zupełnie inne, nowatorskie rozwiązanie, charakteryzujące się dużo mniejszymi stratami energii i tym samym wydzielające odpowiednio mniej ciepła.

Wprowadzając nowy model komputea Apple chciał zmienić również wizerunek i logo firmy oraz powiększyć krąg odbiorców. Młody designer z Regis McKenna Agency - Rob Janov - otrzymał zadanie opracowania nowego logo. Wyszedł z założenia, że Apple nie jest produktem elitarnym, a raczej masowym i zamierzał wykorzystać fakt, że jako jedyny wówczas komputer oferował on możliwość uzyskania kolorowej grafiki na ekranie. Wykonał setki projektów, z czego część była "nadgryziona" (później Janov powiedział, że zrobił tak, żeby "jabłuszko" nie wyglądało jak pomalowany pomidor). Paski w kolorach tęczy dodał na samym końcu. Rezultat różnił się bardzo od "poważnych" logo innych firm komputerowych. Sugerował pewną naturalność i swobodę - i taki właśnie miał być Apple w porównaniu z konkurencją.

Wprowadzenie na rynek

Mike Markkula zarezerwował na prezentację Apple II stanowisko na targach First West Coast Computer Fair, które odbywały się w kwietniu 1977 r. Jego tło stanowiło podświetlone od tyłu wielkie logo Apple. Chociaż stoisko było mniejsze od wielu innych, prezentowało się bardzo profesjonalnie w porównaniu z mało oryginalną konkurencją. Ponadto, dzięki temu, że Apple zgłosił się jako jeden z pierwszych, miał stanowisko zaraz przy wejściu, przez co każdy zwiedzający musiał obok niego przejść. Do ostatniej chwili usuwano wykryte usterki (np. problem z gromadzącymi się ładunkami elektrostatycznymi powodującymi zawieszanie komputera po ok. 20 minutach pracy czy też skazy na plastikowych obudowach), powielano kasety z oprogramowaniem. Na wystawionych ekranach prezentowana była kolorowa grafika (program demonstracyjny został napisany przez Chrisa Espinosę i Randy Wiggintona), na co wielu odwiedzających patrzyło z zaskoczeniem. Mimo niekoniecznie przychylnych opinii prasy fachowej (Dr. Dobb's Journal) lub zgoła niezuważeniu (Byte), w ciągu trzech miesięcy po wystawie Apple otrzymał około 300 zamówień na Apple II. Cena $1 298 za system z 4 kB RAM bez monitora i magnetofonu, była dwa razy wyższa od konkurencyjnego Commodore PET (także bazujący na procesorze 6502, kosztował $595) czy Tandy TRS-80 (z procesorem Z80, $600), obydwa z monitorem i magnetofonem w zestawie. Mimo to Apple II posiadał znaczącą przewagę - mógł być rozbudowywany. PET czy TRS-80 pozwalały co prawda na powiększenie pamięci do 16 kB, ale Apple II mógł pracować z 48 kB (na płycie głównej) i posiadał wewnętrzne sloty na karty rozszerzeń. Stał się bardzo szybko systemem dla ambitnych użytkowników. Nikogo zrażał ich fakt, że podręcznik składał się z zaledwie 30 stron okraszonych ręcznymi dopiskami Wozniaka. Dopiero w 1978 roku wydany został porządny podręcznik, tzw. "Red Book", gdyż Jobs stwierdził, że o jakości sprzętu świadczy również jego dokumentacja. Nowy podręcznik stanowił klasę samą w sobie i wzór do naśladowania dla wielu innych firm.

Dzięki Apple II sprzedaż gwałtownie rosła. Firma rozwijałą się i wkrótce zatrudniała tysiące pracowników, w tym również normalnych, nie znających się tak dobrze na komputerach, managerów i finansistów. Tacy ludzie weszli również do rady nadzorczej i traktowali Apple podobnie jak inne firmy, tzn. jako przedsiębiorstwo, które powinno przynosić zyski. Niestety, zraziło to i skłoniło to odejście z firmy wielu z jej pierwszych pracowników, kreatywnych ale myślących wyłącznie o aspektach technicznych fascynatów - Apple utraciło znaczną część swojego potencjału intelektualnego. Ich miejsce zajęli solidni, ale myślący w kategoriach rynkowych inżynierowie i specjaliści od marketingu. Tak na marginesie, wprowadzono wówczas listy osobowe, gdyż Wozniak i Jobs nie znali już wszystkich pracowników osobiście, a ktoś mógłby wejść z ulicy i wykraść najnowsze pomysły.

Apple Disk ][

Pod koniec 1977 Apple II był na rynku od ponad sześciu miesięcy. Jego głównymi konkurentami były Tandy TRS-80 i Commodore PET. Oba sprzedawane z magnetofonem i monitorem w cenie ok. $600, podczas gdy Apple II bez dodatkowych urządzeń kosztował dwa razy tyle. Jako pamięć masowa Apple II służył nadal magnetofon kasetowy. Był on trudny w obsłudze. Produkty konkurencji posiadały wygodniejsze rozwiązania. Powodowało to, że Apple nadal był systemem dla majsterkowiczów i ludzi uzdolnionych technicznie. Markkula i Jobs słusznie uważali, że zdobędą nowych klientów, jeżeli zaoferują tanie, szybkie i skuteczne rozwiązanie problemu pamięci masowej. Przy takich założeniach w grę wchodziła wyłącznie pamięć dyskowa. Napęd dyskietek stał się priorytetem. Wozniak rozpoczynając pracę nad nim, nie wiedział nic na temat interfejsów do napędów dyskietek i metod zapisu danych na dyskach. Jako pierwszą rzecz, przeczytał podręczniki do napędu dyskietek firmy Shugart (był to standard, który utrzymał się w PC do późnych lat 90) i North Star.

Wozniak zrozumiał zasadę działania, uważał jednak, że dotychczasowe rozwiązanie zawiera zbyt dużo komponentów sprzętowych. To co Shugart realizował przy pomocy złożonego kontrolera napędu dyskietek, układów złącza oraz procedur systemu operacyjnego, zamierzał osiągnąć na drodze programowej. Software był tańszy, powstawał w głowie Wozniaka i nie wymagał kupowania kosztownej elektroniki. Ówczesne napędy były "hardsectored", tzn. początek każdego sektora był oznaczony przez dziurkę w nośniku - umożliwiało to odpowiednią synchronizację i pozwalało kontrolerowi napędu określić jaki sektor znajduje się aktualnie pod głowicą. Wozniak zastosował inne rozwiązanie. Elektronika napędu zamiast szukać dziury w nośniku oczekiwała na określoną sekwencję bitów, którą uznawała za początek sektora. Zamiast używać dedykowanego (=drogiego) układu na kontrolerze, który realizowałby samodzielnie rozkazy odczytu lub zapisu poszczególnych sektorów wysyłane przez procesor, Wozniak poszedł inną drogą. Kontroler dysku w Apple II to w zasadzie jedynie konwerter zamieniający analogowy sygnał z głowicy dysku na postać cyfrową lub odwrotnie. Strumień odczytanych bitów jest poddawany analizie przez CPU i zapisywany w postaci bajtów do pamięci, a przy zapisie generowany przez CPU strumień bitów jest kierowany bezpośrednio do głowicy zapisującej dane na dysku. Także napęd pozycjonowania głowicy jest sterowany bezpośrednio przez CPU. Cztery bity wysyłane przez procesor po przejściu przez układy pomocnicze sterują bezpośrednio czterema cewkami silnika krokowego. Dzięki zastąpieniu drogiej elektroniki sprytnym softwarem, kontroler i współpracujący z nim napęd były bardzo proste i tanie. Oprogramowanie (DOS) Wozniak pisał w asemblerze przy współudziale Randy Wiggintona w grudniu 1977. Woz chciał zdążyć na Consumer Electronics Show rozpoczynające się w pierwszym tygodniu 1978 r. w Las Vegas.


Wozniak i Wigginton pracowali nad DOS'em do ostatniej chwili przez całą noc. Kiedy skończyli, w dniu otwarcia ekspozycji, była 6 rano. Randy zaproponował wykonanie kopii bezpieczeństwa dysku. Niestety, okazało się, że pomylili się i skopiowali zawartość pustej dyskietki na dyskietkę z właśnie opracowanym systemem!. Na szczęście po półtorej godziny udało im się odzyskać utracone dane i mogli zaprezentować nowy produkt na wystawie.

Ciekawostką jest, że po wykonaniu pierwszego prototypu płytki kontrolera Wozniak stwierdził, że zawiera ona zbyt wiele krzyżówek, które trzeba było ręcznie mostkować przewodami. Poświęcił dwa dni, przeprojektował płytkę i pozostały już tylko trzy mostkowania. Zaczął jeszcze raz od początku i osiągnął rezultat, w którym nie było żadnego mostka. Podobno design tego układu do dzisiaj jest uważany przez elektroników za błyskotliwy i stanowi doskonały wzór do naśladowania. Wozniak stwierdził później, że coś takiego było możliwe jedynie dlatego, że zarówno projekt układu jak i płytki wykonywała jednocześnie jedna osoba. Dwóch ludzi nie osiągnęłoby takiego rezultatu.


Gdy w lipcu 1978 napęd wraz z kartą kontrolera i pierwszą pełną, "odpluskwioną" wersją DOS 3.1 pojawił się na rynku (w cenie $495 jeżeli został zamówiony z wyprzedzeniem, $595 w normalnej sprzedaży), okazało się, że jest najtańszym, najbardziej wydajnym, najszybszym i najprostszym w obsłudze spośród oferowanych. Dwie osoby były w stanie złożyć 30 napędów dziennie. Koszt produkcji wynosił ok. $140 (Shugart) a później $80 (Alps), reszta stanowiła zysk producenta i marżę handlową. Skuteczna i tania pamięć dyskowa uczyniła z systemu dla hobbystów w pełni profesjonalne narzędzie do pracy biurowej, praktycznie był to komputer osobisty. Po wprowadzeniu napędu dyskietek sprzedaż dosłownie wystrzeliła w górę.

Sukces Apple ][

Dlaczego Apple II odniósł tak wielki sukces i sprzedawał się lepiej niż inne ówczesne komputery? Dlaczego na pięć lat stał się przemysłowym standardem? Dlaczego był produkowany aż do 1989 roku? I wreszcie dlaczego utracił swą wysoką rynkową pozycję?

W roku 1977 Apple nie był szczególnie znany. Stanowił raczej obiekt zainteresowania grupy dobrze zorientowanych hobbystów. Każdy, kto posiadał wówczas w domu lub biurze mikrokomputer, najprawdopodobniej sam go sobie skompletował i złożył. Takie osoby znały się na elektronice i potrafiły posługiwać lutownicą. Pisały także własne programy. Dopiero zaczynały pojawiać się pomysły (Atari, Commodore, Tandy) na sprzedawanie złożonych i gotowych do pracy zestawów wyposażonych w BASIC, czyli prosty do opanowania język programowania wyższego poziomu. Apple przedstawił komputer, który wyprzedzał pomysły konkurencji. Dysponował kolorową grafiką (Commodore PET i Tandy TRS-80 tylko monochromatyczną), pozwalał na łatwe rozszerzanie systemu dzięki slotom na płycie głównej, potrafił generować proste dźwięki, obsługiwał 48 kB RAM (tylko że mało kto mógł wówczas sobie na tyle pozwolić - 16 kB kosztowało ok. $500). Równie istotny jak sam komputer był niezwykle udany napęd dyskietek, oferujący szybką i stosunkowo tanią pamięć masową. Choć pozornie drogi, Apple II był nowoczesnym i łatwo rozbudowywalnym systemem, co czyniło go naprawdę atrakcyjnym i w ogólnym rozrachunku opłacalnym. Szczególnie istotny był również fakt, że Apple udostępnił od początku źródła systemu i umożliwił programistom tworzenie najróżniejszego oprogramowania. Już w maju 1977 w magazynie "Byte" ukazał się artykuł Wozniaka opisujący hardware Apple II oraz jego oprogramowanie systemowe (firmware) zawarte w ROM.

Apple nie był już działem jednego artysty. Co prawda większość elementów składowych opracował Wozniak (cyfrowe układy logiczne, layout płyty głównej, gniazda na rozszerzenia pamięci i sloty na karty rozszerzeń, interfejs do magnetofonu kasetowego, BASIC w ROM - U.S. Patent #4,136,359 for a microcomputer for use with video display), ale Rod Holt dorzucił znakomity zasilacz (U.S. Patent #4,130,862 for direct current power supply), Jerry Mannock zaprojektował obudowę, Mike Marrkula zarządzał firmą, Rob Janov i Regis McKenna Agency zadbali o logo i reklamę firmy a Steve Jobs swymi niewyczerpywalnymi zasobami energii napędzał wszystkich i czuwał nad całością.

Apple udało się wykreować obraz swojego komputera jako komputera osobistego do zastosowań domowych ale również biznesowych. Była to zasługa jednego programu: VisiCalc - pierwszego arkusza kalkulacyjnego. Był on napisany i działał tylko z Apple II (z czasem powstały wersje dla innych systemów, ale była to już musztarda po obiedzie). Program był genialny i robił furorę. Wiele osób kupowało Apple jako dodatek do VisiCalc'a. Dzięki poważnym zastosowaniom arkusza, Apple uzyskał odpowiednio poważny status maszyny do zastosowań profesjonalnych, czym wyróżniał się spośród wielu dostępnych wówczas na rynku komputerów. Komputer sprzedawał się rewelacyjnie, fabryka nie nadążała z produkcją. Maszyna była popularna, powstawało coraz więcej dostępnego oprogramowania i modułów sprzętowych rozszerzających jej możliwości. I tak dla Apple napisano pierwszy edytor tekstu: Electronic Pencil, pierwszą zintegrowaną aplikacje biurową (obróbka tekstu, arkusz kalkulacyjny i zarządzanie danymi): Apple Works, pierwszy program do tworzenia rysunków, pierwszy program do grafiki wektorowej, pierwsze oprogramowanie terminala, pierwszy program korzystający z HyperTekstu: HyperCard. Na Apple uruchamiano pierwsze BBS'y (Bulletin Board Service). Takie przedsiębiorstwa jak Americ Online, gdzie programiści i hobbyści wymieniali się informacjami i programami, zaczynały jako Apple-Link (sieć BBS'ów zbudowanych na bazie Apple II). Sieć rozrosła się i Apple sprzedał ją (kto mógł przypuszczać, że w przyszłości będzie przynosiła większy dochód niż sam Apple). Generalnie - Apple stał się synonimem postępu i nowych technologii.

Kryzys czy też schyłek epoki Apple rozpoczął się w 1981, po wprowadzeniu przez IBM modelu 5150, czyli tzw. IBM PC. "Błękitny olbrzym", dotychczas zajmujący się dużymi systemami, także chciał odkroić swój kawałek tego całkiem dochodowego tortu, jakim stał się rynek komputerów osobistych. Komputer opracowany przez IBM nie był żadnym przełomem w sensie technologicznym, swój sukces zawdzięcza m.in. sile marketingowej i wizerunkowi firmy (największy i najsolidniejszy dostawca dużych systemów) oraz otwartej architekturze i (podobnie jak Apple) udostępnieniu pełnej dokumentacji technicznej. To co początkowo wydawało się błędem (zbudowanie komputera z komponentów firm trzecich i udostępnienie dokumentacji) stało się fundamentem sukcesu IBM PC. Wiele firm zaczęło tworzyć sprzęt i oprogramowanie dla PC, wkrótce na nową platformę przeniesiono praktycznie wszystkie ważniejsze aplikacje pracujące na Apple i na maszynach z systemem CP/M. Apple próbował przeciwdziałać, wprowadzając w 1984 r. zupełnie nowy komputer - Macintosh, ale trendu nie udało się już powstrzymać - udział Apple w rynku systematycznie malał, szczególnie po ukazaniu się MS Windows, dzięki którym praca na PC stała się o wiele łatwiejsza, zbliżona do komfortu pracy z Mac'iem (przepraszam, wiem że dla niektórych brzmi to jak bluźnierstwo, ale wielu ludzi tak uważa...). W chwili obecnej jedynymi enklawami, gdzie pozycja jabłuszek wydaje się nie zagrożona, są grafika komputerowa i DTP, chociaż i tutaj WIntele, czyli maszyny wykorzystujące architekturę procesorów Intel x86 i system Windows, zdobywają przyczółki i czynią wyłomy.

Szczegóły techniczne

Podobnie jak w Apple I, także w nowym komputerze pracował procesor MOS Technology 6502 z zegarem 1 MHz. Jego 8-bitowa architektura umożliwiała adresowanie pamięci o rozmiarze do 64 kB. Wozniak zaprojektował Apple II z zamiarem stosowania układów RAM o pojemności 4 kB lub 16 kB. Apple II posiadał 3 banki pamięci z możliwością obsadzenia ich układami RAM 4 kB lub 16 kB. Standardowo obsadzony był tylko jeden bank kością 4 kB. W przypadku zastosowania trzech układów 4 kB pozwalało to uzyskać w rezultacie łącznie 12 kB, w przypadku trzech układów 16 kB dawało łącznie 48 kB na płycie głównej. Konstrukcja płyty głównej umożliwiała procesorowi sprawdzenie, ile pamięci znajduje się na pokładzie oraz jakie obszary adresów są fizycznie obsadzone. Możliwe były kombinacje dające: 4 kB, 8 kB, 12 kB, 16 kB, 20 kB, 24 kB, 32 kB, 36 kB i 48 kB oraz istnienie tzw. blank spots, czyli obszarów pamięci nie obsadzonych fizycznie układami RAM. Pomimo iż układ 16 kB kosztował wówczas $500, Wozniak słusznie zakładał, że z czasem muszą one potanieć i wówczas rozszerzenie RAM w Apple II będzie tanie i proste.

Pierwsze 4 kB, obecne w każdej maszynie, zawierały m.in. obszar roboczy procesora 6502 (tzw. strona zerowa i stos - pierwsze 512 bajtów), różne procedury ROM (np. obsługę wyświetlania tekstu na ekranie, obsługę magnetofonu kasetowego) oraz pamięć obrazu. ROM zawierał ponadto BASIC obsługujący kolorową grafikę i rozszerzony funkcjonalnie Monitor. Istniała mozliwość podziału ekranu na niezależne okna różnej wielkości.

Jednym z ważniejszych posunięć, było stworzenia przez Wozniaka i Allena Baum'a disasemblera dla procesora 6502. Dzięki temu, każdy programista mógł analizować kod systemu i programów oraz tworzyć na tej podstawie własne rozwiązania.

Uruchomienie systemu

Jedną z pierwszych czynności przed uruchomieniem Apple II powinno być podłączenie odbiornika tv do modulatora RF (lub podłączenie monitora), paddles oraz magnetofonu kasetowego. Po włączeniu zasilania, na ekranie pojawiały się z reguły różne "śmieci" (znaki alfanumeryczne lub kolorowe bloki grafiki lo-res). Po wciśnięciu klawisza RESET (z prawej strony na górze), rozlegał się beep i pojawiała "gwiazdka" (*) oraz migający kursor w formie bloku - czyli prompt Monitora. Aby przejść do BASIC'a należało wcisnąć równocześnie klawisze "Ctrl" oraz "B". Prompt zmieniał się wówczas na ">". Teraz można było rozpocząć wpisywanie programu w BASIC'u lub np. załadować program z taśmy i po zakończeniu go uruchomić.

Organizacja pamięci

Pamięć Apple II jest podzielona na $FF (256 dec) strony po $FF (dec 256) bajtów każda. Razem daje to $FFFF (65536 dec) bajtów pamięci.

Procesor 6502 dla swojej pracy potrzebował i rezerwował pierwsze 512 bajtów pamięci operacyjnej (strona zerowa $0000-$00FF (zero page) i stos $0100-$01FF (stack)). Kolejna strona ($02) również używana była przez system, m.in. jako bufor operacji I/O.

Obszar o pomiędzy $C000 i $CFFF przeznaczony był dla procedur operacji wejścia/wyjścia. Od $C000 do $C0FF znajdował się obszar zarezerwowany dla różnego rodzaju przełączników programowych (soft switches) sterujących wyświetlaniem obrazu oraz różnymi urządzeniami we/wy (klawiatura, paddles, magnetofon kasetowy). Od $C100 do $CFFF rozciągał się obszar dla pamięci ROM kart rozszerzeń. Slotowi 1 był przyporządkowany obszar $C100-$C1FF, slotowi 2 obszar $C200-$C2FF itd. Obszar $C800-$CFFF był dostępny dla każdej z siedmiu kart. Dzięki takiemu rozwiązaniu, karty mogły "przełączać" swój kod ROM w obszar zawart pomiędzy adresami $C0-$CF niezależnie od tego, w jakim slocie się znajdowały. Upraszczało to znacznie pisanie procedur obsługujących karty rozszerzeń, gdyż nie musiał on zawierać jedynie adresów względnych (czyli mógł być "związany" z konkretnymi, niezmiennymi adresami, właśnie w obszarze "przełączalnym").

Obszary $D0-$D7 i $D8-$DF w pierwszych modelach Apple II były puste. Płyta komputera zawierała dwie wolne podstawki dla pamięci ROM. Pierwszay z tych obszarów był często obsadzany układem sprzedawanym przez Apple i zawierającym tzw. "Programmer's Aid #1". Zawierał on zestaw różnych narzędzi do Integer BASIC'a (m.in. automatyczna zmiana numeracji linii programu, dołączanie programu w BASIC'u do końca innego programu, weryfikacja zapisu na taśmie magnetofonowej, zmiana lokalizacji (przesunięcie) w pamięci procedur w assemblerze, test pamięci RAM, generowanie dźwięku przez wbudowany głośniczek, obsługa grafiki wysokiej rozdzielczości (hi-res) - instrukcje czyszczenia ekranu, ustalania koloru, rysowania punktów i linii, rysowania figur oraz ładowania figur z taśmy. Procedury obsługi dźwięku w "Programmer's Aid #1" napisał Gary Shannon, wszystkie pozostałe napisał Wozniak pomiędzy czerwcem 1977 a kwietniem 1978 roku.

Drugi z wolnych obszarów przeznaczonych dla ROM ($D8-$DF) nigdy nie został przez Apple oficjalnie wykorzystany. pojawiały się natomiast pamięci ROM wyprodukowane przez inne firmy, do umieszczenia na tej właśnie wolnej podstawce. Po wprowadzeniu DOS 3.3, na dysku znajdował się plik INTBASIC, który w ten obszar pamięci ładował zupełnie bezużyteczny dla Integer BASIC'a obraz odpowiedniego fragmentu Applesoft ROM. No cóż, nie ważne czym, ale lukę trzeba było wypełnić!

Interpreter Integer BASIC zajmował obszar $E000-$F7FF. Sam BASIC sięgał tylko do adresu $F424. Powyżej znajdował się pakiet procedur zmiennoprzecinkowych dostępny dla tych programistów, którzy zadali sobie trud zbadania, jak można ich używać (jedna z grup użytkowników nazwana Apple Pugetsound Program Library Exchange, lub też A.P.P.L.E. sprzedawała taśmę i notatki Wozniaka, tzw. "Wozpak", dokumentujące niektóre z tajników i tajemnic Integer BASIC'a). Pomiędzy adresami $F500-$F63C znajdowało się coś, co określano jako "miniassembler", uruchamiany skokiem do adresu $F666. Pozwalał on na wprowadzanie standardowych rozkazów asemblera zamiast wpisywania programu bajt po bajcie za pomocą Monitora. Obszar $F689-$F7FC zawierał interpreter SWEET 16 napisany przez Wozniaka. Emulował on 16-bitowy procesor, upraszczał niektóre procedury zawarte w ROM Apple II, włączając w to procedury z "Programmer's Aid #1" (renumber, append, relocate). Interpreter tłumaczył zoptymalizowane instrukcje na kod zrozumiały dla 6502. Program taki działał wolniej niż kod pisany bezpośrednio dla 6502, ale zajmował mniej pamięci.

Ostatni obszar ROM - $F800-$FFFF - zawierał kod Monitora.

Organizacja pamięci RAM
Nr stronyUżywana przez
DecHex
0$00Strona zerowa (zero page), używana przez procesor 6502 do przechowywania danych systemowych
1$01Stos systemowy (stack)
2$02Bufor wejściowy klawiatury podczas używania BASIC'a lub procedur wejścia zawartych w firmware
3$03Obszar dostępny dla programów, oprócz zakresu $03D0-$03DF zawierającego wskaźniki (pointers) i wykorzystywanego przez procedury Monitora oraz dyskowy system operacyjny
4-7$04-$07Pamięć ekranu w trybie tekstowym (40-kolumnowym) lub grafiki niskiej rozdzielczości (lo-res), "pierwsza" strona
8-11$08-$0BPamięć ekranu w trybie tekstowym lub grafiki niskiej rozdzielczości (lo-res), "druga" strona lub wolna pamięć dla programów
13-31$0C-$1FWolna pamięć dla programów
32-63$20-$3FPamięć ekranu w grafiki wysokiej rozdzielczości (hi-res), "pierwsza" strona lub wolna pamięć dla programów
64-95$40-$5FPamięć ekranu w grafiki wysokiej rozdzielczości (hi-res), "druga" strona lub wolna pamięć dla programów
96-191$60-$BFWolna pamięć dla programów
192$C0Porty we/wy i przełączniki programowe (soft switches)
193-199$C1-$C7Procedury obsługi urządzeń we/wy w ROM (siedem kart rozszerzeń)
200-207$C8-$CFPrzełączalny ROM (dostępny dla każdej z siedmiu kart rozszerzeń)
208-215$D0-$D7Wolny socket na ROM nr 1
216-223$D8-$DFWolny socket na ROM nr 2
224-247$E0-$F7Integer BASIC ROM
248-255$F8-$FFMonitor ROM

Podsumowanie danych technicznych

Procesor:MOS Technology 6502
Taktowanie proc.:1 MHz
Magistrala danych:8 bit
Pamięć RAM na płycie:4 kB
Maksymalna ilość RAM:48 kB na płycie, 64 kB z kartą rozszerzeń
VRAM:1 kB (tekst i lo-res) lub 8 kB (hi-res); część pamięci operacyjnej
ROM:12 kB (zawiera m.in. Integer BASIC)
Sloty:8
Porty szeregowe:karta rozszerzeń
Pamięć masowa (zewn.):
  • interface do magnetofonu kasetowego (karta rozszerzeń)
  • interface do napędu dyskietek (karta rozszerzeń; od lipca 1978 r.)
  • Obraz:
  • tekst 40x24
  • grafika 280x192 4/6 kolorów; 48x40 16 kolorów
  • Dźwięk:wbudowany głośniczek
    Pobór mocy:??
    Cena (przy wprowadzeniu):
  • $1 298 z 4 kB RAM, dwoma paddles i kasetą
  • $2 638 z 48 kB RAM
  • $598 sama płyta z 4 kB RAM
  • Data wprowadzenia:kwiecień 1977
    Data wycofania:maj 1979 (lub początek 1980)


    Główny spis treści  ||  Strona Apple

    Masz uwagi? Napisz.