Apple IIc

Moi et le Apple IIc

photo d'un apple IIc Quand j'étais jeune (environ 12 ou 13 ans), quelqu'un m'avait donné un Apple IIc. C'est devenu le seul ordinateur auquel j'avais accès en permanance chez moi. J'était déja un mordu de l'informatique a cette époque la, alors j'ai eu beaucoup de plaisir a programmer en basic sur cet machine. Un jour, nous avons eu un 386, et j'ai alors délaissé mon apple IIc. Je ne l'ai pas utilisé pendant environ 8 ans.

Cette année (2003), après avoir découvert par hasard une archive de logiciels et jeux apple II, j'ai eu l'idée de sortir mon Apple IIc du placard, et m'arranger pour pouvoir jouer à des jeux. Malheureusement, il ne fonctionnait plus correctement. Il s'allumait, mais le lecteur de disquettes je démarrait pas, et l'écran se remplissait tranquillement de "garbage" aléatoire. (je crois que la mémoire pourrait être défectueuse, ou encore le rom).

Je me suis donc mis à la recherche d'un AppleIIc à vendre. Ce fut quand même assez long. Au bout de quelques mois, j'en ai trouvé un sur lespac.com. Il m'a couté 20$ Can. Et il fonctionne parfaitement.



Disquettes

Cette ordinateur possède un lecteur de disquettes 5"1/4 (133.35 mm) intégré d'une capacité de 140 KB (143,360 Octets). La méthode d'enregistrement du Apple II n'est absolument pas compatible avec celle des lecteurs pour PC. Par contre, selon mon expérience, il est possible d'utiliser les disquettes conçues pour les PC.

J'ai acheté pour presque rien environ 200 disquettes 5"1/4 de 360K dans une marché aux puces. J'utilise donc ces disquettes avec mon Apple IIc (après avoir récupéré les données qu'elles contiennent).

Si vous ne connaissez pas ce type de disquettes, voici de quoi elles ont l'air:



Système d'exploitation

L'Apple IIc n'a pas nécéssairement besoin d'un système d'exploitation comme tel pour être utilisable. Premièrement, parce qu'il y a un ROM de Basic. Cela veut dire qu'on peut entrer manuellement du code Basic et l'exécuter. Deuxièmenent, l'Apple IIc ne vient pas avec un disque dur. Beaucoup de jeux démarrent directement de la disquette. Ils prennent ainsi le contrôle total de l'ordinateur.

Avec un OS, on peut faire beaucoup plus de choses. Sur le AppleIIc, le système d'exploitation rends disponibles de nouvelles commandes qui peuvent être entrés à la ligne de commande basic. INIT et CATALOG en sont des exemples.

J'ai installé dos 3.3 de apple. Il existe d'autres systèmes (Prodos, Prontodos, etc..), mais je ne les ai pas encore essayés. Les commandes décrites ici fonctionnent sur dos3.3, et probablement avec d'autres systèmes.

La commande INIT (notez les majuscules) permet de formatter une disquette, installer le systeme d'exploitation et la rendre démarrable. La syntaxe est la suivante:
INIT nom_du_programme
Donc, si vous tapez INIT hello, cela aura pour effet de formatter la disquette actuellement dans le lecteur, et de créer un programme vide (nommé hello dans ce cas ci), qui sera lancé automatiquement au démarrage. Ceci est très utile pour faire une menu permettant d'exécuter plus facilement les programmes disponibles dans la disquette.

exemple de commande CATALOG La commande CATALOG (notez les majuscules) permet d'obtenir la liste des fichiers contenus dans la disquette.

Dans la liste à droite, les fichiers précédés d'un A sont des fichiers ASCII (dans ce cas des programmes basic). Les fichiers précédés d'un B sont en format binaire.

Voici des opérations qu'on peut faire sur des fichiers:

Pour exécuter un fichier Ascii: RUN nom_de_fichier
Pour exécuter un fichier Binaire: BRUN nom_de_fichier
Pour charger en mémoire un programme basic: LOAD nom_de_fichier
Pour enregistrer un programme basic sur le disque: SAVE nom_de_fichier



Cable Null Modem

Puisque mon but était de télécharger des jeux pour mon Apple IIc à partir d'Internet, il a fallu que je trouve une manière pour brancher mon PC et l'Apple. Après une recherche, j'ai découvert (bien que je m'en doutais) que la meilleure manière est d'utiliser un cable NULL Modem.

L'Apple IIc est pourvu d'un connecteur DIN 5 pin (identique aux connecteurs MIDI et au clavier AT). Il faut construire son cable soit même car ce n'est pas standard. Et dès que ce n'est pas standard, les magasins n'en on pas :( . Aussi, ca coute beaucoup moins cher de faire ces cable soit même.

J'ai choisis de couper le cable d'un vieux clavier AT, et de souder un DB25 Femèle à l'autre bout. J'ai eu de la chance, car les broches du connecteur AT ne sont pas tous reliés à un fil dans le cable. Mais heureusement, tout ceux qui étaient nécéssaires étaient présents.

Si vous vouslez vous fabriquer un cable, voici le "pinout" pour le port série du Apple IIc:
#Nom
1Data Terminal Ready (DTR)
2Transmit Data (TD)
3Ground (GND)
4Receive Data (RD)
5Data Set Ready (DSR)

Et voici un liens pour le "pinout" rs232 standard.

Pour faire votre cable, l'essentiel est de connecter les deux GND ensembles, et ensuite le RX de l'un dans le TX de l'autre et vice-versa. Les logiciels de transfert comme adt1.22 n'utilisent pas de handshaking, donc les signaux (DSR et DTR) peuvent être ignorés.

En résumé, il faut faire les connections suivantes:
Apple         DB9			   
2  (td)       2  (rd)
3  (gnd)      5  (gnd)
4  (rd)       3  (td)				   
				


Alimentation

Souvent, bien que l'ordinateur ait été gardé précieusement, l'alimentation est égarée. Ou encore, elle peut s'avérer défectueuse. Quoi qu'il en soit, on m'a demandé à quelques reprises si je connaissait le "pinout" de l'alimentation pour l'Apple IIc.

J'ai donc sorti mon alimentation originale pour Apple IIc dont j'ai retranscris l'étiquette ici:
Apple Computer, Inc.
Cupertino, California
Model No. A2M4017
Made in Taiwan
Input: 120Vac 60Hz 25W 0.2A
Output: 15Vdc 1.2 AMps 18W

Avec un voltmètre j'ai obtenu ceci comme pinout:


Attention: Utilisez cette information à vos propres risques. Bien que j'aie fait attention, je ne peux offrir aucune garantie quant à l'exactitude de cette information.


Installation du Système d'exploitation et du logiciel de transfert

Comment installer le système d'exploitation sur un ordinateur qui peut lire uniquement les disquettes créés par lui même?

Cela semble être un problème, mais il a déja été règlé.

Il suffit de taper le programme un code machine directement sur l'Apple IIc. On peut le faire manuellement, mais il y a une manière beaucoup plus rapide: laisser un autre ordinateur s'en charger.

Sur l'AppleIIc, si on tape la commande IN #2, l'entrée de donnés se fera alors par le port série. C'est cette fonctionnalité qui permet d'installer le système d'exploitation sans trop de difficultés.

Malheureusement, la plupars des jeux et logiciels pour apple IIc qu'on peut trouver sur internet ne peuvent pas etre transférés avec cette technique. Habituellement, il s'agit d'images de disques .dsk. Il existe un logiciel pour transférer ces images sur le Apple IIc. ADT 1.22 (Apple Disk Transfer). On démarre ADT sur l'Apple IIc et sur son PC en mode dos. Ensuite, sur le apple IIc, on ecrit le nom de fichier que l'on souhaite transférer, et c'est tout.


Voici tout d'abord, le fichier contenant tout le nécéssaire pour installer dos 3.3 et adt 1.22 sur votre apple IIc. Les instructions en anglais sont incluses.

dos33dmp.zip

Sous Linux, j'ai utilisé minicom comme programme de communication. Je l'ai configuré pour qu'il communique à 300 Bauds, 8N1, pas de "Flow control".

J'ai ensuite tapé IN #2 sur le Apple IIc, et j'ai vérifié si je pouvais controller l'Apple IIc à partir de minicom.

Ensuite, pour transférer le fichier DOS33.DMP vers l'Apple IIc en mode ascii, il a fallu modifier quelque peu la configuration de minicom, pour mettre un delais de 400 millisecondes entre chaque lignes. Ce delais est nécéssaire car l'Apple IIc ne "scroll" pas le display assez rapidement après chaque ligne. Pour faire cela, dans la configration de minicom, choisir 'file transfer protocols', et rajouter l'option -l 300 à la commande ascii-xfr. En résumé, voici à quoi la ligne ressemble: /usr/bin/ascii-xfr -ndsv -l 300. Si ca ne fonctionne pas, essayez d'augmenter ce delais.

Maintenant, pour effectuer le transfert, c'est facile. CTRL+A S, choisir 'ascii', sélectionner le fichier, et démarrer le transfert.

Bonne chance!



Adt pour Linux/Unix

Puisque je suis beaucoup plus confortable dans un environnement puissant et bien conçu, je trouvais inacceptable d'utiliser autre chose que Linux pour tranférer des jeux sur mon Apple IIc. C'est pourquoi j'ai porté ADT1.22 à Linux. Heureusement que l'Auteur d'ADT a donné son code source. L'original était en C.

J'ai trouvé cela trè intéressant de porter du code de dos 16 bits à unix sous 32 bits. Il y a plein de petites différences, comme la taille des entiers qui est différente (a certains endroits ou il y avait des int il a fallu mettre des shorts, et les appels à conio.h, le code pour la communication sérielle qui programme le uart directement (plutot que par /dev/ttyS0, termios et ioctl).

Voici donc le fichier contenant ma version. Présentement, j'ai des problèmes avec la réception d'images de disquettes. Cela est un problème mineur pour moi, car je n'en ai pas besoin. J'ai testé le code sur un PowerPC Bigendian, alors il est possible que sur du intel ca ne fonctionne pas correctement (probablement le crc). Si cela vous arrive, écrivez moi.

adt122-unix-0.1.1.tar.gz.
Note: Le fichier .zip d'origine est inclus




Jeux

Je ne peux jamais résister à la tentation de regarder ce qu'il y a à l'intérieur des ordinateurs. Voici donc quelques images:

Apple IIc cpu, rom, mmu... Mis en marché en mars 1984, l'Apple IIc possè un microprocesseur 8 bits de type 6502 (comme dans un nintendo) cadancé à 1 Mhz, 16K de mémoire morte et 128K de mémoire vive. Il est aussi muni de 2 ports série, permettant l'utilisation d'une imprimante et d'un modem. Il a une sortie vidéo composite à l'arriè et une sortie video DB15 (non compatible avec les écrans mac)pour brancher un écran; rgb. Il est aussi possible de raccorder un lecteur de disquettes externe, une sourie ou une manette de jeu. Si vous cherchez une sourie pour un appleIIc, sachez qu'il est possible d'utiliser une sourie de MacPlus (ces souries utilisent un connecteur DB9 Male).

Je trouves l'intérieur bien conçu. Pas trops de fils, et tout est modulaire (Clavier, lecteur de disquettes, power supply et carte mère).
Apple IIc sans couvercle Apple IIc sans clavier Apple IIc carte mère


Voici maintenant des images de quelques jeux que j'ai essayés jusqu'a maintenant.


J'ai trouveé plein de jeux à cette addresse:
ftp://ftp.apple.asimov.net/pub/apple_II/