Skip to main content

Full text of "magazine poms38"

See other formats


La revue francophone independante pour les utilisateurs des 

Apple ][+, //e, //e+, //c, IIgs™ et Macintosh™ 




5005 00380 
ISSN 0294-6068 



Apple Expo 88 

Le monde se rejoint 
a la Villette. 



Cette annee, le succes d'Apple 
dans l'entreprise devrait ajouter 
a Apple Expo une saveur toute 
particuliere. Le monde du travail 
rejoint en effet celui des 
passionnes. Et chacun se 
retrouve sur une idee : c'est avec 
des machines puissantes, 
mais simples d'acces, 
que Ton donnera 
a l'Homme les 
moyens d'exprimer j 
le meilleur de 
lui-meme, 
les resources 
a 1'intcricur. 

Et c'est ainsi 
tout un point de vue 
sur la productivity qui 
s'impose dans la Grande 
Halle de la Villette. 




Avec 150 exposants : parte- 
naires d'Apple, amateurs 
et editeurs de logiciels, 
constructeurs de peripheric 
organismes de formation 
et editeurs de presse. Mais aussi 
des conferences, et bien sur 
la «Ville Apple». 

Pour que demain soil 
vraiment un autre jouc 
De plus en plus de 
performances? 
Certes, mais qui 

7pennettent a chacun 
de developper sa 
propre richesse. 
Et la, tout le mon- 
de peut se rejoindre. 
Ouf 




Apple 



Du mercredi 28 septembre an samedi 1" octobre. De 10 a 19 h. Metro Porte de Pantin. La Grande Halle, la Villette. 
Pour le caiendrier des conferences ou f j^^^KES3SMM^^} d'autres informations : 3614 code: APPLfc. 



Numero 38 
seplembre-oclobre 1988 



Editorial 

Hervc Thiricz 



Page 7 



Interview : fj 

Randy Brandt m*$ 



Ensoniq : 



MarcBavant 



II 



GS 



Travaux pratiques (2) 



i 



Page 11 



Les disquettes ' Polices' 



IlGS 



77e] 



Page 16 



Da. Mover 



Frederic Rozay 



Page 17 



Les Time Out en VF 

Dimitri Geystor 



//e 



168 



Page 23 



Le calcul des Premiers 
Prime. Factor 



//e 



D 



GS 



Pascal Canioi 

Page 27 



//c 



Applesoft & 
AppleWorks 



Dimitri 
Geyswr 



//G 



\ n« 8 1 



Page 31 



AW sur 2 colonnes 

A.-P. Gaspar 

Page 37 



//e 



II 



GS 



1 



//c I 



AppleWorks new 

lOOk , Slli te EricWeyland 



//e 



Hgs 

e~ — r 



77c~l 



Page 39 



PR#6 



Jean-Luc Bazanegiie 



Page 41 



Puzzle 



Marc Girati 



Page 44 



Macintosh : les news 

Ariel Sebban page 50 



La disquette Mac 38 



Page 52 



Apple II for ever 

Jean-Yves Boitrdin 



//e 



//c 



Page 53 



Courrier des Lecteurs 

Page 66 



Sommaire des Pom's 

a Page 68 
P elites annonces 

Mots croises p ag e 74 



Les annonceiirs ; Apple :p2 ; Brtjoux A.E. : p 55 ; P. Curlier . p 13 ; Logma S.A. : p 73 ; Ubi Soft : p 6 



Editions MEY - 12, rue d'Anjou - 78000 VeuaiUcs, Tel, ; (1) 39 51 24 43. Dircctcur dc la publication : Herve Thiricz 



lmprime en France. N° d'imprcssion 784509 — Depot legal : septembre 1988. 



Pom's n° 38 



3 




Certaines 

uits ne 
portent pas 
conseil. . . 







Lorsqu'au petit matin leiproblfcme demeure, il rcstela carte Joker. EUe donneunacc£s 
prtvi!6gi£ ft notre Hotline t£16phonique. Gratuite. la ca^^[oker accompagne chaque 
abonnement ; un not infel flfebut pour les programmes Poi 



irte Jok 




des logiciels 

opie de la plupart des logiciels sur 
disque dur 

Recuperation de disques endom- 



tt-l 



mages 

Recuperation de fichiers effaces 
meme sur disque dur 



Copy II est livre avec MacTools 

Copy II Mac 7.1, MacTools, 
avec documentation franchise : 500,00 F TTC 
Abonnes (carte Joker) : 450,00 F TTC 
Port: 20,00 F 



II Plus 8.3 

Apple // 



Utilitaire complel pour la gestion des 
disques et fichiers DOS/ProDOS, y 
compris conversion automatiquc 



• Utilisation de toute la memoire dis- 
ponible (un 800Ko en une passe par 



exemple) 

Recuperation de fichiers effaces 



Formatage de disques 
Classement alphabetique des fichiers 
Sauvegarde de la plupart des 



Copy II Plus 8.3 sur disquette 5,25" ct 3,5", 
avec documentation frangaise : 500,00 F TTC 
Abonnes (carte Joker) : 450,00 F TTC 
Port : 20,00 F 



I Copy II ! Mac / MacTools.. 

-ft MACINTUMI DISK TOOLS 





MANUELS EN FRAN£AIS 



Editions MEV/Pom's - 12, rue (TAnjou - 78000 Versailles 
(1)39 51 24 43. Commandc parMinitel au(l) 39 53 04 40 



UN CHALLENGE DE HAUT NIVEAU 

Du fait de son ouverture sur les marches exterieurs 
et de son expansion international, UBI SOFT recherche : 

- DES PROGRAMMEURS EXCEPTIONNELS 
en C, Assembleur et Turbo Pascal 

• ayant deja realise leur programme et vouiant etre edites ; 

• pouvant assurer la conversion de logiciels sur differents formats ; 

• vouiant voir leur programme distribue dans tous les pays du monde. 

- DES GRAPHISTES DE TALENT 

• qui pensent pouvoir 6galer et meme surpasser les graphisrnes de 
Zombi, Iron Lord ou Rocket Ranger ; 

• qui ont une imagination debordante. 

- DES MUSICIENS DE GENIE 

• qui ont en vie de mettre leur talent au service de la creation ; 

• pour qui la musique sur micro-ordinateur n'a plus de secret. 



VOUS TRAVAILLEZ 

sur Macintosh, Apple II, Apple II GS, 
et vous etes passionnes par ces machines 

ou vous connaissez VAmstrad, le PC, M.S.X., Spectrum, 
Commodore 64, ST, Amiga, Nintendo, M.S.X. II. 



Un futur plein d'avenir peut s'ouvrir a vous. 
Aujourd'hui, telephonez ou ecrivez a UBI SOFT. 

Dernain vous serez peut-etre choisis pour faire partie d'une 6quipe de gagnants. 



NOM Prenom 

Adresse 



Til 

Langage Machine 



AretournerS UBI SOFT/ChristineQUEMARD 

1,voie Felix Eboue-94021 CRETEIL CEDEX • Tel. (1)48 98 99 00 



Ont collabore a ce numero 
Marc Bavani - Jean-Luc Bazanegue 
Jean- Yves Bourdin - Pascal Cantot 
A.-P. Gaspar - Dimilxi Geyslor 

Marc GIraii Olivier Herz 

Gerard Michel - Christian Piard 
Joelle Piard Frederic Rozay 
Herve Thiriez - £ric Weyland 

DJrecteur de la publication 
redacteur en chef 

Herve Thinez 

Reriacteurs 
Jean Luc Bazanegue - Christian Piard 

Siege social 
f-ditions MEV - 12, rue d'Anjou 
78000 Versailles -» (1)39 51 24 43 
Serveur Minitel (1) 35 53 04 40 

Publicity 

Sditions MEV 

Diffusion 

N.M.P.P. 

Impression 

B erger-Lcvraul [ 
18, rue des Glacis 
54000 Nancy 
•a 83.35.61.44 

Photos 
CP & JLB 

Photogravure 

Grapholec 
21, chemin de la Tour 
92350 Lc Pics sis-Robinson 
t* (1)46 30 44 49 



Pom's est unc revue independante non 
rattachee a Apple Computer, Inc. ni 
a Apple Computer Prance S. A.R.L. 
Apple, le logo Apple. Mac et le 
logo Macintosh sunt des 

marques deposees 
d'Apple Computer, Inc. 
TOM est line marque deposee de International 
Business Machine. 

PC et AT sont des marques deposees 

de la Socieie" IBM. 

©fidiuons MEV 198& 
Toute reproduction integrate ou partielle, 
effectuee par quelque procede" que ce soit, sans 
l'accord £crit d'£diuons MEV, consume une 
contrcfacon. 

Loi du 1 1 mars 1957, articles 425 et suivants 
du Code Penal. 
Droits dc traduction, dc reproduction ct 
d'adaptation reserves pour tous pays. 



"Editorial 




L'evenement TimeOut 

Ce n'est pas une nouveaut£, 
c'estveritablcmentrdvenement 
de cette rentage pour le monde 
Apple//. II n'y avait pas d'espoir 
de voir adaptc a\ notre 
AppleWorks 1.4 le formidable 
potentiel des TimeOut : comme 

nous le disions dans le precedent numero, nous avons choisi de 
retrousser nos manches parce que / pour Pom's, la diffusion de logiciels 
essentiels n'est pas comprise comme une simple affaire d'achat/vente. 

Nous vous proposons aujourd'hui les premiers fruits de ce travail 
d'equipe qui nous a conduit des negociations prealables avec les 
detenteurs de droits americains jusqu'a ces quatre premiers TimeOut, 
travail de modification et d'adaptation des softs, de francisation des 
ecrans, de traduction des manuels. 

De nouveaux fruits, de nouvelles surprises dans les prochains 
numeros. Bientot, dans ces colomtes, Part et la maniere d'ecrire soi- 
meme son application TimeOut avec exemple et sources. 

Virus 

Pout's ne tombe pas dans la virouiania mediatique mais lorsque Fun 
des plus grands editeurs de softs pour Macintosh constate in extremis 
que des disquettes a diffuserne sont pas saines... De facon accessoire, 
nous vous offrons sur la disquette de ce numero six outlls Mac qui 
protegent contre les effets de ces routines malignes. 
Comme d'une vaccination ou d'un medicament, n'en attendez pas une 
universalite ; de nouveaux virus mutants et resistants guettent ! 

Apple Expo 

Notre rendez-vous annuel vous permettra cette ann£e de rencontrer 
qudques auteurs de la revue (voir page 67).Vousetes auteurs oufuturs 
auteurs ? Ne manquez pas de vous presenter et de nous parler de vos 
projers : e'est par Pecoute attentive de ses lecteurs que Fom's evolue de 
numero en numero. 

Herve Thiriez 



Pom's n° 38 




A gauche Randy Brandt accompagne* dc B . Lissncr, auteur c" AppleWorks 



Le nom de Randy 
Brandt, des Beagle 
Brothers, est deja bien 
connu dc nos lcctcurs. 
A l'occasion de la 
sortie des premieres 
applications TimeOut 
en version frangaise, 
Pom's lui a pos6, 
pele-mele, quelques 
questions sur son 
travail, ses projets, le 
metier de program- 
meur, les copies- 
pirates, I'avenir des 
Apple //, etc. 

Pom 's — Avez-vous deja ecrit de 
nombreux programmes, el lesquels ? 
Randy Brandt — Jc vous cn donne 
une liste dans I'ordre chronologique : 
Big-U, MacroWorks, SupcrMacro- 
Works, PathFinder, TimeOut 
UIlraMacros, PatchMania, TimeOut 
MacroTools et TimeOut PowerPack 
Mais j'ai aussi contribue aux disqucs 
suivants : Extra K, ProByter, 
Minipix, Late Nile Patches, TimeOut 
DeskTools II ct TimeOut SpreadTool. 

Pom's — De tous ceux-ci, en est-il 
un dont vous etes particulierement 
fier? 

Randy Brandt — C'est sans doute 



TimeOut UIlraMacros : j'ai r£ussi, en 
tres peu de place, a installer un arsenal 
de commandes d'une puissance 
dtonnantc, assorti cn mcmc temps 
d'une Ires grande souplesse d'emploi 
pour l'utilisateur. Et j'avoue avoir 
aussi un faible pour PaihFinder : il 
fonctionnait deux jours apres que j'en 
aieu Tidee... 

Pom's — Nos lcctcurs de Pom's 
aimeraient en savoir un peu plus sur 
vous. Est-il indiscret de vous 
demander de vous presenter ? 
Randy Brandt — Je suis ne au 
Canada, en 1960. Plus precisement au 
Manitoba — la neige et les grands 
espaces. Et puis, a l'age de 1 9 ans, je 
me suis transport^ loin vers le sud : 
cn Califomic, a plus dc 3 000 
kilometres. J'y ai suivi des etudes 
universiiaires au Christian Heritage 
College, avee commc option 
principale... la biologic C'est la que 
j'ai rencontre ma femme Joanna, c'est 
lik aussi que j'ai commenc6 a 
programmer sur un Apple TT+. Tl n'y 
avail pas, je precise , de cours de 
progr animation dans mon 
dtablisscment (j'ai d'ailleurs termine 
avec un diplome de litleralure 
anglaise) ; j'ai appris en autodidacte, 
en piochant dans Nibble et 
Call-Apple. 

Unc fois mes diplomes en pochc, j'ai 
Spouse* Joanna et me suis eiabli aux 
Etats-Unis. Deux ans plus tard (en 
1985), les Beagle Bros m'ont engage 
pnur travailler a la documentation 



d'Extra K et de ProByter. Cette mcmc 
annee j'ai ecrit Big-U (un utilitaire 
sous ProDos), puis vinrcni les droits 
d'autcur dc MacroWorks. C'est depuis 
cette epoque. que, ma foi, la vie me 
sourit. 

Pom's — C'est-d-dire ? Estimez- 
vous mieux gagner voire vie que, 
mettons, un medecin, un journaliste, 
un avocat 7 Et pour y arriver, combien 
d'heures travaillez- vousau total par 
semaine ? 

Randy Brandt — Un programmer 
peut bien gagner sa vie a condition 
d'avoirsorti un 'best seller', ou mcmc 
plusieurs. Soyons francs : peu d'enire 
nous y parviennent. Mes 
'ameliorations' a AppleWorks ont ete 
d'un excellent rapport, mais de la h 
dire que je reussis aussi bien qu'un 
avocat ou un medecin. . . Ma femme ct 
moi avons des gouts modestes ; nous 
sommes heureux dans notre peuie 
maison : nous avons notre chambre, 
nos deux petites Biles (Heaiher — 3 
ans — et Erica — 1 an — ) ont la 
lcur, et. . . mes ordinateurs occupent la 
troisieme. Nous nous estimons 
privil6gi6s d'avoir notre maison, mais 
nous la payons a temperament, 
commc tout ie mnnde. 

Je travaille environ 60 heures par 
scmainc. Jc commence rarement avant 
9h30 du matin, et je continue en 
general au-dcla de minuit. Comme je 
fais des pauses pour langcr Erica, ma 
femme ne me tient pas trop rigue.ur 



8 



Pom's n° 38 



des couchers lardifs. De toutes facons, 
elle m'a toujours sous la main ! 
Le vendredi est le jour des Beagle 
Bros : nous nous rctrouvons tous au 
1 bureau \ autour d'un lunch de travail : 
le fondateur des Beagle Bert Kersey, le 
president de la socidtc* Mark 
Simonsen, les programmeurs Alan 
Bird> Rob Renstrom, Dan Verkade, et 
moi-meme. Nous echangcons des 
idees, montrons nos dernicrcs 
'ceuvres* ; niais la discussion est tout 
aussi animee qu'il s'agisse 
d'ordinateurs* de sport, de politique ou 
de n'importe quel autre sujet. 
Le dimanche est consacrd au culte 
(dglise Evang&ique protestante), aux 
amis et a la detente. II m'arrive 
parfois, les dimanches apr&s-midi, de 
faire mon courricr pendant que les 
'dames de la maison' font la sieste. 
Toutefois, j'essaie de m'astreindre, 
autant que possible, a accordcr aussi a 
mcs ordinate urs leur rcpos dominical. 
Mais cornme la programmation est un 
exercice plus menial que physique, je 
n'arrive jamais a y 6chapper 
totalement. II faut croire que 5a 
'travaille dans ma tete* mcme quand je 
dors, car il m'arrive de me coucher 
apres avuir vaineiiienl leiiuS de 
resoudre un probleme, et d'aller droit a 
la solution le lendemain matin. 

Pom's — Et les loisirs ? 
Randy Brandt — Une fois les 
ordinateurs etcinis ? II ne leur reste 
pas beaucoup dc place. Par contre, j'ai 
une t£le* dans mon bureau, et j'aime 

bien suivre les sports tout en 
programmant. J'aime aussi la lecture 
(fiction et rdalite), m'instruire en 
maticre politique et religieuse, jouer 
aux echoes, au basket ct auircs sports. 
J'adore aussi jouer avec mes deux 
petites filles. 

Pom's — Quels conseils donneriez- 
vous d un jeune qui rive de devenir le 
Randy Brandt de I'an 2010 ? 
Randy Brandt — Si un ecolier me 
deinandait comment on devient un 
programmeur (qui reussit !), je lui 
conseillerais, avant toute chose, de 
suivre des cours de daetylographie, de 
geometric ct de maths. Tout logiciel 
represente un ensemble de probleme s 
conceptuels el logiques : des 
connaissances d'algebre et de 



geometrie sont panic ulierement utiles. 
De plus, on ne programme pas bien si 
Ton ne sait pas bien taper a la 
machine : il faut done absolument en 
passer par la. 

Bien que je ne pratique que le Basic et 
1' Assembleur, je recommanderais aux 
programmcurs a venir d'apprendre le 
laiigage C. C'est Ic langage du futur, 
et je compte d'ailleurs nVy mettre 
moi-meme. Mes amis Mark, Alan et 
Rob ont tous les txois appris la 
programmation a I'universite\ et ca 
leur donne un avantage sur moi. 
Quant a moi, j'ai appris La 
programmation sur le peu de temps de 
libre que me laissaient mes autres 
etudes, l'activismc dtudiant (nous 
appelons cela 'Student government*), 
les articles que j'ecrivais dans le 
journal univcrsitaire, etc., etc. Brcf, je 
me suis forme* en lisant des revues. Si 
c'est votre voie, fipluchez tous les 
programmes de Pom's : il ne suffit 
pa_s de les recopier, il faut s'en 
impregner si vous voulez programmer 
a votre tour. 

Enfin, il faut que programmer soit 
pour vous un PLAISIR. Sinon, 
n'insistez pas, allez chercher foitune 
ailleurs. A ma connaissance, tous les 
programmcurs qui ont reussi adorent 
leur metier. J'aime a dire en bouladc 
que je n'ai pas de metier, juste un 
violon d'Ingres a plein temps ! 

Pom 's — Revenons aux Beaglt. 
Pour le moment, I'essentiel de leur 
production — nous voulons parler de 
la nouvelle sirbt TirneOut — se silue 
dans le sillage d 'AppleWorks. Ne 
craignez-vous pas de mettre 'tous vos 
ceu/s dans le mime panier' ? Bientot, 
Claris va sortir le nouvel AppleWorks 
GS. N'allez-vous pas etre debordes ? 
Randy Brandt — Non, pas du tout. 
AppleWorks GS sera trcs lent par 
rapport a AppleWorks, et fort 
gourmand en m^moire (1,25 Mega 
pour le moins). II ne devrait pas 'faire 
de l'ombre* a la serie TimeOut 
Beaucoup de ceux qui possedent un 
GS hdsitcront a sortir quclqucs 
centaines de dollars — ou milliers de 
francs — uniquement pour faire 
tourncr un programme affligd d'unc 
interface grnphique poussive. 
D'ailleurs meme les //c et//e 
coniinuent a bien se vendrc (du moins 



aux Etats-Unis), et il y a un grand 
nombre d'utilisateurs d' AppleWorks 
qui ne sont pas encore passes a 
TimeOut, et qui y viendront. 
Je precis, person nellement, que la 
majority de ceux qui achfcteront 
1'AppIeWorks GS continucront a faire 
l'essentiel de leur travail avec 
AppleWorks et TimeOut, et ne 
passeront a 1' Apple Works GS que 
pour des applications speciaies, pour 
des mises cn page 61 aborts par 
exemple. II est bon que Claris ait pris 
une initiative favorable a r Apple //, et 
je m'en rejouis ; mais pour abattre du 
boulot, vite fait bien fait, le bon vieU 
AppleWorks est loin d*avoir dit son 
demier mot. D'ailleurs, a rAppIcFest 
du mois de mai demier, tant Bob 
Lissner (l'auieur d r AppleWorks) que 
Claris (son distributeur) ont annonc6 
une mise a jour de la demiere version 
(anglaise) d'AppleWorks. 

Pom 's — Programmez'vous seal, ou 
en equipe ? Comment coordonnez- 
vous votre travail ? 
Randy Brandt — Tous les 
programmeurs de chez Beagle 
travaillent g6n6ralement seuls, dans la 
mesure ou ils ne mcttcnt pas leurs 
fichiers-sources en commun. Mais on 
peut dire aussi qu'ils travaillent en 
cquipc car ils cssaient mutuellement 
leurs programmes, se font des 
suggestions, ou meme echangent des 
idecs a divcloppcr. Jc vous ai deja 
parle de nos reunions du vendredi : 
c'est au cours de ces lunchs que nait 
l'emulation. Nous sommcs, cn 
quelque sorte, une. grande famille : nos 
Spouses et nos enfants se connaissent, 
et nous fetons ensemble nos divers 
anniversaires, en toute amitie\ II n'y a 
pas de cloison cianche entre le travail 
et le reste de l'existence. Nos ages ? 
En moyenne, autour de (rente, un peu 
moins peut-6tre. Matt Reimer est 
rexception : il avail 16 ans quand il a 
commence chez les Beagle Bros, il en 
a 19 aujourd'hui. 
Malt a travail 16 sur les 'Beagle 
Screens 1 . II ccrit actuellement un 
programme de dessin pour TTOS 
nomme 'MiniPaint', qui sera distribu6 
par JEM SoftWare des l'hivcr prochain 
pour un prix de 25 dollars. II en 
sortira une version plus puissante d'ici 
unc annee sans doute, qui sera public 



Pom's n° 38 



9 



ccttc fois par lcs Beagle Bros. J ai fait 
la connaissance de Mali alors que je 
faisais un remplacemem en tarn que 
prof dc chimie a son dcole, a 1'epoque 
ou il Taisait ses premieres armes chez 
lcs Beagle Bros. El e'esi pas Iiasard 
que nous avons decouvert que nos 
grands-peres avaicnt etc de bons amis, 
il y a 50 ans, au Canada ! 

Pom's — Quels sont vos langages 
de programmation favoris ? Quels 
outils de programmation utilisez- 
vous ? Sur quelle(s) machine(s) '/ 
Randy Brandt — Je n'ecris qu'en 
asscmblcur 6502, a l'excepuon des 
programmes d'installntion qui sont en 
Basic Applesoft, Pardon, j'utilise 
aussi un troisiemc langage de 
programmation : e'est UltraMacros sur 
AppleWorks ! 

Tout recemmeiiL, je suis passe au 
Macintosh Programmer's Workshop 
sur Macintosh SH. et a son 
assembleur IIGS. Vu sa puissance, je 
crois que je finirai par 1'uUliscr pour 
lout mon travail futur. Mais la totalile 
de mes programmes actuels ont 6te 
ecrits avec Merlin Pro, d'abord sur un 
//c, puis sur un IIGS. 
Voici une liste de mon materiel : 

• Un Apple IIGS avec 1 ,75 Megas 
(GS RAM d'Applicd Engineering) 

• 1 carte RamFactor (1 Mega) avec 
bauerie autonome (Merlin, 
AppleWorks, etc.) 

• 1 lecteu^3,5 ,, 

• 1 lecteur5'"l/4 

• 1 modem 1200 bauds 

• 1 ecran //e vert Apple lit (pour la 
programmation) 

1 ecran couleur IIGS (pour epater 
tes amis, et pour Ies logiciels 
scolaires "Sticky Bear" de rna fille 
Heather) 

• I imprimante ImageWriter II 

• 1 Apple //c 

1 Macintosh SE avec disque dur 

interne 20 Mega. 
(Mes amis Roger et Tina Wurtker, qui 
font toutes les expeditions des 
logiciels JEM Software, gerent la liste 

des clients avec le //c et la Base de 

donnccs d'AppIcWorks). 

Jusqu'a present, je n'ai cmpIoy6 que 

Word de MicroSoft, et l'MPW sur le 

Mac. 

Pour gerer loules mes fiches, faire 
mon courrier, etc. j'emploie 



AppleWorks sur le IIGS. Je reserve 
Word & des travaux speciaux, que je 
souhaite imprimer sur la LaserWriter 
des Beagle. Nous faisons aussi la mise 
en page de nos manuels avec Word, 
bien qu'ils soient d'abord ccriis sur 
AppleWorks, puis transferes sur Mac. 

Pom's — Vous avez toujours eu 
pour politique ( com/rie Pom's) de 
vendre des programmes non protegis, 
malgre le risque de les voir pirates. Et 
pourtant, malgre' (oud cause de ?) leur 
prix irks raisonmble, Us continuenl d 
bien se vendre. Quavez-vous d dire d 
ce propos ? 

Randy Brandt — Ce n'est pas une 
'protection' qui decoiiragera les 
deplornbeurs ; je dirai mcme qu'ils y 
voicnt un ddfi. A mon avis, face a un 
bon logiciel non proteg£, a un prix 
abordable, une personne honnete reste 
honnete, alors que le pirate endurci n'y 
trouve anenne stimulation. Quant au 
'gagne-petit' decide a se procurer des 
logiciels gratis, il y parvient de toutes 
facons, protection ou pas. C'est 
regrettable, mais ceia fail parlie des 
desagrements du metier. II serait 
injuste de voulou* imposer, pour une 
proteciion illusoire, des desagrements 
a la majority des acheteurs honnetes. II 
est tres difficile, pour ne pas dire 
impossible, d'uliliser des disques 
RAM et des disques durs avec des 
logiciels proteges. Noire politique a 
toujours euS de proposer des logiciels 
d'acces simple et convivial, et notre 
clientele nous en sail gr£. 

Pom } s — Cette clientele vous 
tcrit-elle beaucoup ? Comment 
arrivez-vous a ltd ripondre et d 
programmer quand-meme ? 
Randy Brandt — Oui, le courrier ne 
manque pas : je lui consacre plusieurs 
heurcs par scmaine ! UltraMacros 
m'apporte des consolations : la 
corrcspondance me prend du temps, 
mais m'amene souvent de bonnes 
idees. Je cmis que mes correspondanLs 
apprecient mes propres suggestions a 
leurs questions 

Pom's — Et Apple, dans tout ca ? 
Que penscz-vous du IIGS ? Quand on a 
un Ile,faut4l le vendre, ou le mettre d 
niveau ? Quel est Vavenir de I'Apple II 
en general ? 



Randy Brandt — L'avenir du TTGS 
se presente bien. II est de plus en plus 
question d'un mod£Ic am61ior6, plus 
rapide, avec une meilleure resolution 
verticale ei d'aurrcs 'plus*. Les 
premieres innovations ne viendront 
peut-etre pas d'Apple. Deja, des 
societ^S comme Applied Engineering 
travaillcnt sur des accelerateurs et des 
cartes m£moire pcrfectionneeS. 

Apple soutient la famille des Apple // 
(du moins aux U.S.A.) en proposant 
un He equipe* d'un lecteur interne 3,5". 
Si Apple pensait que la famille des // 
6tait morte ct cntcrrcc, il nc sc 
donnerail pas la peine de sortir un 
nouveau //c. 

Vu le nombre d'Apple // couraniment 
utilises dans le monde, je crois que 
meme si Apple arretait d'en fabriquer, 
ils auraient encore un bel avenir 
devant eux. Connaissez-vous une autre 
machine qui comptc un tel nombre 
d'ulilisateurs devoues ? II appartient a 
des publications comme Pom's, 
Nibble, Open Apple et d'autres de faire 
ciiculer rinformation, maintenir un 
lien entre les membres de cette 
immense communaute,, de ne pas 
laisscr s'6teindre 1'enthousiasme. 
Quant & moi, j'ai etc* hcurcux de cette 
occasion de partager un peu de mon 
univers personnel avec lcs lecteurs de 
Pom's. J'applaudis aux efforts de votre 
revue qui a su garder a I'Apple// une 
place de choix dans un pays quelque 
peu saisi par la 'fievre de Mac\ et je 
vous envoie a tous un ties amical 
salut ! A 

2/09/88 O 



DisquettesDPA 1^7 

Vous trouverez la 
description de nos 

sept premieres 
disquettes Apple // 
Shareware dans 
numero 37 de Pom's 
ou sur notre serveur 
Minitel au : 
(1)39 53 04 40. 



10 



Pom's n° 38 



Marc <Bavant 



La premiere partie de 
cet article, publiee dans 
le nutnero 37 de Pom's, 
nous a per mis de faire 
connaissance avec la 
Hheorie' de VEnsoniq ; 
passons done mainte" 
nant a la pratique... 

Etalonnage 

du convertisseur 

Nous savons peu de choses sur ce 
convertisseur sinon qu'il accepte des 

tensions comprises entrc ct 2,5 V. 
Construisons-nous un petit programme 
qui se charge d'interroger le 
convertisseur ct de stocker 256 
rcsultats successifs. 



!80O:LDA £13 
! STA C03C 
l LDA LE2 
! STA C03E 
! LDX 10 
!80C:LDR C03D 

DF.C ; histmre dp. pasx&r 5 
cydta 
! DEC 
1 DEC 
I DEC 
! DEC 
J DEC 

! STA 2000, X 
! IWX 

/ mm doc 

! RTS 



Pour fonciinnner comme souhairS, ce 
programme doit etre lancd en viiesse 
Iente (sdlectionnez viiesse normale 
dans le tableau de bord. revenez sous 
Basic et faites un Reset pour etre plus 
sur). En vitesse rapide, il faudrait 
ajouier des d61ais pour atteindre les 32 
microsecondes indispensables (faites- le 
a litre d'exercice). 

Verifier a l'aide d'un voltmetre que tc 
circuit ne delivre aucune tension entre 



les broches 1 ct 2 (si e'etait lc cas, 
vous vous seriez trompe de broches !) 
ct court -circuitez-les. La valeur trouvee 
par le convertisseur est alors 0. Si 
vous vous en sentcz capables, bricolez 
une alimentation variable avec une pile 
ct un potentiomeire. Reliez la masse 
au pole mo ins de la pile et appliquez 
pmdemment et successivement des 
tensions de <k 2,5 V dc manicrc a 
dtalonner le convertisseur. Pour ma 
part, aux erreurs de mcsure pres je 
irouvc : 

tension (V) valeur numdriqvc 



0. 


00 


0.2 


16 


0. 4 


2C 


0. 6 


42 


0. 8 


58 


1,0 


6E 


1.2 


80 


1.4 


96 


1.6 


AA 


l.Q 


BE 


2.0 


D2 


2.2 


EQ 


2.4 


FC 



Ces rdsultais montrcnt dc manicrc 
flagrante que lc convertisseur est 
lineaire sur la totalite de son riomaine, 
avec une pente constante d'environ 
110/V. 

Cctte gamme de tensions admissibles 
va nous poser un petit problcme car la 
plupari des dquipements de 
reproduction musical e (postes de radio, 
magnetophones...) fournissent un 
signal de valeur moyenne nulie, signal 
qu'il faurira done polariser autour de 1,2 
V si on veut l'utiliser en cntrtfe du 
convertisseur. Et ceux qui fourniraient 
eventuellement un signal polarise* n'ont 
aucunc raison d'avoir la tension 
moyenne que nous recherchons. Un 
simple couplage par condensateurs et 
un pont diviscur tel que eclui ddcrit 
ci-apres feront 1'af faire dans tous les 
cas. 

Attention : Mesurez la tension 
U avant de relier le DOC au 
montage, U = polarisation 
continue + signal et verifier 



imperativement : 

<= U <= 2,5 V 

Ce montage ne protege 
absolument pas le DOC des 

surtensions ni d'unc crrcur dc polarite 
dans le branchement de la pile. Si vous 
ne save^ pas distingucr lc pole '+* 
d'une pile de son pole * reclamez des 
dommages-intcrcts au Ministfcre de 
l'Educauon Nationale. 



Source sonore 

I h ® 



PI 



j broche 2 broche 1 

Hgs 



C = 2,2nF R2 = 3 R1 
R1 = 1 Kft Y = 4,5a5Y 



Adaptateur d'entree 
du convertisseur 
analogique ■* numerique 



Ecoute directe du 
son immense et ecrete 

Cc paragraphc va ccrtaincmcnt rappclcr 
des souvenirs a ceux qui avaient utilise* 
1 entree cassette de leur Apple ][+ ou 
//e pour num^riser des messages qu'on 
pouvait lui faire restituer d'une voix 
nasillarde, mais parfaitemcnt intel- 
ligible et naturelle. a tout moment. La 
technique est ici la mfime : on ne 
rcgarde que le signe du signal d'entrec 
Cpar rapport a sa valeur moyenne) et on 
actionne un defacement de la 
membrane du haut-parleur a chaquc 
changement de signe. 



Pom's n° 38 



11 



actionnc un dcplaccmcnt dc la 
memhrane du haut-parleur a chaque 
changemcm dc signe. 
*/ 

'800: IDA £13 

! STA C03C 
! LDA LB2 
! STA C03E 

!QQA;LDX C03D ; 4 cycles 

! JSR 830 ; 12 + n"2 (n = 

nombrcdeNOP) 

I TXA ;2 

! EOR ;3 

i BPL 8 OA ;3 



; haut-parleur 
; bouton ou c5 



STX 
! STA CO 30 

! BIT C061 
! BFL BOA 
! RTS 

!830:NOP 
! NOP 
J NOP 
! NOP 
! RTS 



Une fois encore, les temps sont ajustcs 
pour un fonctionncmcm a 1 MHz. 
Testons tout cela. Choisissez une 
station de radio, de prdfe*rence en 
modulation de frequence en raison dc la 
meilleure qualite du son, et au moment 
des informations pour pouvoir evaluer 
1'intclligibilite. Recuperez le signal dc 
la prise casque, par exemple grace a un 
jack monophonique avec un eventuel 
adaptateur st£rdo-mono, et enfin 
injectez ce signal a 1'entree du montage 
polarisatcur aprcs avoir pris soin de 
haisser le reglagc de volume du poste. 
D est prudent de garder un volunetre en 
parallele sur l'entre'e du DOC pour 
surveiller les tensions appliquees. 
Lance/ le programme ci-dessus, ajustez 
le volume juste au-dessus du seuil 
limite. ne lesinez. pas sur les aigus et 
apprccicz la qualite de la parole ecrctcc 
e'est-a-dire, dans notre cas, numerisee 
avec un seul bit par gchamillon. si 
tout fonctionnc corrcctcment, la parole 
doit etre clairement intelligible et 
rcssembler a ce qui peut sonir d'un 
walkie-talkie, d'un poste CB ou autres 
gadgets pas precis^ment renommes 
pour leurs qualitcs musicalcs. Si 9a ne 
marche. . . pas cherchez rerreur ! 

L'avantage de ce type de numerisaiion 
est bicn entendu la compaciic Uu 
codage qu'il est possible d'atteindre 
(pour mtfmoire, les systcmcs sirnilaires 



sur Apple // pcrmcttcnt dc stocker une 
petite dizaine de secondes de parole 
dans I6K0, mais cela depend beaucoup 
de la qualite du son). La frequence 
d'echantillonnage est toutefois un peu 
faiblc sur 1c DOC pour ce genre dc 
technique O'entre'e cassette 6tait mieux 
adapiee aux £ehaniilloniiages rapides 
sur un bit). 

Quand vous en avez assez, frappez la 
touchc ou faitcs reset. 

Numerisation et 

stockage du son 

dans la RAM privative 

L'experience precedente nous aura 
surtout permis de verifier que notie 
montage fonctionne correctement. 
Nous allons maintenant preparer l'e'tape 
suivantc cn stockant les valcurs 
num^risees dans la RAM privative du 
DOC. On peut noier au passage qu'il 
est dommagc que le processeur soit 
oblige d'intervenir pour cene operation 
qu'on aimerait bien voir le DOC 
effectuer seul. I*, programme qui suit 
est une copie du pr£c£dent Idgerernent 
compliquee par la valse des registres. 



*! 800; LDA ZOO 
! STA C03E 
! STA C03F 

( nrqup.rlr Vechnntillan precedent et 
relancer la numensuliun) 

1808 :LDA C03E ;4 + k cycles 

I PHA ;3 
! LDA £13 ;2 
! STA C03C :4 + k 

! LDA LE2 ;2 

I STA C03E :4 + k 

! LDX CO 3D ;4 + k 

! BNE 81C ;3 (remplacer les 

valeurs$00par$01) 
I INX ;2- 1 

( inserer I'echantitlon dans la RAM 
privative) 



!81C:LDA 173 
! STA C03C 
! PLA 

! STA C03B 
! STX CO 3D 



;2 

;4 + k 

;4 

;4 + k 
:4±k 



(r.ontinuer jusqu'a 64 Ko erhnnt'dlons) 



I LDA C03E 
! BEQ 831 
I NOP 



4 + k 

3 

2- 1 



I JMP 814 ;3 (astucepour 

equilibrer les temps de cycle) 
1831 : LDA C03F ;4-l + k 
!834;BNE 80S ,3 
! RTS 

Lanccz ce programme par 800G, le 
prompteur du moniteur nSapparaTtra 
apres un court instant quand toute la 
RAM privative aura 6tc rernplie. 

Remarque : la valeur 0, qui 
correspond a une tension 
rigoureusement nullc, a la mauvaisc 
propriete d'etre dgalemenL un ordre 
d'arret pour les oscillateurs qui essaienl 
de la produire, d'ou notre INX. 
Remarque 2 : on a procede a une 
astuce pour tSvher que la duree de la 
periode d'echantillonnage ne differe 
selon la branche emprunte'e par le 
programme aprcs le test de d£but de 
page. Ceci n'a sans doute pas grand 
effct sur la quality du son ei presents 
1'inconvenient d'altonger cette periode 
dans tous les cas. 

Excrcicc 5.1 : on arrive a une 
periode d'echantillonnage de 59 ou 60 
cycles si je ne me trompe pas, ce qui 
est un peu trop pour un 
fonctionnement du microprocesseur a 1 
MHz et pas asscz en principc pour 2,8 
MHz. Neanmoins, on verra que grace 
au ralentissemem du aux acces a la 
mdmoire lente, ce programme 
fonctionne Sgalemem en Vitesse 
"rapide". En supposant que l'acces a la 
memoire lente se fait exactement a 1 
MHz, calculez le nombre equivalent k 
dc cycles a 2,8 MHz "ajoutes" aux 
instructions STore et LoaD. (reponse : 
k=ll environ) 

Exercice 5J2 : calculez la frequence 
d'echantillonnage correspondant a ce. 
programme tournant a 1 MHz. 
Calculez le debit binaire moyen de 
transfert dans la RAM des donnees 
numdrisees. Calculez. lc temps de 
remplissage de la RAM. 
Mesurez-le et comparez. 
Exercice 53 : mesurez le temps de 
remplissage pour Thorloge a 2,8 MHz. 
D6duisez-en la periode et la frequence 
d'echantillonnage. Conclusion. 

Nous pouvons lancer ce programme 
mais, a ce stade, nous n'aurons pas 
d'assurance sonore que tout s"est bien 
pass6. Contentons-nous done 
d'obscrver une page de la RAM 
privative et de vdrifier qu'elle contient 



12 



Pom's n° 38 



des donnees plausibles. 
*/ 

!840:LDX £0 

! JSL FF40A8 ; RcadRom 

!846:STA 2000.X 

I JSL FF40AF ; ReadNxt 

! I NX 

! BNE 84 6 

! RTS 
i 

* 84 OG 2000. 2 OFF 

Remarque : comme nous executons 
ce programme cn mode 8 bits, Foctct 
de poids fort du registre X n'est pas 
positionnd par nous, on observe done 
bien une page de la RAM mais on ne 
sail pas laquelle a priori. 

6. Les registres 
d'oscillateur 

Voici 1'heure du plat de resistance ! Les 
lecteurs presses peuvenl sauter 
directement aux experiences mais il ne 
comprendroni pas tout. H ne sera pas 
question ici d'entrer dans lous les 
details, mais seulement d'essaycr 
d'tJclairer la documentation develop- 
peurs sans la paraphraser. La lectxire 
integrate de cette documentation 
(Bnsoniq DOC ERS, 1 1 pages) n'est 
pas necessaire pour comprendre ce 
chapitre, mais je la recommande 
fortcrnent a ceux que le sujet interesse. 

Generalites sur 
les osciliateurs 

Le DOC est un processeur synchronise 
grace a une horloge a 7,14 MHz (je ne 



garantis pas ceue valeur sur laquelle la 

documentation scmblc hesitante). Le 
cycle de traitement interne du DOC est 
8 fois plus long que le cycle d'horloge. 
Pendant chaque cycle de traitement, le 
DOC 'donne la parole' a un oscillateur, 
par ordre dc numdro croissant et jusqu'a 
concurrence du nombre d'oscillateurs 
autorises (si quatre osciliateurs sont 
autorises, le DOC donnera 
successivement la parole au 0, au 1, au 
2, au 3, au 0, etc.). H consacre ensuite 
deux cycles au rafraJchissernent de la 
RAM. La duree qui s£parc deux 
interrogations successives du meme 
oscillateur depend done du nombre 
d'oscillateurs autorises. Par 
commodity, on Iui donnera le nom de 
periode d'echantillonnagc du DOC (nc 
pas confondre cet echantillonnage de 
sortie avec l'dchantillonnage de 32 
microsccondcs rdalisd par le 
convertisseurd'entree !) 

Chaque oscillateur est en fait un 
generateur d'adresses, e'est-a-dire que 
lorsque lc DOC iui donne la parole, il 
elabore une adresse de 16 bils a 1'aide 
des informations de commandes que 
1'utilisateur a placees dans ses registres. 
Vous aurez surement devine" que cette 
adresse ddsigne un octet de la RAM 
privative du DOC et que e'est 
justement cet octet-la qui va ensuite 
passer dans le convertisseur 
numerique-analogique qui conduit a la 
broche 3 du coimecteur. 



La generation d'adresse 

Enuous maintenant dans les details de 
la generation d'adresse. Tout d'abord, 
notons que les calculs d'adresse se font 



NUMERI 

LOGICZEL DE CALCUL MENTAL 



sur 24 bits. A chaque oscillateur est 
associee une valeur courante sur 24 
bits qui est mise a jour a chaque cycle 
de traitement par addition d'un nombre 
de 16 bits contenu dans les registres 
dits de frequence de cet oscillateur. Les 
calculs se font dans I'accumulateur de 
runitS arithmetique du DOC. II faut 
ensuite proceder a un savant mixage 
pour ohtenir 1'adresse recherchee en 
function du conlenu de 1'accumulatcur. 
Cela se fait a l'aide de trois 
parametres : 

- la resolution ; 

la page dc debut de la 'table 
d'onde 7 : 

- la longueur de la 'table d'ondcV 

On peut ecrire symbol Iquenient : 

POUR CHAQUE OSCILLATEUR i ET A 
CHAQUE CYCLE DE TRAITEMENT 
FAIRE 

ACCUMULA TEUR = COURANT(i) 
ACCUMULA TEUR ~ ACCUMULATEUR 
+ INCREMENT (i) 
COURANT(i) - ACCUMULATEUR 

ADRESSE (i) - F {ACCUMULATEUR, 

RESOLUTION (i) , DEBUT (1 J , 
LONGUEUR (i ) ) 
FIN TRAITEMENT 

Parallelement a l'explicitation de la 
fonction F. nous ddvelopperons un 
exemple num^rique cn prcnant 
ACCUMULATEUR = S04FF82. Le 
parametre de resolution nous permet 
deja dc nous debarrasser dc 8 bits 
superflus dans raccumulaleur. On peut 
garder les bits 

de b23 d b>8 : $04FF (resolution 7) 
deb22db7: $09FF (resolution 6) 
etc. 

de bl6 d bl : S7FA1 (resolution 0) 
Vous voyez. que dans tous les cas lc bit 



Comprenant 8 niveaux d'additions, 6 de soustractions, 6 dc multiplications, 7 dc 
divisions, et des calculs algebriques avec parentheses : 3000 operations choisics 
pour leur interet pedagogique, s'adressant aux eleves de CM1, CM2, Geme et 5eme. 

Pour Apple //e (64Ko), Apple //c et Apple IIGS 
Prix du logiciel avec sa copie de sauvegarde et sa notice d'emploi : 210 F TTC + 20 F de port 



Envoyer ce bon et votre regie ment a : 
P. Carlier — 16, impasse du bureau - 7501 1 Paris 



Pom's n° 38 



13 



esi sacrifie (lc bit 1 aussi d'aiUeurs a 
cause dc cc qui suit). Notcz tout dc 
meme que l'accumulateur est 
sauvegarde pour ]e cycle suivant, dune 
le bit n'est pas du tout inutile ! 

I.-a 'table d'ondc' (wavetable) est tout 
simplemeni un segment de la memoire 
RAM privative auquel on veut 
cantonner Toscillateur. Auiremem dit. 
on nc 1'autorisc pas a gencrer des 
adresses en dehors de ce segment. Pour 
simplificr les calculs du DOC nous 
sommes astreints a definir des tables 
d'onde commencant imperativement en 
debut dune page (e'est-a-dire avec une 
adresse divisible par S 100) et dont la 
longueur est un nombre eniier de 
pages, puissance de deux comprise 
entre 1 et 128 (ce qui correspond & des 
lailles de 2**8 a 2**15 octets). Notre 
bonheur ne serait pas complet si on 
n'ajoutait pas k cela une restriction 
liant ces deux parametres, a savoir que 
le ddbut d'une table d'onde doit avoir 
une adresse multiple de sa longueur. 

Illustration 

. un segment d'une page peut 
commenccr a n'importc quel ddbut 
de page; 

. un segment de 16 pages ne peut 
commenccr qua une adresse de la 
forme SnOOO ; 

. un segment de 128 pages (alias 32 
Ko) ne peut commencer qu'a 
Tadresse S00O0 ou $8000 ; 
un segment de 2**L pages nc peut 
commencer qu'a une adresse de la 
forme d*2**(L+8), oCi d < 
2**(8-L). 

Placons-nous dans le cas d'un segment 
de 16 pages commencant en SA000 (et 
finissant en SAFFF par consequent) et 
reprcnons noire exemple. Avec la 
resolution la plus line RLS=0, notre 
adresse S04FF82 est devenue S7FA1. 
Jl nous reste a cxtraire de ce nombre les 
12 bits qui suffiront pour adresser un 
octet determine au sein de la table 
d'onde. Le DOC choisit les 12 bits de 
poids fort (S7FA0 -> S7FA) d'oti 
Tadresse definitive SA7FA. De manicre 
plus g6n6rale. si on considere un 
segment de 2**L pages et une 
resolution RES, Tadresse gentfrde est 
formed des 8-L premiers bits du 
nume*ro de la premiere page et les 8+L 



bits suivants sunt extraits de 
l'accumulateur entre tes positions 
16+RES et 9+RES-L (bornes 
incluses). Tout ccci est illustre dans le 
tableau de la page 11 de la 
documentation developpeurs, mais se 
resume en une seule egalite' qui 
expnme Tadresse genfree au k-icme 
cycle dc traitement : 

ADRESSE(i) = (DEBUT(i) DIV 2** 
(8+L))*2**(8+L) + ((k* 
INCREMENT(i))MOD 2** 
(8+L)) DIV 2»*(9+RES-L)) 

Cette derniere Sgalite n'est donnee qu'a 
litre indicatif. Si clle vous rcbutc (cc 
qui ne serait pas dtonnant) 
contcntez-vous de comprendre 
Texplication donnee ci dessus. 

Quelques formules 
pour mieux saisir 

On aura compris que la frequence du 
son issu du DOC est une fonction des 
nombreux parametres d6crits ci-dessus. 
Commencons par exprimer la frequence 
d'echantillonnage (inverse de la periode 
d'echantillonnage) designee dans la 
documentation par SR. 

SR - ci.K / (8* (OSC + ?)) 

ou Ton retrouve CLK la frequence 
d'hoiloge, 8 le nombre de cycles 
d'horloge pour un cycle de traitement, 
OSC le nombre d'oscillateurs autorises 
et 2 le nombre de cycles dc 
rafraTchissement. On peut mettre ceci 
en parallele avec la frequence 
d'echantillonnage d'entree : 
SRin = CLK / 8*?fZ 

ou Ton retrouve 26. le nombre de 
cycles de Uaitements par numerisauon. 

Imaginons maintenant que nous 
definissions unc table d'ondc en RAM 
contenant une periode unique d'un 
signal periodique quelconque. Nous 
pouvons demander a un oscillateur de 
parcourir cette table indefiniment en 
bouclant (croycz-moi sur parole pour lc 
moment). Le son produit sera done 
egalcment periodique el de periode 
6gale a la dure*e de parcours de cette 
table (periode du fondamental). 
Calculons cette duree : a chaque periode 
de traitement, roscillateur incremente 
Tadresse qu'il produii d'une quantity n : 

n - FC / (2** (9+RES-L) ) 

ou FC est Tincrement (comenu des 



registrcs dits de frequence), RES est la 
resolution et 2**L est la longueur dc la 
table en pages. 

La periode du fondamental est done ; 
'I* = nombre dechantillons lus / 

frequence dc traitement 
T = (nombre total / pas de lecture) / 

SR 

T= (2**(L+8)/n)/SR = 

2**(l7+RES)/(FC*SR) 

Ce n'est pas un hasard si la longueur de 
la table n'interviem plus dans cette 
derniere formule : e'est une 
consequence dircctc des mccanismcs 
compliques de calcul d'adresse. C'cst 
ineine vraiseniblablement leur cause ! 
De cette maniere, vous avez le choix 
du pas d'echantillonnage de votre 
signal : soit vous choisissez un pas 
tres fin et alors vous aurez une table 
d'onde irfcs tongue, soit vous choisissez 
un pas grossier et alors la meme 
portion du meme signal tiendra dans 
une 'table d'onde' plus courte. Si les 
parametres FC, RES et OSC sont 
idemiques dans les deux cas, vous 
obtiendrez en sortie du DOC un signal 
de meme frequence mais de qualite" 
some peut-eue differente. 

Les registres dits de commande 
dc frequence $00-$1F et 
$20-$3F (frequency 
cuntrul, low and high) 
Ceux de la premiere s6rie contiennent 
les bits de poids faible et ceux de la 
seconde les bits de poids fort de 
Tincrement ajoute* a la valeur courante 
des oscillateurs a chaque cycle de 
uaitemeni. 

Exemple : 505 contiem S40 et S25 
contient SO?- -> increment de $240 
pour Toscillateur numero 5 

Les registres de volume 
$40-$5F (volume) 
En plus du volume g6n6ral dc la sortie 
commande par les 4 bits de poids faible 
du regislre $C03C, on peut commander 
individuellement et sur une £chelle de 
(mini) a 255 (maxi) le volume de 
sortie dc chaque oscillateur. C'cst ccla 
qui permet a la boTte a outils d'offrir 
des definitions d'enveloppe. 

Les registres d'echantillon 

$60-$7F (data sample) 

Chaque registre contient la derniere 



14 



Pom's n° 38 



valcur luc dans la RAM par 
l'oscillateur concern^. 

Les registres dits d'adresse 
S80-S9F (adress pointer) 
Chaque registre contient le numero de 
la premiere page dc la 'tabic d'onde* a 
laquelle l'oscillateur est rattache. 
Rappelons que la longueur de la table 
d'onde determine les bits significatifs 
dc cc registre. 

Les registres de commande 
$A0-$BF (control) 

Chaque registre de cette seYie est 
compose* de plusieurs champs : 
b7 k b4 : 

canal (ces hits seronl prese/ntes sur les 
broches 4 a 7 du connectcur Molcx a 
chaque fois que 1'oscillatcur en question 
sera actif), 
b3 : 

autorisauon dc gdncrcr unc interruption 
a la fin de chaque cycle de parcours de 
la table d'onde assoeiee, 

b2 a bl : 

mode dc fonctionnement (voir plus 
bas) t 

bO : 

arret de l'oscillateur (spontane* ou 
commande par forgave de ce bit), 
rappelons que l'oscillateur s'arrctc 
spontanement s'il genere l'arlresse d'une 
mciuuirc de cumeiiu 0. 

Les modes de fonctionnement 
(commandes par le bit 0) sont 00 
(bouclc infinic), 01 (unc sculc 
iteration), 10 (un oscillateur commande 
le volume ou la duree de la boucle d'un 
oscillateur de numdro adjacent), 11 
(deux oscillateurs de numcros adjacems 
prennent la main a tour de role et 
indefiniment). 

Les registres de longueur/ 
resolution $C0-$DF (waveform 
table size/ resolution/ bank 
select) 

Chaque registre de cette scrie est 
compose* de plusieurs champs : 

b7 a b6 : non utilises sur IIGS 

b5 & b3 : parametre L (2**L = 

nombre de pages de la "table 

d'onde") 
b2 a bO : parametre RES 

Nous nc revenons pas sur leur 
signification. 



Mise en pratique 

Nous allons nous contenter de 
determiner par le raisonncment les 
parametres h utiliser pour que le DOC 
nous 'rejoue' le contenu de la mernoire 
que nous venons d'y insurer grace au 
programme dc nume'risauon. 

Tout d'ahord, on rernarque qti'un seul 
oscillateur ne pcut pas parcourir les 
64Ko d'un coup. On pourrait penser a 
lui faire parcourir les 32 premiers Ko, 
lui demander de g6n6rer une 
interruption, traiter cette interruption 
en modifiant ses registres pour lui faire 
parcourir lc rcste de la RAM. C'est 
faisable mais il existe une technique 
beaucoup plus uaturelle pour le DOC, 
a savoir 1'utilisation du mode relais 
(swap mode, %11) qui permet 
d'cnchalncr lc fonctionncmcni dc deux 
oscillateurs sans aucune discontinuity. 
Le premier oscillateur iravaillera done 
sur les adresses $0000 k $7FFF et le 
second sur S8000 a SFFFF. 
Remarque : ce mode necessite que le 
premier oscillateur soit de numero pair 
et que le second soit de numero 
immediatcmcnt superieur. 

Nous voulons que la pe"riode 
d'^chantillonnage en sortie soit 
identique a celle que nous avons 
utilises en entree. En supposant que 
1'on a 6chantillonne 1'entree avec la 
frequence maximale SRin, on obtient : 
osc - z 4 

Nous voulons egalement qu'a chaque 
periode d'echantillonnage. l'adresse 
produite augmente de n=l. Comme 
L=7 T il vient : 

FC - 2'* (2 + RES) 

Nous pouvons done choisir ces deux 
derniers param&tres avee un degre de 
liberte : RHS=0 et FC=SUU04 par 
cxemple. Lc volume dc chaque 
oscillateur sera r£gle* h une valeur 
identique, SFF par exemple. 
A 340 : El 2E (24 oscillateurs ) 

40 FF 41 FF (volume) 

00 04 20 00 01 04 21 00 (frtfuu) 

80 00 81 80 (pagededibia) 

CO 38 Cl 38 (longueur/ resolution) 

AO 06 Al 07 (commande) 

FF (fin des directives) 
*320G (chargement des registres ) 
*300G 2000. 20FF (retire et verifier) 

Noniialemeiil, des 3'execution de la 
routine de chargement des registres 



vous devriez entendre le contenu sonorc 
dc la RAM privative r€pti€ sans 
relache. Si cela vous convicnt, vous 
pouvez coniinuer a travailler en 
musique (un peu lancinant lout de 
mcmc) ou arrctcr lc DOC, soit par un 
reset, soit par 

'340 ; AO 01 Al 01 AO m Al 01 
FF N 32 CG 

La repetition dc la sequence scmble 
n&essaire dans certains cas. 

Remarque : en depit des savants 
calculs ci-dessus, la frequence rcstitucc 
par le DOC est trop grande. Ceci est dfl 
au fait que nous avons suppose* que la 
frequence d echantillonnage est egale a 
la frequence maximum possible, ce qui 
est approximatif dans le cas d'une 
horloge k 2,8 MH? et carre*ment faux 
dans le cas de 1'horloge a 1 MHz. 
Ajuster la frequence par l'intermediaire 
des parametre s RES ou FC nc peut pas 
suffire car la modification de l'un de ces 
parametres revient toujours a doubler 
ou diviser par deux la frequence du son. 
On peut, en revanche, jouer sur le 
nombre d'oscillateurs pour r6gler 
finement la frequence. Les parametres 
suivants sont satisfaisants : 

2.8 MHz OSC=27 RES=0 FC-$0004 
1 MHz OSC-22 XES-0 FC-$0002 

Exercice 6.1 : calculez k (ralentis- 
sement) en fonction des resultats 
ci-dessus (resultat : k=10 environ). 

Exercice 6.2 : essayez diffcrcntes 
valeurs de RES et de FC satisfaasant a 
l'egalitf FC= 2**(2+RES). 
Exercice 6.3 : utilisez quaire 
oscillateurs (2 paires) en choisissaiU 
leurs numeros assez eloignes pour 
obtcnir un leger decalage entre les deux 
4 voies* (ex: 0-1 et 13-14). Vous 
constatcrcz peui-£tre un l£ger echo. 
Comment produire un decalage plus 
important? 

Exercice 6.4 : modifier la routine de 
numcrisation pour qu'clle boucle 
indefiniment sur elle meme (prevoir 
quand nicrne une sortie par appui sur 
c5) et lancer cette routine tandis que les 
oscillateurs sont en fonctionnement. 

Qu'obiient-on ? Observez les 
consequences du Idgcr desajustement 
des frequences d'echantillonnage de 
lecture et de numcrisation. 

o 



Pom's n° .38 



15 




Nouvelles disquettes Domaine 
Public distributes par Pom's : des 
polices de caractcrcs pour la 
plupart issues du Macintosh, 
convcrtics pour 1' Apple //. 

Ces polices de caracteres, livrees sur disquettes 
5,25' ou 3,5', sont utilisables avec des 
programmes du type TimeOut SuperFonts, 
Publish-It !, 816 Paint //e etc. 

Les quelques exemples ci-contre ont ete realises a 
1'alde de TimeOut SuperFonts sur AppleWorks 
1.4. A notcr que SuperFonts pratique comme le 
Macintosh : pour imprimer en 12 points par 
exemple, il recherche en priorite" la police 24 
points et s'il la trouve, il la reduit a 12 points 
gagnant ainsi en finesse. Une fois imprime, il est 
impossible de savoir si un Mac ou un Apple // 
avec SuperFonts a travaille. . . 

POLICES 01 : 41 polices 

Aba Dump 18 — Abbeydecco 14 28 — Aberdeen 
12 24 — Akashi 12 — Alexis 24 — Alice 09 12 
18 24 — Amslan 18 — Andover 12 — Apl 12 — 
Apple I 18 — Arabic 24 — Ascii 12 — Asl 
Finger 14 18 24 36 — Athens 18 — Austin 09 
— Austin Econ 09 10 12 18 20 24 — Avant 
Garde 10 12 14 18 24 — Babylon 09 18 — 
Bamctt 12 18 — Basel 24 48 — Berkeley 18 

POLICES 02 : 33 polices 

Beta Italic 18 24 36 48 — BlockBuster 36 — 
Boise 09 18 — Bombay 12 24 — Book 36 — 
Bookman 10 12 14 18 24 — Border 12 — 
Boston 07 08 09 10 12 14 16 18 20 24 — Bouton 
24 — Brcnncro 12 24 — Broadway 24 — 
Broadway E 14 18 — Bubbles 14 

POLICES 03 : 35 polices 

Bubbles 24 — Cairo 09 18 36 — Calligraphy 24 
36 72 — Camelot 12 18 24 — Candy 24 — 
CapCanaveral 09 — Carmel 12 18 24 — Cartoon 
12 — Casey 12 24 — Cavanaugh 18 36 — Celtic 
72 — Century 18 24 — Chicago Night 12 — 
Chicago 12 18 24 — ChicMath 09 12 18 24 — 
Chivalry 18 — Chugach 12 — Ciao 12 24 



Portez ce bol de vieux whisky aux 257 juges qui 

Jil Sa n. 
PortGZ ce bol de vieux tuhisky oi 

Portez ce bol de vieux whisky aux 

Portez ce bol de v 

$ti*t£S tt M tt VltML U^iSkiT ttUX I 

fcrlez ce bol 6e u-j*ux wfajty oux. 257 jqes tyi ■ 

Portez ce bol de vieux whisky aux 257 juge 

Portez ce bol de vieux rohisky aii: 

Portez ce bol de i 

Porte2 ce bol de ufeuH whisky suh 257 ju 

poRcex ce bo) de vieux whisky < 

Portez ce bol de uieux whisky aux 257 juges c 

Portez ce bol de vieux wl 

Portez ce bol de vieux whisky aux 257 

I oriez ce e vieux whisky aux 257 juges Cjul jurr* 




16 



Pom's n° 38 




mm 




N'avez vous jamais cu 
besoin (Tun accessoire de 
bureau (Classique ou 
Nouveau) alors que 
celui-ci ne se trouvait pas 
sur la disquette de 
demarrage. Votre disquette 
systeme est-elle tellement 
pleine que vous ne pouvez 
pas y stocker vos 
mini-applications (desk 
accessories) favorites. Un 
redemarrage de 1 ! Apple 
IlGS prend tellement de 
temps que cela vous 
rebute. Le but de ce 
programme est de pallier 
cet inconvenient en 
permettant de charger des 
NDA et CDA (entendez par 
la New Desk Accessories 
et Classic Desk Accesso- 
ries) sans que ceux-ci ne 
soient sur la disquette de 
demarrage. 



'Mover' 
fonctionne 

SOUS PRODOS16 

sur les Apple lies 



Utilisation du 
programme 

L' utilisation de ce petit programme est 
rendue tres simple par I'uUlisation 
d'une fenetre de dialogue nc 
comportant que quatre boutons. 
Lcs boutons Lecteur, Ouvrir, Fermer 
ont leur role habituel, e'est-a-dire de 
passer d'un lecteur a un autre, d'ouvrir 
un repertoire ou de charger un fichier, 
et de fermer un repertoire. Le bouion 
Quitter pcrmct quant a lui dc quitter le 
programme. 

Pour mettre un nouvel accessoire dc 
bureau en memoire, il suffii, aprcs 
avoir sclcctionnd le repertoire 
contenant les fichiers des DA, de 
clique* deux fois sur le nom de celui-ci 
ou dc cliqucr une fois pour le 
selectionner puis de cliquer dans le 
bouton Ouvrir. A partir de cet instant 
l'acccssoirc est en memoire et est 
accessible de. I'util isatftur mais n'est 
pas encore completement opera- 
tionncl. Pour qu'il te devienne il faut 
quitter le programme. 

A propos du programme 

Dans le bloc de donn6es nomme 
ToolTable, la version de chaque outil 



Source 
'MOVER.SRC 



mnnpy nwcf? 

init start 

uai ;jy Data 
using prodos 
usi ng Tool Tabl e 

* Bank dc donnces — 

* bank de programme ==> 

* utilisation de 1 ' adressage 



* absoiu 

phk 
plb 

* Sauve 1 'adresse de 

* la pagt* 7.r>ro 

tdc 

st a MyZP 

* Demarre le Tool Locator 

_TLStartup 

* Demarre lc Memory Manager 

PushWord £0 

_MMStartup 



a charger est indiquee. Celles-ci ne 
sont valables que pour les personncs 
qui utilisent la version 3.1 (En 
attendant la 3.2) du Finder ou les 
Tools qui sont sur cette disquette. 
Pour ccux qui font Terreiir de ne pas 
utiliser cette version, il fant mettre 
ou un numcro de version inferieur. 

Exemple: 

dc i2'23, $0200' ; S.F.O 

Version 2.0 

Si vous voulez utiliser une version 
anterieure du Standart File Operation, 
mettre voire numcro de version a la 
place de $0200, mais ceci a vos 
risqucs et perils. 

Le programme ne v6rifie pas si 
l'accessoire de bureau demande est deja 
en memoire. Ceci permct aux 
eventuels programmers d'accessoires 
de charger differentes versions de leur 
ceuvre. 

Icone/Mover est a mettre dans le 
repertoire Icons de la disquette 
contenant le Finder. C'est l'icone 
reprdsentant ce programme. 



PullWord My ID 

* Prend de la memoire en Page 

* pnur les Tool s 

Push Long to 
Pushl.ong £$700 
PushHvrd MylD 
PushWord LSC0O1 
PushLong £0 
_NewHandle 
pi a 

sta 

at a ZPHandlo 

pi a 

sta 2 



Pom's n° 38 



17 



Ida 

sta 



ZPHandle+2 

*0§ 

4 



* Quickdraw en route ? 

PushWord £0 

_QDStatus 

pi a 

bne Quickronte 

* Won, a)ors demarre 

* Quickdraw II 

Ida 4 
phfl 

PushWord £$80 
PushWord CO 
PushWord MylD 

_QDStartup 

* Qui, alors ne demarre que 

* J 'Event Manager 

Quickroute a nop 

Ida 4 
clc 

adc C$300 
pha 

PushWord £255 

PushWord £.0 
PushWord £640 
PushWord CO 
PushWord L20Q 
PushWord MylD 
_EMStartup 

* Place le curseur 

PunhWuzd £.10 
PushWord £20 
_MoveTo 

* Fond noir, ecriture blanche 

PushWord £0 
_SetBackColor 
PushWord £$f 

SetF&reColor 

* Affiche une phrase pour 

* faire patlencer 

PushLong LWaitString 
DzawSliiny 

* Demarre 2e Desk Manager 

_DeskStartup 

* Charge les Tools 

PushLong £Too2Table 
_LoadTools 

" Affiche un beau fond bleu 
PushWord £$dddd 

_ciearscreen 

* Dttmacic Windvw Mctnayai 

PushWord MylD 

_WindSt.art.up 

* Dcmarrc Control Manager 

PushWord MylD 

Ida 4 



clc 

adc t$400 

pha 

_ctl startup 

* Demarre Line Edit 

PushWord MylD 
Ida 4 

clc 

adc £$500 

pha 

^LEStartup 

* Demarre Quickdraw Auxiliary 

_QDAuxStartup 

* Demarre Dialog Managei 

PushWord MylD 
DialuyStartup 

* Demarre Standart File 

Operation 

PushWord MylD 
Ida 4 

clc 

adc £$600 
pha 

_SF5tartup 

* Choisit une fleche comir.e 

* curseur et affiche-la 

Ini tCursor 

_ShowCursor 

end 

* Affiche une f&n&tret de 
" dialogue standart pour 

* charger un fichler. 
PuLDinloy sldzL 

using Dialog 
using prodos 
PushWord £100 
PushWord £35 
PushLong £Prompt 
PushLong £0 
PushLong CTypeList 
PushLong £Templ-te 
PushLong £Hook 

PushLong CPeplyftec 
_SFPGetFlle 
Ida Good 
bne Yabon 
end 

* Quitte le programme en fermant 

* tous les outils qui ont 

* ete ouverts 
Qui t start 

using Data 

using Prodos 
^SFShutdown 
_DialogShutdoun 
_LEShucdown 

QDA nxSh i] tdo wn 
_CtlShutdown 
_WindShutdown 
^DeskShutdown 
EMShutdown 



QDShutdovn 
PushLong ZPHandle 
_Di sposeHandl e 
PusHWuLd MylD 
_MMShutDown 
_TLShutdown 
__QUIT QuitParams 
end 

* Fait patienter 1 'utiJ i sarenr, 

* appelle la routine de 

* chargement en memoire puis 

* appelle la bonne 

* routine d' installation. 
Yabon start 

using Data 
using prodos 
using Window 

Wai tCursor 
PushLong £0 
PushLong CPararnLi 

_Newffindow 

Id* l,s 

sta theWindow 

Ida 3,3 

sta theWindow+2 

_SetPort 

jsl ContDefProc 
jsr LoadOne 
PushL ong theWindow 

CloseWindow 
_InitCurscr 
PushLong DAHandle 
Ida filetype 
cmp €$B9 
bne PasCDA 

InsCallCDA 



PasCDA 



PasNDA 



cmp £$B8 
bne PastiDA 

InstallNDA 



anop 

brl 

end 



tuzuialog 



* Charge Je Desk Accessory 

* choisit grace au SysLem LodUei 
LoadOne start 

using Data 
using prodos 
PushWord CO 
PushWord £0 

PushLong £0 

PushWord £0 
PushWord £$5000 
PushLong £fullname 
PushWord £1 
_lnitialLoad 

Pvl iWnrd NfiwTD 

Pull Long DAAddress 

Pnl iWord Direct 
Pull Word DSize 
PushLong £0 
PuxliLvuy DAAddress 
_FindHandle 
PullLong DAHandle 
rts 
end 



Pom's n° 38 



* Routine de gestion des Items. 

Hook start 

using Data 

typing prndns 

using Dialog 

phb 

phk 

plb 

PullLvng Return 
Pull Long ItemHit 
Pull Long DialogPort 
PushLong Return 
plb 

rtl 

end 

* EcriC un message dans la 

* fenetre. 

ContDefProc start 

using Window 
PushWord CIO 

PushWoxd £.20 
MoveTo 
PushLong CMessage 
_UrawString 
rtl 
end 



Comment f aire ? 

GD Vous n'avez pas la disquette Pom's 38 : 

»sp saisissez et sauvegardez la recapitulation 'MOVER' ; 

sous ProDOS 16, depuis lc Finder, par exemple, lancez 

1'application ; 
ra* l'icone sera le losange traditionnel. 

® Vous avez la disquette Pom's 38 : 

dans votre dossier 'Icons', mettez licdne 'Mover' que 
vous trouvez dans le dossier Icone' de la disquette 
Pom's ; 

» maintenant, 1'application Tvlover' a son icone en 
couleurs. 

® Pour essayer : • 

«r Dans le dossier 'Desk.Accs' de la disquette Pom's, vous 
avez un CDA et un NDA ; chargez-les avec 'Mover' : 
plus besoin de redemarrer le GS. . . 







ZPHandle 


ds 




4 


It em J 


dc 


i2'3' 


" Quelques definitions. 


DAHandle 


ds 




A 




dc 


i2'28,265,A0, 






DAAddress ds 




4 






J ID 


Define privdata 




end 








j_ 
ac 


i £ uuztonitem 






* Donncc 


s pour 


la 


fenctre 




Ar~ 

ac 


lh LiGcteurotr 


ButCQIiltGtll 


equ 10 


* de dialogue 








Ar~ 


i o ' n ' 


ScrollBarltem 


equ 13 












sit- 
ae 




St at Text 


eq-u 15 


Dialog 


privdata 






A/* 

ac 




User Item 


equ 20 




using 


Define 








ItcrnDisablc 


cqu $8000 








Item4 


dc 


i?'4' 


end 




Template dr. 




i?'0, 0, 130 




dc 


12' 98,265,110, 












, 400' 






375' 


* Donnees pour le chargement 




dc 




i2'-l ' 




dc 


12'ButtoiiIteni' 


* des outils 






dc 
dc 




i4'0' 
14 'Iteml, 
Item2, Itcm3, 




dc 
dc 
dc 


±4 'Quitter Str' 

i2'0' 

i2'0' 


Tool Tabl e pri vda t a 








ItemA ' 




dc 


iA'O' 


dr. 


i'd' 




dc 




iA ' Item5, 








dc 


1 '14, $0201 ' 








Itemb, Item/, 


ItcmS 


dc 


i2'5' 


dc 


i '16, $0202' 








IternB ' 




dc 


12'28,214, 110, 


dc 


i '18, $0202' 




dc 




i4'Item9' 






239' 


dc 


i '20, $0200' 




dc 




i4'0' 




dc 


12' 


dc 


£ '21, $0200' 














ScrollBarltem' 


dc 


i '23, $0200' 


Iteml 


dc 
dc 




i2'l' 

i2 r 54,2C5, CC, 




dc 
dc 


14'0' 
i2'0' 


end 






dc 




375' 
i2'Duttonltem' 




dc 

dc 


i2'3' 
i4'0' 


* Donnees generales 




dc 




i4'0uvri rStr' 














dc 




i2'0' 


IternB 


dc 


i2'6' 


Data privdata 




dc 




i2'0' 




dc 


i2'12, 15,24, 








dc 




14' 0' 






395' 


WaiLSLring str 'Un instant. 












dc 


i2'UsorItem' 




S.V.P. ' 


Item2 


dc 

dc 




12' 2' 

12*72,265,64, 




dc 
dc 


i4'W 
i2'0' 


MyZP ds 


2 








375' 




dc 


i2'0' 


MylD ds 


2 




dc 




12 ' BuLLonlLem ' 




dc 


iA'O' 


ROMZP ds 


2 




dc 




i4'FermecStr' 


Iteml 


dc 


i2'7' 


New ID ds 


2 




dc 




12' 0' 




dc 


12' 28, 15,110, 


Di rect ds 


2 




dc 




i2'0' 






215' 


DSi ze ds 


2 




dc 




i4'0' 




dc 


12'UserItem' 



Pom's n° 38 



dc 

dc 

dc 

dc 

XtemB dc 
dc 

dc 
dc 

dc 

dc 
dc 

Item* dc 
dc 

dc 

dc 
dc 
dc 
dc 

TypcLi st dc 

OuvrirStr str 
FermerStr str 
LecteurStr str 
QuicterStr str 
Prompt str 



Vtfi aiunStr str 



Return ds 
ItcmHi t ds 
DialogPort ds 

end 



* Donnees pour la 

* ff>net.re d'attente 

Window privdata 



t4'0* 
i2'0' 
i2'0' 
14'Q' 

12'8' 

i?'0, 15, 12, 
395' 

i2'UserItem' 

i4'0' 
i2'0' 
i2'0' 
i4'0' 

12'9' 

i2'115,15,130, 

395' 
i2'StatText+ 

ItmuDisable ' 
i4'VersionStr' 
i2'Q' 
£2'0< 
iA'O 1 

il '2,$B9, $B9' 
'Ouvrir ' 

'Fermer' 

'Lecteur ' 
'Quitter ' 

' Chn i s ? ssP7 tin 
accessolre de 
bureau ' 

'Version 
VF-1.2 
(C) 1983 , 
Fred. Rozay ' 

4 
4 
4 



ParamList dc 

dc 

dc 
dc 
dc 
dc 
dc 
dc 
dc 
dc 
dc 
dc 

dc 

dc 

dc 
dc 



i2'ParamEnd- 
ParamLi3t r 

i2'%00100000 
O11O0000' 

±4'0 ' 

i4'0' 

±2'Q, 0,0,0' 

i4'0 » 

12'0, 0' 

i2'0,0' 

IZ'0,0' 

i2'0,0' 

£2'0,0' 

14'0' 

12' 0' 

iA'O' 

14 '0 ' 

i4' 

ContDefProc' 



dc 

dc 

ParamEnd anop 
Massage str 



thcWindow ds 

end 



12' 94, 1 00,116, 

SUV 
14'-1 ' 
i4'0' 



'Vevill cz 
patienter 
qvelquQs 
petites 
secondes. . 



* Donnees pour les appels 

* a froDOS/16 
prodoa privdata 



QuitParams anop 

dc 

HeplyRec anop 
Good ds 

flletype ds 
auxfltyp ds 
fl lename ds 
fullname ds 

end 



ib'U' 



2 

2 

2 

16 

128 



Fichier 'MACS' 

MACRO 
Slab CtlStartUp 
slab Idx £$0210 

jsl $E10000 

MEND 

MACRO 
Slab CtlShutDown 
SLab Idx £$0310 

jsl $E10000 

MEND 

14ACRO 
Slab DesxStartUp 
slab Idx £$0205 

Jsl $E1000Q 

MEND 

MACRO 

Slab DesxShutDown 

Slab Idx £$0305 

jsl $E10000 

MEND 

MACRO 
Slab InstallNDA 
Slab Idx £$0E05 

Jsl $£10000 

MEND 

MACRO 
Slab _lnstallL'UA 
Slab Idx f.$0F05 

jsl $E10000 

MEND 

MACRO 
slab __UialogStartUp 
Slab Idx £$0215 

jsl $E10Q00 

MEND 

MACRO 



Slab _DialoijShutDovn 
Slab Idx £$0315 

jsl $E10000 

MEND 

MACRO 
Slab _F.MStart(lp 
Slab Idx £$0206 

jsl SE10000 

MEND 

MACRO 
Slab _EMShutDown 
Slab Idx C$0306 

jsl $E10000 

MEND 

MACRO 
Slab __I,FStartUp 
Slab Idx £$0214 

jsl $E10000 

MEND 

MACRO 
slab _LEShutDown 
Slab Idx £$0314 

jsl $E10000 

MEND 

MACRO 
slab _InitialLoad 
Slab Idx £$0911 

jsl SE10000 

MEND 

I1ACRO 

&lab _TLStartUp 

Slab Idx £$0201 

jsl $E10000 

MEND 

MACRO 
Slab _TLShutDown 
Slab Idx £$0301 

jsl $E10000 

MEND 

MACRO 
Slab LoadTools 
blab Idx £$OE01 

jsl $E10000 

MEND 

MACRO 
Slab _MMStartUp 
slab Idx £$0202 

jsl SE10000 

MEND 

MACRO 
slab _MMShutDown 
blab Idx £$0302 

jsl SE10000 

MEND 

MACRO 
Slab _Nt?wHandlf? 
Slab Idx £$0902 

jsl $E10000 

MEND 

MACRO 
Slab _Di spospHandle 
Slab Idx £$1002 

jsl $E10000 

MEND 

MACRO 
Slab _FindHandle 
Slab Idx £$1A02 

jsl $E10000 

MEND 

MACRO 
Slab QUIT sparams 



20 



Pom's n° 38 



Slab jsl $E100A8 

dc i2"$29" 

dc 14"sparams" 

MEND 

MACRO 
Slab QDStartUp 
slab ldx £$0204 

jsl $E10000 

MEND 

MACRO 
Slab _QD5hvtDown 
Slab ldx (.$0304 

jsl $E10000 

MEND 

MACRO 

slab _pastattos 
Si ah ldx f.$0fiQ4 

jsl $E10000 

MEND 

MACRO 
slab _clearScreen 
Slab ldx £$1504 

jsl $E1COOO 

MEND 

MACRO 
Slab _SetPort 
Slab ldx £$1B04 

jsl $E10000 

MEND 

MACRO 

Slab _MoveTo 
Slab ldx £$3A04 

jsl $E10000 

MEND 

MACRO 

slab _5howCursor 
slab ldx C$9104 

jsl SE10000 

MEND 

mcRO 
slab _setrorecolor 

Slab ldx £$A004 

jsl $E10000 

MEND 

MACRO 
Slab SetBacKColor 
Slab ldx £$A204 

jsl $E10000 

MEND 

MACRO 
Slab _DrawString 
Slab ldx F.SA504 

jsl $Z1QQQQ 

MEND 

MACRO 

slab _mlccursor 

Slab ldx f.$CA04 
jsl $E10000 
MEND 
MACRO 

slab _5F5tartup 
slab ldx £$0217 

jsl $E10000 

MEND 

MACRO 
Slab _SFShvtDown 

Slab ldx £$0317 

jsl $E10000 
MEND 
MACRO 
Slab SFPG&tFile 



Slab ldx £$0B17 
jsl $ElO000 
MEND 

MACRO 

slab _WindStartUp 
slab ldx £$020E 

jsl $E10000 

MEND 

MACRO 
sldb _WlndShutDown 
Slab ldx £$030E 

jsl SE20000 

MEND 

MACRO 
Slab NewWindow 
Slab ldx £$090E 

jsl $E10000 

MEND 

MACRO 
Slab _CloseWindow 
Slab ldx £SOBOE 

jsl SE1QQQQ 

MEND 

MACRO 

Slab pulllong saddrl, Saddr2 
Slab ANOP 

AIF C:Saddrl=0, .a 

AIF C:saddr2=0, .b 

LCLC SC 
SC AMID &addrl,l,l 

AIF "sC»=» 0n , .zeropaqe 

pull word saddrl 

sta saddr 2 

pvllword saddrl +2 

sta Saddr2t2 
MEXIT 
.a 

pull wvid 
pull word 
MEXIT 
.tj 

pull word Saddrl 
pull word Saddrl +2 
MEXIT 
. zero page 

Idy LsaddrZ 

pvllword Saddrl, y 

Idy tsaddr2+2 
pull word Saddrl, y 

MEND 
MACRO 

Slab pull word SSYSOPR 
6 lab ANOF 
pla 

AIF c ; &SYSOPR=0, . mid 
sta 6SYS0PR 
.end 
MEND 
MACRO 

Slab pushloity Saddi, SuffseL 

Slab ANOP 
LCLC SC 
LCLC SREST 

SC AMID Saddr, 1, 7 
AIF "6C"~"£ ", .immediate 
AIF "SC"="°", .zeropage 
AIF C: soffsct-O, .nooffoct 
AIF "soffset"="s", .stack 
pushword Saddr+2, Soffsat 
pushword saddr, Soffset 
MEXIT 



.nooffset 
pushword &addr+2 

pushword Saddr 

MEXIT 

.immediate 

SREST AMID Saddr, 2,L: Saddr-1 
dc I1'$F4 ',12' (SREST) u 16' 
dc II 'SF4 ',12 'SREST' 
MEXIT 

. stack 

pushword &addr+2, s 

pushword &addr+2, s 

MEXIT 
. 7.p rnpage> 

Idy £&of£set+2 

pushword saddr, y 

Idy tioffsot 

pushword saddr, y 

MEND 

MACRO 

Slab pushword SSYSOPR 
Slab ANOP 

AIF CZSSYSOPR=0, 

LCLC £C 
SC AMID "SSYSOPR", 1,1 

AIF ("SC"="£") .AND. (S'.LONGA), 
. Immediate 

Ida ssysopr 
pha 

MEXIT 
.b 
pha 
MEXIT 

.immediate 

LCLC SREST 

LCLA &BL 
SBL AS E ARCH "SSYSOPR", •' ", J 

AIF SBL>0, . a 
SBL SETA L:SSYS0PR+1 
.a 

SREST AMID "&SXSQPR", 2, &BL-2 

dc- I1'$F4 ',12' SRF.ST' 

MEND 

MACRO 
Slab str Sstring 

Slab dc il 'l:sstring' ,c'&string' 

MEND 

MACRO 
Slab _QDAuxStartup 
Slab ldx £40212 

jsl SE1UUVU 

MEND 

MACRO 
Slab _QDAuxShutdown 
Slab ldx £$0312 

jsl SE10000 

MEND 

MACRO 
Slab _WaitCursor 
Slab ldx £$0A12 

jsl SE10000 

MEW 

Fichier 'BUILD' 



as ml mover . src keep= mover 
filet ype mover si 6 



Pom's n° 38 



21 



Recapitulation 'MOVER' 

Apres avoir saisie ce code sous momteur, faites ! 
create MOVER,i$b3 
puis : 

bxave MOVER,a$20Q0,l$AQ0,t$h3 



2000:04 


00 


00 


00 


oo 


00 


00 


00 


C6 


05 


00 


00 


00 


OA 


04 


01 


2010:00 


00 


01 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


no 


00 


no 


2020:00 


00 


01 


00 


00 


00 


00 


00 


2C 


00 


40 


00 


20 


20 


20 


20 


2030:20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


20 


204Q-.F2 


26 


05 


00 


00 


4B 


A3 


7B 


80 


09 


03 


A2 


01 


02 


22 


00 


2050:00 


El 


F4 


00 


00 


A2 


02 


02 


22 


00 


00 


El 


68 


8D 


OB 


03 


2060 :F4 


00 


00 


F4 


00 


00 


F4 


00 


00 


F4 


00 


07 


AD 


03 


03 


48 


2070:F4 


01 


CO 


F4 


00 


00 


F4 


00 


00 


A2 


02 


09 


22 


00 


00 El 


2080: 68 


8H 


00 


80 


IS 




68 


8S 


02 


80 


1 7 


03 


A7 


00 


85 


04 


2090:F4 


00 


00 


A2 


04 


06 


22 


00 


00 


El 


68 


DO 


14 


AS 


04 


48 


20A0:F4 


80 


00 


F4 


00 


00 


AD 


OB 


03 


48 


A2 


04 


02 


22 


00 


00 


20B0:E1 


A5 


04 


18 


69 


00 


03 


48 


F4 


FF 


00 


F4 


00 


00 F4 


80 


20CO:02 


F4 


00 


00 


F4 


C3 


00 


AD 


OB 


03 


48 


A2 


06 


02 


22 


00 


20DO: 00 


El 


F4 


OA 


00 


F4 


14 


00 


A2 


04 


3A 


22 


00 


00 


El 


F4 


20EO:00 


00 


A2 


04 


A2 


22 


00 


00 


El 


F4 


OF 


00 


A2 


04 


r n 

AO 


22 


?OF0:O0 


on 


F.I 


F4 


no 


00 


F4 


F6 


02 


A2 


04 


A5 


22 


00 


00 


El 


2100:A2 


05 


02 


22 


00 


00 


El 


F4 


00 


00 


F4 


DC 


02 


A2 


01 


OE 


2110:22 


00 


00 


El 


F4 


DD 


DD 


A2 


04 


lb 


22 


00 


00 


El 


AD 


OB 


2120:03 


48 


A2 


0E 


02 


22 


00 


00 


El 


AD 


OB 


03 


48 


ft c 

Ad 


ft j> 
04 


18 


2130:69 


00 


04 


48 


A2 


10 


02 


22 


00 


OO 


El 


AD 


OB 


UJ 


1 a 


A5 


2140: 04 


18 


69 


00 


05 


48 


A2 


14 


02 


22 


OO 


00 


El 


/i i 
n£ 


it 


02 


21 50:22 


00 


00 


El 


AD 


OB 


03 


48 


A2 


15 


02 


22 


00 


00 


CT 

El 


AD 


21 60: OB 


03 


48 


AS 


04 


18 


69 


00 


06 


4 8 


A2 


1 7 


02 


ec 


nn 

uu 


uu 


21 70: El 


A2 


04 


CA 


22 


00 


00 


El 


A2 


04 


91 


22 


00 


00 


El 


t n 


2180:64 


00 


F4 


23 


00 


F4 


00 


00 


F4 


50 


04 


F4 


00 


UU 


cvt 


nn 
UU 


21 90:00 


F4 


00 


00 


F4 


2F 


04 


F4 


00 


00 


F4 


21 


03 


F4 


00 


00 


21A0:F4 


9C 


02 


F4 


00 


00 


F4 


30 


05 


A2 


17 


OB 


22 


nn 
uu 


nn 
uu 


El 


21 BO: AD 


30 


05 


DO 


6A 


A2 


1 7 


03 


22 


00 


00 


El 


A2 


15 


03 


22 


21 CO : 00 


00 


El 


A2 


14 


03 


22 


00 


00 


El 


A2 


12 


03 


07 

C£ 


on 
uu 


00 


21 DO: El 


A2 


10 


03 


22 


00 


00 


El 


A2 


OE 


03 


22 


00 


nn 

UU 


c t 


A2 


21E0: 05 


03 


22 


00 


00 


El 


A2 


06 


03 


22 


OO 


00 


El 


H£ 


rid 
UH 


fi - 
UJ 


21F0 : 22 


00 


00 


El 


AD 


1 7 


03 


48 


AD 


15 


03 


48 


A2 


no 
U£ 


i n 
1 u 


22 


2200:00 


ft n 

00 


El 


AD 


Oh 


it i 

0-1 


48 


A? 


ft i 




2? 


n n 


00 


p. 1 


as 


ft i 

II 1 


2210:03 


22 


00 


00 


El 


22 


A8 


00 


El 


29 


00 


2A 


05 


UU 


nn 
uu 


At. 


2220:12 


OA 


22 


00 


00 


El 


F4 


00 


00 


F4 


00 


00 


F4 


00 


00 


F4 


2230:A8 


04 


A2 


0E 


09 


22 


00 


CO 


El 


A3 


01 


8D 


26 


f\ r 

U3 


A J 


03 


2240 :8D 


23 


05 


A2 


04 


IB 


22 


00 


00 


El 


22 


CI 


02 


ft ft 

uu 




48 


2250:02 


AD 


28 


05 


48 


AD 


26 


05 


48 


A2 


OE 


OB 


22 


no 
UU 


UU 


El 


2260:A2 


04 


CA 


22 


00 


00 


El 


AD 


IB 


03 


48 


AD 


19 


n 3 


a a 

h a 


AD 


2270:32 


05 


C9 


B9 


00 


DO 


07 


A2 


05 


OF 


22 


00 


00 


pi 


CQ 
v 5* 


B8 


2280 : 00 


DO 


07 


A2 


05 


0E 


22 


00 


00 


El 


82 


F2 


FE 


r H 


UU 


00 


2290 :F4 


00 


00 


F4 


00 


00 


F4 


00 


00 


F4 


00 


00 


F4 


no 
uu 


JU 


T H 


22 AO: 00 


00 


F4 


4 6 


05 


F4 


01 


00 


A2 


1 1 


09 


22 


00 


n ft 

UU 


pi 

r. r 


c o 

tin 


22B0:OD 


OF 


03 


68 


8D 


ID 


03 


60 


8D 


IF 


03 


68 


3D 


11 


03 


fa 
DO 


22C0 : 8D 


13 


03 


F4 


00 


00 


F4 


00 


00 


AD 


IF 


03 


48 


AD 


ID 


03 


2200:48 


A2 


02 


1A 


22 


00 


00 


El 


68 


3D 


19 


03 


68 


8D 


IB 


ft 3 
UJ 


22E0 : 60 


8B 


4B 


AB 


68 


8D 


9C 


04 


68 


3D 


9E 


04 


68 


3D 


AO 


04 


22F0 : 68 


8D 


A2 


04 


68 


8D 


A4 


04 


68 


3D 


A6 


04 


AD 


SE 


04 


48 


2300: AD 


9C 


04 


48 


AB 


6B 


F4 


OA 


00 


F4 


14 


00 


A2 


04 


3A 


22 


2310: 00 


00 


El 


F4 


00 


00 


F4 


F6 


04 


A2 


04 


A5 


22 


00 


00 


El 


2320 : 6B 


06 


00 


0E 


00 


01 


02 


1 


00 


02 


02 


12 


00 


02 


02 


14 


2330: 00 


00 


02 


lb 


00 


00 


02 


1 7 


00 


00 


02 


12 


55 


6£ 


20 


69 


2340: 6F. 


73 


74 


61 


6F. 


74 


2C 


20 


53 


2E 


56 


2E 


50 


2E 


00 


00 


2350:00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


2360:00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


82 


00 


90 


01 


FF 


FF 


23 70:00 


00 


00 


00 


57 


03 


00 


00 


6F 


03 


OO 


00 


87 


03 


00 


00 


2380 :9F 


03 


00 


00 


B7 


03 


00 


00 


CF 


03 


00 


00 


E7 


03 


00 


00 


2390 :FF 


03 


00 


00 


1 7 


04 


00 


00 


00 


00 


00 


00 


01 


00 


36 


00 


23AO:09 


01 


42 


00 


77 


01 


OA 


00 


32 


04 


00 


00 


00 


00 


00 


00 


2 3 BO. -00 


00 


00 


00 


02 


00 


48 


00 


09 


01 


54 


00 


77 


01 


OA 


00 


23C0:39 


04 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


03 


00 


1C 


00 


2300:09 


01 


28 


00 


77 


01 


OA 


00 


40 


04 


OO 


00 


00 


00 


00 


00 


23E0:O0 


on 


00 


00 


04 


00 


62 


on 


09 


01 


6F 


00 


77 


01 


OA 


00 


23F0:48 


04 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


05 


00 


1C 


00 


24Q0:D6 


00 


o£ 


00 


St 


vo 


00 


00 


00 


00 


00 


00 


00 


00 


03 


00 


2410:00 


00 


00 


00 


06 


00 


0C 


00 


OF 


00 


18 


00 


8B 


01 


14 


00 


2420:00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


07 


00 


1C 


00 


24 30: OF 


00 


6E 


00 


D7 


00 


14 


00 


00 


00 


00 


00 


00 


00 


00 


00 



Liste des fichiers de 'Mover' 
sur la disquette Pom's 38 

Mover . src Source 

Mover Application 

Build Fichier 

d* assemblage 

Macs Fichier de macros 

Icone/Mover Icdne couleurs 

Desk . accs/Alarme _ . Un CDA exemple 
Desk.accs/Horloge . Un NDA exemple 



24 40:00 


00 


00 


00 


08 


00 


00 


00 


OF 


00 


0C 


00 


8B 


01 


14 


00 


24 SO: 00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


09 


00 


73 


00 


24 60: OF 


OO 


82 


00 


8B 


01 


OF 


80 


73 


04 


00 


00 


00 


00 


00 


00 


24 70:00 


00 


00 


00 


02 


38 B9 


06 


4F 


75 


76 


72 


69 


72 


06 


46 


24 80: 65 


72 


60 


65 


72 


ft ~i 

U J 


4C 


65 


63 


74 


65 


75 


72 


07 


51 


IJ 


24 90: 69 


74 


74 


65 


72 


1 1 

££ 


43 


66 


6F 


69 


73 


A fi 

69 


7 j 


73 


A C 

65 


7A 


24A0:20 


75 


6E 


20 


61 


63 


63 


65 


73 


73 


6F 


69 


72 


65 


20 


64 


2430:65 


20 


62 


75 


72 


65 


61 


75 


28 


56 


65 


72 


73 


69 


6F 


6E 


24C0:20 


56 


46 


2D 


31 


2E 


32 


20 


20 


20 


20 


20 


28 


43 


29 


20 


24D0:31 


39 


38 


38 


2C 


20 


46 


72 


65 


64 


2E 


20 


52 


6F 


7A 


61 


24 EO: 79 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


4E 


00 


60 


24F0:20 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


2>U0;UU 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


2510:00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


OO 


00 


2520:00 


00 


00 


00 


00 


ft ft 

00 


ft ft 

00 


CI 


02 


00 


00 


54 


00 


64 


00 


74 


2530:00 


F4 


01 


FF 


FF 


FF 


FF 


00 


00 


00 


00 


2F 


56 


65 


75 


69 


2540: 6C 


6C 


65 


7A 


20 


~> ft 
10 


C 1 

01 


74 


69 


55 


6E 


74 


65 


72 


20 


71 


2550: 75 


65 


6C 


71 


75 




1 J 


20 


70 


65 


74 


69 


74 


65 


73 


20 


2560: 73 


65 


63 


6F 


6E 


£ A 


£ C 

6 J 


73 


2E 


2E 


2E 


Fl 


AO 


00 


00 


00 


2570 :F5 


02 


00 


04 


00 


ft O 

Uj 


ft 2 

UJ 


F5 


02 


00 


19 


00 


OB 


03 


F5 


02 


2580:00 


28 


00 


OB 


03 


r J 


U£ 


00 


3F 


00 


15 


03 


F5 


02 


00 


45 


2590: 00 


1 7 


03 


F5 


02 


ft/) 


Cft 
b£ 


00 


OB 


03 


F5 


02 


00 


33 


00 


OB 


25A0:O3 


F5 


02 


FO 


AF 


uu 


r o 


02 


F5 


02 


00 


B2 


00 


F6 


02 


F5 


25B0: 02 


FO 


Cj 


00 


DC 


n j 

U£ 


r J 


fti 
02 


ft /i 
00 


Co 


00 


DC 


02 


F5 


ft ft 
02 


ft n 
00 


o **r*n • 


nn 

uu 


no 

Uts 


n 3 

UJ 


rr 
r D 


U\£ 


nn 

uu 




nn 

UU 


nn 
'Ja 


03 


F5 


n n 
U£ 


nn 

uu 


t j 


nn 

UU 


£JUU. uts 


ft "3 
UJ 


f J 


ft i 

U£ 


ft ft 
UU 


7 ft 
1 U 


ft 7 


ftO 

Ua 


ft o 
UJ 


f J 


02 


00 


la 


Ut 


ft o 


ft "3 

UJ 


1 t» Cft iTt 

£j£,U :r 3 


ft 1 

U£. 


cn 
r U 


A 1 

H 1 


ft 1 


J u 


f)A 

UH 


r 3 


ft i 
\J£ 


nn 
UU 


44 


01 


c ft 
DO 


UH 


t J 


n i 
U£ 


£ Dt u :r u 


A 

HU 


ft i 


1 IT" 

£t 


ft A 

UH 


P* <i 
e D 


n "i 

U£ 


UU 


Cft 

dU 


if I 


2F 


04 


r j 


ft i 

U/ 


cn 
r u 


c a 

jj 


ICftft . ft\ 1 

£t>uu : ui 


1 1 

m 


ft T 
UJ 


t J 


ft ft 
U£ 


nn 


*1 f, 

3 O 


01 


J 1 


UJ 


F5 


02 


fft 
t U 


J'J 


ft T 
Ul 


/IS* 

'JC 


261 : 02 


F5 


02 


ft ft 

00 


C 


n 7 
1/ -A 




02 


F5 


02 


FO 


5F 


01 


30 


05 


F5 


1 C 1 ft i f\ 1 

2620 : 02 


/in 
00 


£ ft 

62 


ft 1 

01 


1 ft 

30 


UJ 


r j 


02 


ft ft 
uu 


Cf 

bC 


01 


30 


ft c 
UJ 


Fb 


ft ft 
02 


ft ft 
00 


£oJU ;Bv 


01 


l / 


ft 1 
UJ 


— 1 L 
t J 


02 


00 


B4 


ft T 

Ul 


1 J 


03 


F5 


r-t i 
UJ 


uu 


BF 


ft i 

Ul 


1 1: a ft . rtn 
£ 9 U . Un 


ft "2 

UJ 


r j 


ft A 

UH 


ft ft 

UU 


r> a 
U 


m 
ux 


i n 
£n 


ft K 
UJ 


r J 


02 


FO 


- - 


ft i 

Ul 


AG 


ft A 

UH 


£Oju:ro 


ftn 
U£. 


ft ft 
uu 


to 


ft 7 


A 8 
ft c 


U 7 


PC 

r j 


ft ft 
U£ 


n ft 
UU 


F7 


01 


£ 


ft c 

Uj 


PC 

r 3 


Uc 


*1 C Cft . iHfl 

Shnfl : ill) 


rC 


ft 1 


1 D 

£0 


ft c 


f 3 


n ■? 


uu 


ft c 


n i 
U£ 


CI 


02 


r ? 


ft i 

\J£ 


ft ft 

I/O 


ft n 


£ U / U . U£ 


a n 


ft o 
U£ 


t P 


ft y 
U£ 


00 


0D 


ft i 

U£ 


£13 


\JJ 


F5 


02 


UU 




ft ft 
Uc 


£ V 


2680: Ob 


F5 


02 


00 


23 


02 


IB 


03 


Fb 


02 


00 


27 


02 


19 


03 


F5 


1 C fift m fTJ 

20 7\) :U2 


ft ft 

00 




ft ft 

02 


32 


05 


F5 


ft i 

U£ 


Cft 

t 


5a 


02 


46 


ft c 

UJ 


or 

r D 


ft 1 


ft ft 
UU 


2 6 AO : SE 


02 


4 6 


05 


FS 


02 


00 


6C 


02 


OF 


03 


F5 


02 


OO 


70 


02 


26B0-.1D 


03 


F5 


02 


00 


74 


02 


IF 


03 


F5 


02 


00 


78 


02 


11 


03 


26C0:F5 


02 


00 


7C 


02 


13 


03 


F5 


02 


00 


85 


02 


IF 


03 


F5 


02 


26D0:O0 


89 


02 


ID 


03 


F5 


02 


00 


95 


02 


19 


03 


F5 


02 


00 


99 


2 GEO: 02 


IB 


03 


F5 


02 


00 


Al 


02 


9C 


04 


F5 


02 


00 


A5 


02 


9E 


26F0-.O4 


F5 


02 


00 


A9 


02 


AO 


04 


F5 


02 


OO AD 


02 


A2 


04 


F5 


2700:02 


00 


H7 


07 


A4 


04 


F5 


02 


00 


B5 


02 


A6 


04 


F5 


02 


00 


2710 :B8 


02 


9E 


04 


F5 


02 


00 


BC 


02 


9C 


04 


F5 


02 


FO 


CF 


02 


2/20:F6 


04 


F5 


02 


00 


D2 


02 


F6 


04 


F5 


04 


00 


2F 


03 


57 


03 


2730-.F5 


04 


00 


33 


03 


6F 


03 


F5 


04 


00 


37 


03 


87 


03 


F5 


04 


2740:00 


3B 


03 


9F 


03 


F5 


04 


00 


3F 


03 


B7 


03 


F5 


04 


00 


43 


2750:03 


CF 


03 


F5 


04 


00 


47 


03 


E7 


03 


F5 


04 


00 


4B 


03 


FF 


2760:03 


F5 


04 


00 


4F 


03 


17 


04 


F5 


04 


00 


63 


03 


32 


04 


F5 


2770:04 


00 


7B 


03 


39 


04 


F5 


04 


00 


93 


03 


40 


04 


F5 


04 


00 


2780 :AB 


03 


48 


04 


F5 


04 


00 


23 


04 


73 


04 


F5 


04 


00 


E2 


04 


2790 :C1 


02 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


27AO-.00 


00 


00 


00 


00 


OO 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


27BO-.00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


2 7CQ:Q0 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


27DO-.00 


OO 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


27E0:Q0 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


00 


27F0:O0 


00 


00 


00 


00 


00 


00 


00 


00 


OO 


00 


00 


00 


00 


00 


00 



Pom's n° 38 




Oui, e'est un evenement 
capital pour tous les 
Apple // ; les Etats- 
Unis le vivent depuis 
prcs d'un an deja. 

Erie Weyland vous en parlait dans son 
long article du nuiu6ro 34 de Pom's, 
en ajoutant avec regret «...la serie 
TimeOut ne marche. ct ne marchcra 
sans doule jamais que sur la version 
americaine 2.0 d' AppleWorks, et pas 
sur la version francaisc 1.4. Non que 
ccla soit techniquement impossible : 
mais il faudrait alors adapter et traduire 
chacune des applications TimeOut 
piesentes et futures, ce qui reprcscntc 
enormement de travail. L'investis- 
sement est sans doute trop grand pour 
etre rentable... ». 

Ce que ni Apple Computer, ni Claris, 
ni les Beagle Bros eux-memes n'ont 
pu, ni voulu faire, Pom's et un 
programmeur francais l'ont realise. Je 
tiens a saluer le talent exccpiionnel de 
Daniel Lurot, qui a eerit les patches 
nccessaires a AppleWorks 1.4, et 
adapte les logiciels TimeOut. Sans lui, 

tous les utilisateurs francais 
d'Apple Works 1.4 seraieni encore line 
fois restes 'sur le bord du chemin\ 
Sans lui, ct sans le devouement des 
collaborateurs de Pom's. 
Comme vous n'avez peut-etre pas tous 
en memoirc 1 'article d'Eric Weyland, il 
n'est pas inutile de rappeler d'abord ce 
que sont ces logiciels TimeOut. 

Et il m'est agreable de pouvoir vous en 
parlcr, cette fois-ci, non comme de 
quelque lointain mirage, mais sachant : 

✓ qu'ils sont la ; 
%/ qu'ils fonctionnent ; 
%/ qu'ils sont enticrement francises ; 
i/ qu'une documentation fiancaise les 
accompagne. 



TimeOut... 

...ou la voie royale 
pour exalter AppleWorks 

Deux touches magiques 

O -Escape ; vous etes dans 

TimeOut ; 
O Escape : vous etes de retour dans 

AppleWorks. 
... va-ct-vicnt immediai, 6crans 
familiers. 

II 6tait difficile d'imaginer plus simple. 
Vous ne quittcz pas AppleWorks, e'est 
le menu TimeOut qui vient a yous. 
Dans la 'fenetre' qui s'ouvre au milieu 
de l'ccran, la liste des applications 
disponibles. Vous sdlectionnez 
l'applicauon. Celle-ci se charge, et fait 
son travail : r 

S'agit-il de SuperFonts ? Vous 
pourrez imprimer directement vos 
fichiers AppleWorks dans un choix 
extraordinaire dc polices Macintosh, en 
caracteres francais, en faisanl varier la 
taille et le style (italiques, ornbre, 
relief, inverse), a tout moment, meme 
au milieu d'un mot. Pom's propose 
ddja 3 disquettes, regroupant plus de 
100 polices. Trois qualites d'impres- 
sion. Importation d'images HR et 
DHR. Une relouche a votre texte ? 
Faitcs Escape, et vous voila revenu 
dans AppleWorks, dans le tichicr de 
traitcment de texte d'ou vous 6tiez 
partis. Prets a imprimer ? O-Escape, 
vous etes a nouveau dans SuperFonts. 

«" S'agit-il de Graph ? Directement 
de votre tableur, faites O -Escape. 
Solectioiinez Graph : e'est a peine si 
Ton remarque que I'ecran a un peu 
change ; le titre, en haut ; et en bas, 
une ligne d'oplions nouvelles. Ah, 
mais quelies options ! Elles s'ouvrent 



les unes apres les auttes, commc des 
tiroirs (il suffit de cliqucr dessus). Elles 
vous pcrmctient soit de voir a I'ecran, 
soit d'imprimcr ; des graphiques en 
barrets, en sectaurs, en lignes, en barres 
empilees, en aires, en XY. Avec 
legendes ou sans 16gcndcs. Titles* et 
sous-litres. Avec ou sans quadrillage. 
Etc., etc. Voulez-vous retoucher voire 
tableau ? Escape et vous y 6tes. 
Voulez-vous voir comment a change* 
votre graphique ? (3-Escape et vous 
ctcs de retour dans Graph (les options 
choisies ont ete conscrvees). 

S'agit-il dc SideSpread ? Vous 
pouvcz imprimer vos grands tableaux a 
Thorizontale, sans crainte de manqucr 
de place. Vous partez directement du 
tableur, vous faites -Escape. Les 
commandes sont familieres : Imprimer 
Tout ? Lignes ? Colonnes ? Bloc ? 
Faites votre choix, et allez-y. C'est 
tout. Pas de manipulations dedicates, 
pas de manoeuvres piegees. Et pas de 
caracteres hizarres a la place des 6, e, c 
et a ! Vous disposer de deux polices 
francisees, chacune en 8 tailles 
differentes : de quoi lircr des effets dc 
miniaturisation ou de grossissement 
surprcnants. 

w S'agit-il d'UltraMacros ? Deux 
applications TimeOut lui sont 
adjointes : un compilateur (emploi 
instantane, plus besoin de revenir a la 
disquette d'installation pour modifier 
les macros r£sidentes), et Macros 
Options : tous les rcglages 
imaginabics dc la souris ct du curscur, 
et la creation immediate de fichiers 
"Task" : des fichiers de macros prets a 
l'emploi, affectes a une tache 
specifique ; on les demarre d'un menu 
TimeOut sans quitter AppleWorks, ou 
mcmc avant dc bootcr AppleWorks au 
moyen d'un selecteur genre ProSel (car 



Pom's n° 38 



ce sont des fichiers SYS). Ces deux 
applications transferees dans TimeOut 
ont soulagfi l'ancetre, qui n'est nul 
autre que SuperMacroWorks, et ont 
permis (grace a la place recuperet) d'en 
faire un veritable langage de 
prugraiumaliun. SuperMacru Works el 
UltraMacros sont les deux 'chefs 
d'orchestres' sans lesquels il est 
ddsormais difficile d'imaginer un 
AppleWorks ameliore, mais 
UltraMacros est beaucoup, beaucoup 
plus puissant. 

Voila done les grandes vedettes qui 
vous attendent. Ce sont incontesta- 
hlement les 'stars'. Mais il y a aussi 
les seconds rGles, les auxiliaires 
toujours presents et indispensables. II 
n'est pas ndcessaire de les acheter a 
part, ils sont fournis avec les logiciels 
principaux. 

Utilitaires est unc application 
qui permet de 'configurer* Graph, 
SideSpread, SuperFonts et les autres 
(entendez par la : choisir les polices de 
caracteres, les imprimantes, et divers 
autres parametrcs utiles). Cette 
application permet aussi de cr6cr 
instantanement un menu TimeOut 
suppl6rnentaire pour une nouvelle 
application TimeOut. 

<=> Data Converter cree le pont — 
qui manquait a AppleWorks — entre 
donnees du Tableur et de la Base de 
donnees. Grace a ceue application, le 
prcssc-papiers transforme les tableaux 
en base de donnees, et vice versa. Sans 
aucune manipulation panicuiiere, 

c6 Debug offre le controle des 
variables d'UltraMacros, el I'affiehage 
des macros. 



^> Valeurs ASCII donne, par 
exemple pour CtrH, 9 en decimal, 9 
en hexadecimal. 00001001 en bmaire, 
"Tab", et precise qu'a l'ecran e'est un 
"I" en viddo inverse. 

File Status indique I'etat du 
bureau AppleWorks. 

& AWP to TXT transforme les 
fichiers AppleWorks en fichiers 'Text' 
(pratique pour changer de machine ou 
de programme). 



Note : PathFinder lui-mime n'est 
pas une application TimeOut : e'est 
une precieu.se modification 
d' AppleWorks, qui installt directement 
dans le menu Autres activites 
d' AppleWorks les nouvelles options : 
Ajouter un sous-catalogue, Retrancher 
un sous-catalogue, Renommer un 
fichier, Verrouiller un fichier et 
Deverrouiller un fichier. 

D'autres applications TimeOut 
viendront prochaincmcnt s'ajoutcr a la 
liste, au fur et a mesure de leurs 
francisations, et de la traduction de 
leurs documentations. 

Des exemples ? 
pages 16 & 30... 



Le principe 

du fonctionnement 

TimeOut, qui a donn6 son nom a 
I'ensemble de ces applications, est une 
invention d'AIan Bird. C'est un 
programme-noyau (un "kernel" com me 
disent les amdricains) qui s'installe 
dans AppleWorks en modifianl son 
amorcage. Une fois qu'il y est, il n'en 
bouge plus. Quand vous I'aurez installe 
une fois, vous n'aurez plus besoin de 
recommences 

Ce noyau n'est pas lui-meme une 
application TimeOut. Son role est de 
servir 'd'entremetteur' entre 
AppleWorks ct toutes les applications 
TimeOut qu'il pouxra reperer. 



Comment se fait 
cette entremise ? 

• tout d'abord, au demarrage de votre 
AppleWorks. TimeOut va 'ausculter* 
le disque oil se trouvent les 
applications TimeOut, et memoriser 

les noms de toutes les applications 

presentes ; 

• deuxiemcmcnt, a 1'appel du menu 
TimeOut par (3-Escape, il affichera la 
liste ainsi m6morisee, dans laquelle 
vous ferez voire selection ; 

• troisiemement, aussitot apres la 



selection, TimeOut chargcra ct activcra 

l'application choisie ; 

• Quatriemement, par la touche 

Escape, TimeOut vous ramcnera a 

AppleWorks. 

C'est done un geslioimaire, qui doit 
connaltre les parametres d' AppleWorks 
et ceux des applications, et les 
preserver a chaquc appcl pour que vous 
puissiez les retrouver intacts quand 
vous passerez de Tun a 1'autre. 

Quant aux applications, elles partagent 
toutes la faculte d'etre appeldes par 
TimeOut a partir d'ApplcWorks. Selon 
leur degre de complexite, elles feront 
tourner des programmes puissants, ou 
se contentcront de taches relativement 
subalternes. Bien que theoriquement 
elles puissent etre des programmes 
ind6pendants d'AppleWorks, leur 
intcrct est de pouvoir puiser des 
dunnees direetemeiu dans cet immense 
reservoir quest AppleWorks (fichiers 
Traitement de texte. Base de donnees. 
Tableur), pour accomplir des taches 
qu'AppleWorks ne sait pas accomplir 
lui-meme. AppleWorks travaille pour 
elles, ct elles travaillent pour lui (pour 
notre plus grande satisfaction a nous 
autres, les utilisateurs). 

Ccla vous donne, soil dit en passant, 
une idee de l'extreme complexite in- 
terne du fonctionnement de TimeOut : 
la mcmoirc dc f Apple tftant cc qu'cilc 
est, deja AppleWorks (qui est un 
programme enorme) devait fonctionner 
en 'overlay', e'est-a-dire que n'etaient 
appel£s en memoire active que les 
'segments* dont AppleWorks avail 
besoin a un moment donne. Sans que 
vous vous en doutiez, AppleWorks se 
livre continuellement a un jeu de 
'chaises musicales' electronique. 
La-dessus arrivent TimeOut et ses 
applications, qui elles aussi entrent 
dans la danse. Un exercice de haute 
voltige s'organise, ou nul ne doit se 
trouver au mcme moment au meme 
endroit, tout en sachant exactement a 
quel instant 'tendre la main au 
trapdziste d'en face'. Mais 
rassurez-vous, tout cela est, comme 
ont dit. 'transparent pour rutilisateur* : 
l'intcgration est parfaitemcnt 
harmonieuse, et TimeOut se conduit 
avec des commandes simples et 
naturellcs. 



24 



Pom's n° 38 



TimeOut : configurations 

Lcs applications TimeOut peuvent etre configurees pour fonctionner avec VOTRE materiel. 
Vous pourrez choisir 48 imprimantes, parmi lesquelles : 



Apple DMP 
Epson AP 80 
Epson LQ 1500 
Epson MX100 
Mannesmann Spirit 80 
Oki 83 



Apple ImageWriter 
Epson FX 80 
Epson LX 80 
Epson RX 80 
NEC PC 8023 



Apple ImageWriter II 
Epson LQ 800 
Epson MX 70 
Mannesmann 160 
NEC PC 8025 
Oki 92 



Oki 84 

55 interfaces vous sont proposees, parmi lesquelles : 

Serie //c Serial to Parallel //c Has port integre 

Communications Apple Parallel Apple Serie 

Epson APL Graphicard Grappler 

Grappler Serial Microbuffer II Versacard Serial 



Apple Scribe 
Epson LQ 1000 
Hpson MX 80 
Mannesmann 180 
Oki 82 
Oki9'i 



Apple Centronics 
Apple SSC 
Grappler 4- 

Versacard Parallel 











:: 



UltraMacros et 
SuperMacroWorks 
sont un cas a part ! 

Un mot tout de suite pour rassurcr lcs 
possesseurs de SuperMacroWorks : 
celui-ci est compatible avec TimeOut 
ct la plupart dc scs applications 
(Graph, SideSpread, Superfonts, etc.). 
II ne rest evidemment pas avec 

TO.Compiler, TO.Macros Options ct 
TO. Debug, qui sont reserves a 
UliraMacros. 

Les macros de SuperMacroWorks et 
d'UltraMacros fonctionnent meme a 
l'intdricur dc TimeOut et de ses 
applications ! On peut parfaitement 
saisir au clavier, par exemple, d'une 
part la serie de commandes qui mene 
d'un fichier tahleur dans AppleWorks 
jusqu'a son affiehage sous unc forme 
graphique donnee dans Graph, et d'autre 
part la serie de commandes qui ramene 
au point de depart. En deux touches 
seutement on pourra ainsi faire le 
va-et-vient entre un tableau et sa 
repr6sentation graphique ! On croit 
rover. . . 

Mais alors, pourquoi UltraMacros ? 
Parcc que e'est autre chose. 
UltraMacros est un vrai langage de 
programriiaiion, dans lcquel on a inclus 
SMW par souci de continuity. C'est, 
en quelque sorte. une 'flew' faite aux 



habituds de SMW, qui ne seront 
quasiment pas deranges dans leurs 
habitudes. En gros, on peut dire que la 
souris fonctionne de la meme iiiaiiiere 
(sauf qu'ellc est vraiment reliable, en 
dcplacement et en *clic'), et que la 
saisie des macros au clavier est 
pratiquement la meme. Mais la ou 
SMW avait une fonction 
conditionncllc rudirncntaire liee au seul 
caractere sous lie curseur, et une unique 
variable numdrique non directement 
accessible, UltraMacros a urte 
authentique fonction if-then-else 
appliquable a 26 variables numeriques 
ct 10 chaines-tcxte dffinissables de 
facon independante et varie*e. D'ailleurs, 
une gamme entiere de nouvelles 
instructions est conc^ue pour 
fonctionner avec ces variables comme 
parametres. Ajoutez-y les instructions 
Peek, Poke ct mcme Call pour les pro- 
grammeurs les plus audacieux, et vous 

aurez une petite idee de ce qu*Ultra- 

Macros est capable d'accomplir ! 



Une vue 
cTensemble 

Lc trait genial d'AIan Bird (crcatcur de 
TimeOut) est d'avoir congu, des le 
depart, un ensemble a la fois 
homogene ct ouvcrt. 
• Homogene, puisqu'il repose sur un 
gestionnaire unique, le noyau 



TimeOut. La regie du jcu a ainsi 6l6 
fixde une fois pour toutes. 
• Ouvert, parce qu'il n'y a pas de limite 
au nombre des applications que 
TimeOut pourra appeler, a condition 
qu'elles rcspcctenl cette regie du jeu. 

Mais, me direz-vous, cela fait 
beaucoup de monde a loger dans mon 
Apple. Comment vais-je y arriver ? 
Rassurcz-vous, il n'y aura pas dc 
bousculade, tout ce monde n'enurera 
dans voire Apple que dans la limite de 
la memoire disponible. 

Avez-vous eu la prevoyance (comme 
vous l'a recommandc maintcs fois 
Jean-Yves Bourdin) de renforcer la 
capacite-memoire de voure Apple ? 
Parfait. Les applications TimeOut 
pourront y scjoumer a plusieurs, et etre 
appelees quasi-instantancmenL Sinon ? 
Elles paticntcront dans la sallc d'altente 
(le "disque d'applications TimeOut"), et 
le noyau TimeOut les appellcra et les 
fera passer une a une. 

Les priviidgids seront dvidemment les 
possesseurs de GS : la memoire de 
celui-ci a ete* dimensionnee en fonction 
d'appiications graphiques tenement 
voraces par rapport a I'appdtit de 
TimeOut que vous en aurez largement 

assez pour loger enticement en RAM. 

par exemple : AppleWorks tout entier, 
UltraMacros, SuperFonts et la totalite 

de ses polices de caracteres. plus 



Pom's n° 38 



25 



quclques autrcs applications. II vous 
restera quand-meme un Bureau de 
plusieurs centaines de Ko. 

Mais, meme dans la pire des 
hypotheses, les applications TimeOut 
fonctionncront quand-mcmc : la ou 
AppleWorks va, TimeOut va aussi. Au 
prix, n£anmoins, de frequents appels 
aux lecteurs de disques. Vous voila 
prevenus. La gestion des disques a et£ 
amelioree dans une reeente version 
TimeOut (celle, justemcnt, que diffuse 
Pom's) : une nouvelle option de 
TO.Uulitaires pcnnel de creer a lout 
moment, sans quitter AppleWorks, un 
menu TimeOut supplementaire, li6 a 
un disque d'applications donne : 
decidez-vous, par exemple, en cours de 
travail d'utiliser Graph alors que vous 
avicz charge SupcrFonts, ct que vous 
disposez de peii de memoire ? En 
quelques secondes, par appel a des 
menus clairs, SupcrFonts est 
rcconduil, et Graph le remplace. 

Le 'miracle' 
des TimeOut 
en fran^ais 

Dc cc qui prdcede vous aurcz deja 
compris que TimeOut, ses 
applications, UltraMacros et 
AppleWorks vivent en Stroke 
symhiose. TimeOut 6tait con^u au 
depart pour la version am&icaine 2.0 et 
la gerait compte tenu de toutes ses 
adresses internes spfecifiques. Dans la 
version franpise 1.4 U' AppleWorks, 
toutes ces adresses sont decalees ou 
modififies. Pour reprendre ma 
m6taphore de 1'exeicice de haute 
voltige, imaginez un trapeziste qui 
s'61ancerait vers son partenaire sans 
avoir 616 prevenu qu'on a raliongd h 
son insu les courroies de son trapeze. . . 
C'est exactement ce qui advient si Ton 
essaie de faire tourner un TimeOut 
americain sur un AppleWorks fran^ais. 

11 fallait done : 

• modifier AppleWorks ; 

• modifier TimeOut ; 

• modifier les applications TimeOut ; 

• et r^concilier, dans le nouvel 
ensemble obtcnu, toutes les 
adresses internes. Je ne parle pas de 



la francisation, qui vieni s'y ajouter 
par-dessus le marche. 

Tachc impossible ? Quasiment, a 
moin.s d'un miracle... C'est justement 
ce qui s'est produil par un heureux 
concours de circonstances ; Daniel 
Lurot, le programmeur qui a adapte 
TimeOut, n'avait nullement ce projet 
en tete au depart II ignorait meme tout 
de TimeOut. et avait com man de aux 
Beagle Bros un exemplaire dc 
SupcrMacroWorks. La desu'n a voulu 
qu'on lui envoie par erreur une 
exemplaire d'UltraMacros, evidemment 
incompatible avec AppleWorks 1.4. 

Or, il se trouve que Daniel avait ddja, 
pour satisfaire sa curiosity enticement 
disassemble AppleWorks 1.4. Oui, 
oui, vous avez bien lu (5a represente 
deux classeurs pleins de code, d'une 
epaisseur de quelques 15 cenumfctrcs). 
II en connaissait done ddja tous les 
tours et detours ; adapter UltraMacros 
ne lui a nullement paru ctrc une tachc 
surhumaine, et il a meme essaye 
diverses fagons de s'y prendre. Puis il 
en a modestement informc l'autcur 
Randy Rrandt, lequel lui a aussitot 
recommandd de me contacter. Ce qu'il 
fit. 

A partir de la, ce qui avail 6l6 un 
heureux coup du sort individuel s'est 
transforme en travail d'equipe, et un 
projet plus ambitieux prit corps : pour- 
quoi ne pas adapter, franciser et diffu- 
ses k l'intention de tous les utiiisatcurs 
d' Apple Works 1.4, les plus intdrcs- 
santes des applications TimeOut ? Pari 
tenu... 



Dans les revues americaines consacrees 
aux Apple //, on voit en double page 
deux publicites irbs eloquentes : 

• la premiere est de Claris 
(distribuieur d'Apple.Works). F.lle 
montre une rutilante Porsche 
rouge... sur quatrc parpaings en 
guise de roues. I.e. texte dit «I1 y a 
encore certains possesseurs d' Apple 
qui n'emploient pas AppleWorks» ; 

• la deuxjfcme est des Beagle Bros. 
On y voit quatre magnifiques roues 
a jantes de course,., sans ricn 
par-dessus. Le texte dit «I1 y a 
encore des utiiisatcurs 
d'AppleWorks qui ne connaissent 
pas TimcOut». 

La revue Pom's n'e^t ni Claris, ni les 
Beagle Bros, mais grace a elle, el a 
I 'esprit Apple de son equipe, le bolide 
complet — et francisd — est k voire 
disposition. Insiallez-vuus au volant : 
croyez-moi, l'exp£riencc en vaut la 
peine ! Je vous souhaite bonne route, 
et beaucoup dc plaisir. 



Pom's vous proposera bientot — en 
exclusivite egalemeni — FileMaster 
(gestion complete de fichiers sous 
AppleWorks), Desk! 00 Is (une 
dizuine d'ueczdsuires de bureau, y 
compris un cryptage de fichiers), 
MacroTools (de puissantes macros 
pour AppleWorks). 

Pour les prochains numeros, Dimitri 
Geystor vous prepare des utilitaires 
dom il a le secret, sous UltraMacros... 

a 



Tarif des logiciels en fran^ais — avec manuels 
fran^ais — pour AppleWorks 1.4 

Graph : 850 F TTC (carte Joker : 765 F) 

SuperFonts (comprenant une quarantaine de polices de 
caracteres) : 800 F TTC (carle Joker i 720 F) 

UltraMacros : 650 F TTC (carte Joker : 585 F) 

SideSpread : 550 F TTC (carte Joker : 495 F) 

PatliFinder : 150 F TTC (les 4 TimeOut inclus sont utilisables 
si vous avez d6jct un TimeOut, UltraMacros par exemple) 



26 



Pom's n° 38 




(Pascal Cantot 




Source du programme 'PRIME FACTOR' 

Assembleur Merlin-Pro 

1 ******************************** 

2 * * 

3 * PRIME FACTOR * 

4 * * 

5 * Far P. CANTUT, 20/05/88 * 
€ • * 
7 a************* ***************** 



10 Nl 




$0 


; Nombre de 32 bits a tester 


11 ADRTBL 




$4 


Tndex vers PREMTBL 


12 N2 




$6 


; Diviseur trouve (16 bits) 


13 R 




$8 


; Reste (0 si non premier) (lb bits) 


14 USRJMP 




$A 


/Vcctcur pour fonction V$R() 


15 SQRN1 




$50 


; Racine (par exces) de Nl (16 bits) 


16 AUG 




$A5 


;Rf>grstre flottant secondaire 


17 RESULT 




$EB 


;Resultat division (32 bits) 


18 TEMP 4 




$FC 


; Temporaire (32 bits) 


19 








20 PRIME 




$2000 


;URG de PRIME FACTOR 


21 PREMTBL 




PRIME+S100 


;Adresss r.ahle nbres premiers 


22 








23 ERROR 




$0412 


;Affiche erreur X 


24 G1VAYF 




$E2F2 


;A,Y -> FAC 


25 GET ADR 




$E752 


; INT (FAC) -> $50 


26 MAF 




$EB66 


;FAC -> ARG 


27 SQR 




$EE8D 


; SQR (FAC) -> FAC 


28 








2$ ******************************** 


30 








31 


EXP 


OFF 




32 








33 MOV 


MAC 




;MOV& byte 


34 


LDA 


§1 




35 


STA 


§2 




36 


<<< 






37 








38 MOV 4 


MAC 




;MOVe 4-byt& word 


39 


MOV 


SUS2 




40 


MOV 


§1+T;§2+1 




41 


MOV 


§1+2; §2+2 




42 


MOV 


§1+3; §2 *-3 




43 


«< 






44 








45 SUBD 


MAC 




?S(JB&tn*ct Double-byte (16 bits) 


46 


LDA 


§1 




47 


SEC 






40 


SBC 


§2 




49 


STA 


§3 




50 


LDA 


§1+1 




51 


SBC 


§2+1 




52 


STA 


$3+1 





PRIME FACTOR est un petit 
programme machine qui peut, 
en quelques secondes — au pire 
— determiner les diviseurs 
premiers d'un nombre compris 
entre 2 et 1 073 741 824 (2* , 
soit environ un milliard). 

Les applications sont nombreuses : 

* determiner si un nombre est 
premier ou non ; 

■ decomposition d'un nombre en 
produit de facteurs premiers (l'objet 
de DECOMPOSER), afin de 
simplificr une fraction, do 
determiner 1c Plus Grand Commun 
Diviseur de deux nombres, etc. ; 

• calcul trcs simple et tr&s rapide dc 
tables de nombres premiers : j'ai 
ainsi mis sur une disquette tous les 
nombres premiers jusqu'a 580 000, 
soit 47 600 nombres. Le calcul a 
pris 8 heures. En Basic, un calcul 
identique m'avait pris 48 heures ! 
Autre example : il met 6 secondes 
seulement pour trouver que 
42 841 001 est premier. 

De plus, le programme en lui-meme 
pr£sentc un inteVet p£dagogiquc, 
puisqu'il comprend une routine de 
division entiere 32 bits par 16 bits, 
ainsi qu'unc routine de conversion d'un 
nombre flottant en entier 32 bits... 



Mode (Temploi 

PRIME .FACTOR s'utilise simple- 
ment a pauir de r Applesoft par la 
commandc Y = USR (X> (ou PRINT 
USR(X)), ou X est le nombre entier & 
tester (il doit etre compris entre 2 et 
1E9). Y conticnt alors lc plus petit 
diviseur premier de X, ou zero si 
X est premier. Notons que 
PRIME .FACTOR fonctionnera pour 



Pom's n° 38 



27 



X compris enire 1E9 et 4E9 (plus 
exactemcnt : 23?-), mais seulement si 
X admet un diviseur inferieur a 
32 768. Dans le cas contraire, un 
"OVERFLOW ERROR" est envoye. 

Examples : 

USB (12) donne3 
USR (11) donnc car 1 1 est premier 
USR (2098 9) donne 139 car 20989 = 
139*151 

USR{42841001) donncOcarX 

est premier 
USR(3343549127) donne 31573 

car X = 31573*105899 
USR(2840783401) donne 

OVERFLOW ERROR, car 

X>lE9etY = 53299*2 



Principe 



PRIME .FACTOR utilise pour ses 
calculs une table de tous les nombres 
premiers compris entre 2 et 32 768 
(PREMTBL), soit 3 512 cntiers codes 
sur 2 octets. Cette table DOIT etre 
chargee 256 octets aprcs le debut de 
PRIME.FACTOR (e'est-a-dire S2100 
si PRIMEPACTOR est assemble en 
S2000) avant loute utilisation de 
PRIME .FACTOR. 

PRIME .FACTOR se lance depuis le 
disque par BRUN ou — (prononcer 
"smart RUN"). II revalorise alors la 
commando "USR" du Basic et rend la 
main au programme appelant. 

Lors de chaque appel Y = USR(X), 
l'argument X est place dans un 
accumulateur flottant, FAC. 
PR I ME , FACTOR le convertit alors 
en nombre entier sur 4 octets, puis le 
divise successivement par tous Ics 
nombres de sa table compris entre 2 et 
SQR(X), jusqu'a ce que le reste de la 
division soit nul. Auquel cas, le 
diviseur est retoume' dans FAC, et 
("Applesoft se charge ensuite d'affecter 
le contenu de FAC a Y. Si aucun 
diviseur n'est trouve, alors e'est qui 
est place* dans FAC, puis dans Y. 
Enfin, si PRIME .FACTOR arrive a la 
fin de sa table (e'est-a-dire si X > 
32768 A 2, soit environ 1E9), alors un 
message d'erreur est envoye. 

Note : j'ai privilegie ici ta vicesse. Si 
toutefois IKo vous semblent trop 



C -J 

&j 




< < < 






C A 

j4 










K K 

33 








J <~>l'l!r a I ff L'Li UUJ. r? - r ~ 1 1 " 11 1 I. J J 


J C 




1 nA 






C *7 

J / 




Z-Fvr 


yz 




r p 




t n A 


yi t a 




59 




sac 


St T 1 


/ u — 1 oi yi s 3£ 


ov 




<<< 






01 










co 


ROLL! 


. - - 




• DOf-3f-« fofr rjnnh I p— hvf"p 
^ni-JLoUtr iitsiL Jjuuuic xjy\-c 


- 






^7 

J* A 




o4 




HULj 


Si 




C c 




S 






66 










O 1 




war 




:Shi f r 4-bvte word 


u o 




A5£< 










ROT. 






70 






§1*2 




7 J 
/J. 




<<< 






70 
fZ 










"T 3 

fj 


Ufil A 


llriL- 




• U t If -f /i I a yf _ hi IT A UA >"W 


7 A 




or\r n 


Si 




75 






§1+2 




/b 




<« 






f / 










78 










"7 Q 




on 
O'J 










01 






PRIME 




&Z 










O j 

a J 


O L, L l/Ofl 




£>INTFAC32;usrjmp+2 rReveczorlse USR 


PA 




MOV 


£<INTFAC32; USRJMP+1 


85 




- — 






OO 










ft ^ 


x «V i c nl. J 




MAF 


/FAC ~> ARG 


a a 

00 




T.VjA 

LIU it 


ARG 


;Exposant -> A 


p 




AND 


£S7F 




on 




STA 


CNTR 


;Nbre de bits dans la mantisse 


Q7 




MOV 


£0;N1 


;Mise a zero de Nl 


92 




STA 


Nl+1 




a -a 
jJ 




STA 


Nl+2 




O A 

94 




STA 


Nl+3 














50 


INTFAC2 


DEC 


CNTR 


; Convertit ARG 


07 




BMI 


INTFAC3 


; qd un nombre entior Nl 






ASL 


ARG+4 


; de 32 bits (4 oct&ts) 






ROL 


ARG+3 




7 nn 




ROL 


ARG+2 




1/11 

1 Ul 




ROL 


ARG+1 




7 no 




ROL 4 


Nl 








JMP 


INTFAC2 




7 DA 










inn 

1 UJ 


INTFAC3 


JSR 


SQR 


; SQR (FAC) -> FAC 


1UO 




JSR 


GETADR 


; INT (FAC) -> $50 


7 0)7 




INC 


SQRN1 


/ S ' assure que la valcur 


1 ua 




BNE 


TESTNUM 


; est par exces 


7 f7Q 
1 Uy 




INC 


SQRN1+1 




110 










7 7 7 
111 


TESTNUM 


MOV 


i>PXEMTBL:ADRTBL+l 


lip 

± -I tZ 




MOV 


£ <PREMTBL 


/ADRTBL 


11 J 




LDY 


£0 




7 14 
J. 1 H 




BEQ 


TEST3 


/Tou jours pris 


113 










7 7 
110 


TESTLUP 


INY 






7 7 7 
IX/ 




BNE 


TEST3 




7 1 O 




INC 


ADRTBL+1 




119 










120 


TEST 3 


LDA 


(ADRTBL) , 


r /Met le nombre premier sulvant 


121 




STA 


N2 


; dans N2 


122 




BEQ 


OVRFLOW 


/Si 00, fin tabic 



28 



Pom's n° 38 



123 




1NY 






124 




LDA 


(ADRTBL) , X 




125 




ST A 


N2+1 




126 




CMPD 


N2/SQRN1 


;N2 > racine (Nl) ? 


J. £. • 






FNDPRFM 


^ )' nrjj, 1 n T"<! W7 DfP/Tl ? Pf ' 


128 










129 




JSR 


Dl V32 


; Effectue N1/N2 


7.1(7 










131 




LDA 




/Rests nul? 


132 




BNE 


TESTWP 


;Non -> on continue 


133 




LDA 


R*l 




134 




BNE 


TESTLUP 




135 










136 




LDA 


N2+1 


/Si non premier/ 


137 




T.DY 


N2 


/ retourne Is diviseur 


138 


EXIT 


JMP 


CIVAYF 




7 '19 

J. -J ZJ 










140 


FNDPREM 


LDA 


CO 


;Sinan, retourne 


141 




TAY 






142 




BEQ 


EXIT 


;Tou jours pris 


7 41 










144 


OVRFLOW 


LDX 


£69 


/Affiche OVERFLOW ERROR 


1 45 




JMP 


ERROR 




7 46 










7 41 
















* Division entiere ete Nl 


(32 bits) par N2 (16 bits) 


150 










151 


U1V32 


MOV4 


Nl / TEMP 4 


! Dividende -> Temy4 


152 




MOV 


LOiR 


;Mise a zero du reste R 


153 




5TA 


Ril 




754 




LDX 


132 


;Le dividende a 32 bits 












i erf 


DIVLUP 


DEX 






757 




BMI 


D1VEND 




255 




ASL4 


TEMP 4 




153 

~L ~> -> 




R.OLD 


R 




160 




CMPD 


R/N2 


,-Si R>=N2, le quotient est 


1 61 




BCS 


DIV2 


;sinon 


162 




no j, 4 


RESULT 




1 63 




JMP 


Dl VLUP 


; Tou jours pria 


164 


DIV2 


ROL4 


RESULT 




165 




SUBD 


R/N2/R 


;R - N2 -> R 


2 66 




JMP 


U1VLUF 




J 67 










2 £5 


D I VEND 


RTS 






7 69 
170 


CNTR 


DS 


1 


Programme 


2 72 




1ST 


OFF 


'CRE.PREMTBL ' 



long, mux pouvez toujours modifier 
PRIME FACTOR en reduisant la 
tabic, voire mime en la supprimant 
totatement (on teste alors tous les 
entiers impairs). Duns ce dernier cas, 
la memoire occupee sera tres faible 
(mains de 256 octets), mats alors les 
lemps de calcul deviennent tres 
importants. 



Comment 

creer PREMTBL 

II est, bicn sur, possible de saisir 
PREMTBL manuellement, h partir du 
moniteur. Mais alors "bonjour le 
travail" ; PREMTBL est longue de 
3512 x 2 = 7024 octets. Le mieux est 
de calculer PREMTBL £ I'aide du 
programme Basic CRE.PREMTBL. 
Celui-ci calcule les 3 512 nombres 
premiers inKrieurs contenus dans 
PREMTBL, puis les code sur 2 octets 
et enfin les sauve sous forme binaire 
dans le fichier PREMTBL, en 
utilisant le prefixc courant. 

Pour lancer Ic calcul, il suffit de taper 
"RUN CRE.PREMTBL". Attention, 
cela prend plus d'une heure ! 

A vous maintenant de construirc vos 
applications, comme par exemple la 
simplification de fractions ou la 
representation graphiquc dc spiralcs dc 
nombres premiers. 



PRIME FACTOR 

FONCTIONNE 
SUR LES 

Apple II+, 11% 

//get IIgs 
sous DOS 3.3 ou 
sous ProDOS 



10 REM CALCUL ET CREATION DE 

PREMTBL 
20 LOMEM; 16384 
30 DS = CHRS (4)i DIM K(3512) 
40 PRINT : PRINT "CALCUL PREL 

IMINAIRE"; 
50 K(2) - 1:K(1) = 0:K(3) = 2; 

N = 2 

bU FOR 1 = $ TO 255 STEP 2 
70 IF INT (I / 2) = (I / 2) 

THEN K(I) - 0: GOTO 120 
80 C = INT ( SQR (I)) 
90 FOR J - 3 TO C STEP 2: IF 
INT (I / J) - (I / J) THE 

N J = 999 
100 NEXT 

110 IF J < 999 THEN PRINT ". 
";;K(I) - 1:N - N + J 



120 
130 

140 



150 
160 

170 
180 

190 
200 

210 
220 

230 
240 



NEXT 

PRINT : PRINT : PRINT "CA 
LCUL DE PREMTBL:": PRINT 
J - Is FOR I ~ 1 TO 256: I 

F K(I) THEN K(J) - I:J = J 

1 It PRINT I, 

NEXT 

FOR I - 255 TO 32767 STEP 
2 

FOR J = 2 TO 54 

IF TNT (T / K(J)> = (I / 

K(J)) THEN J = 99 

NEXT 

99 THEN PRINT I, : 
1:X(N) = T 



IF J • 
N = N 
NEXT 
PRINT 



PRINT CHR$ (7)?" 
CREATION DE PHEMTBL " 
AD% = 8448: REM $2100 
FOR I = TO 351I:X = K(I 
+ X) 



Pom's n° 38 



29 



250 POKE ADi t I " 2 t 1,X / 
256: POKE AD% + I * 2,X - 
256 * INT {X / 256)i NEXT 

260 PRINT CHR$ (7) 

270 PRINT DS "BSAVEPREMTRL, A "A 

D$",L"2 " N 
280 TEXT 



2058 :C8 


Bl 


04 


85 


01 


A5 


06 


C5 


2 OfiO: 50 


A5 


07 


E5 


53 


BO 


12 


20 


2068:83 


20 


A5 


08 


DO 


DF 


A5 


09 


2070: DO 


DB 


A5 


07 


A4 


06 


4C 


F2 


2078 :E2 


A9 


UO 


A8 


tv 


t'8 


A2 


45 


2080 ;4C 


12 


D4 


AS 


00 


85 


FC 


A5 


2088:01 


85 


tv 


A3 


02 


83 


FE 


A3 


2090:03 


as 


FF 


A9 


00 


85 


03 


85 


2098:09 


A2 


HO 


CA 


JU 


49 


Off 


t'C 


20A0:26 


FD 


26 


FE 


26 


FF 


26 


08 


20A8:26 


09 


A5 


08 


C5 


06 


A5 


09 


20B0 :E5 


07 


BO 


OB 


26 


EB 


26 


EC 


20U8:26 


ED 


2b 


BE 


4C 




20 


26 


20C0;EB 


26 


EC 


26 


ED 


26 


EE 


A5 


2VC&;QB 


38 


E5 


06 


8b 


08 


A5 


09 


20D0:E5 


07 


85 


09 


AC 


93 


$0 


€0 



2UUB:UU 



Programme 
'DECOMPOSEUR' 

1 REM DECOMPOSITION EN PROD 
UTT DE FACTEURS PREMIERS 

10 TEXT : HOME : PRINT "Je ch 
arge PRTME FACTOR et PREMT 
BL. . . " 



20 PRINT CUR$ (4) "DRUN PRIME 

. FACTOR, A$ 2 000" 
30 PRINT C[]R$ (4) "DLOAD PREM 

TBL,A$2100" 
40 LOMEM: 16384 

50 HOME : PRINT "En utilisant 

PRIME FACTOR, je peux dec 
omposer un nombre entier < 
d 1E9 en"; PRINT "produit 
de facteurs premiers." 
60 PRINT .MAX - 32768 * 2 
70 PRINT : PRINT : INPUT "Norn 
bre a decomposer ou ? "j 
X:X = INT ( ABS (X) ) 
80 PRINT : IF X = THEN END 

90 IF X > - MAX THEN PRINT 

"Trop grand!": GOTO 70 
1Q0 PRINT "Liste ties /dcCeurs 

premiers de "X":", 
110 Y - USR (X) ; IF Y = THE 

N PRINT X: PRINT r GOTO 7 



120 PRINT Y r :X = X / Y: GOTO 
110 



Recapitulation 
'PRIME. FA CTOR' 

Apres avoir saisi ce code sous 
moniteur, vous le sauvegarcUrcz par 
BSA VE PRIM E. F ACTOR AS2000LSD9 
2000-.A9 20 85 OC A9 09 85 OB 
2008:60 20 66 EB A5 A5 29 7F 
2010 :8D D8 20 A9 00 85 00 85 
2018:01 85 02 85 01 CE OR 20 
2020:30 13 06 A9 26 A8 26 A7 
2028:26 A6 26 00 26 01 26 02 
2030:26 03 4C ID 20 20 8D EE 
2018:20 5? E7 E6 50 DO 02 E6 
2040:51 A3 21 85 05 A9 00 85 
2048:04 AO 00 FO 05 C8 DO 02 
2050:E6 05 Bl 04 85 06 FO 26 



TimeOut Graph 

voici quelques 
exemples qui illustrent 
la putssance de graph. 
Sans quitter 
AppleWorks, les 
graphtqufs se 
construisent 
instantanement 
exactfmfnt adaptes a 
vos besoins. changez 
une valeur et trois 
toliches suffisent pour 
afficher le grapiiique 
modifie. et pourquoi 
ne pas automatiser 
construction et 
impression des craphes 
avec UltraMacros ? 




30 



Pom's n° 38 




(Dimitri Qeystor 




Vous I'avez suremenl 
cntcndu dire, avee un brin 
d'envie, par des amis qui 
programment : «Un editeur 
de programmes Basic ? 
J'eTnpIoie mon traitement 
de texte, voyons !». Mais 
comment font-ils done ? 

Lc principe est fort simple : partant 
d'un fichier de traitement dc tcxtc, on 
le transforme en un fichier de type 
TXT (ASCII), on va en Basic 
Applesoft, on EXECutc cc fichier : & 
partir de la, on peut le sauver sous le 
nom qu'on veut avec SAVE : il est 
devenu un fichier BAS (faites "RUN", 
vous venrez). 

La realite est un peu plus complexe, 
surtout Si l'envie votis prend d'allcr 
travailler avec AppleWorks un fichier 
Basic deja existant. Essayez de 
transformer directemcnt un fichier 
BAS en fichier iraitemeiii de lexie ; 
AppleWorks est d'accord pour 
convertir n'importe quel fichier en 
uaitemenl de texte AWP, niais les 
resultats sont pour le moins 
deconcertants. II vous taut d'abord 
'iraduirc' voire fichier type BAS en 
fichier type TXT (ASCII), et 
malheureusement il n'existe pas en 



Basic Applesoft de commande qui 
fasse le contraire d'EXEC. II faut done 
ruser une peu. On verra cela un peu 
plus loin. 

Tout ceci peut dvidemment se 
maitriser, et un programme sous 
forme de traitement de texte est quand 
meme plus facile a travailler que sous 
sa forme Basic (la proc6dure de 
modification en Applesoft avec ESC 
et les fleches est parfaitement 
odieuse). Mais, sauf pour les tout 
petits programmes, ce n'est pas la 
joie : pour peu qu'il y ait beaucoup 
destructions par numero de ligne, et 
des REMs a droite et a gauche, la 
lecture nc sera pas facile. Non, non, 
croyez-moi, ceux qui vous disent que 
le traitement de texte AppleWorks est 
1'ediieui ideal pour les programmes cn 
Basic Applesoft vous racontent des 
histoires. lis 4 frimcnt\ Les avez-vous 
settlement vus a l'ceuvre ? 

Mais heureusement SuperMacro Works 
peut venir mcttrc dc rordrc dans ce 
fouillis, en permettant de formaler et 
d^formater voire programme. Ce 
sera le sujet dc cct article, qui vous 
proposers aussa un certain nombre de 
macro s-commandes pour acceldrer et 
simplifier l'ecriture de vos 
programmes Applesoft. Certes, cela 
ne vaudra jamais un veritable editeur 
Basic ecrit expres en Iangage machine 
(commc Program Writer d'Alan Bird, 
ou le GPLE des Beagle Bros, ou 
encore E.P.E. de Pom's), mais les 
avantages sont certains par rapport aux 
miserables moyens d ! 6dition de 
1' Applesoft abandonne a lui-meme... 

En fait, je vous propose deux macros 
de formatage : 

• l'une *aere' simplernent le 
programme, en allant & la ligne 



entrc chaque instruction, et en 
intcrcalant a chaque fois un trait 
fait de 5 "tirets*. Ce sera la macro 
<sa-Ctrl-A> du fichier 
MACROS.BASIC. 

• ['autre 'venule* le programme, en 
envoyant chaque instruction 
separee a la ligne. C'est la macro 
<sa-Ctrl-V> du fichier 
MACROS.BASIC. 

II est possible d'aerer et de ventiler a la 
fois, si vous ne craignez pas les 
courants d'air. A exeeuter impera- 
tivement dans l'ordre <sa-Ctrl-A> puis 
<sa-Ctrl-V>, sinon vous auriez 
vraiment trop de tirets. . . 

Vous pourrez ensuite vous en donner a 
coeur-joie : 

• imprimcr des listings, complets ou 
particls ; 

• utiliser les fonctions de recherche 
et de remplacemcnt ; 

• ajoutcr des Modules* pre 
construits, pour vos sous-roulines. 

Un conscil : il est hautement 
recommande d'installer AppleWorks 
cn RAM, car vous devrez le quitter, 
puis y revenir assez souvent pour 
tester voire programme. Avec un bon 
s61ecieur (ProScl, par exemple), c'est 
l'affaire de 2 a 3 sccondes. Sinon, 
ratten tc deviant vite faslidieuse. Pour 
auiomatiscr encore plus les choses, 
compilcz MACROS.BASIC avec 
SMW (les macros seront actives au 
demarrage d' AppleWorks) puis 
renommcz SUPER. SYSTEM en 
SUPER.BASIC et faites-le demarrer a 
la demande avec le sdlecteur. 



Mais pailons d'abord de la conversion 
proprement dite, obligatoire et 
incontoumable. 



Pom's n° 38 



31 



Conversion 
AWP * Basic, 
et vice versa 

Ceue conversion — dans un sens 
commc dans l'autrc — est la condition 
ndcessaire pour pouvoir employer le 
traiiemeni de lexte AppleWorks en 
tant qu'editeur de programmes en 
Basic. 

Les 6tapes sont les suivantes : 



X Dans le sens 
AppleWorks 1 



Basic 



® Le programme est dcrit avec le 
traiiement de texte AppleWorks. 

© Le fichier AWP ainsi obtenu est 
'imprime sur disque (ASCII)'. II 
devient done un fichier de type TXT. 
Supposons qu'il a ete sauve sous le 
nom PROG .TXT. 

® On quitte AppleWorks, on va en 
Basic Applesoft. 

® On vcrific que PROG.TXT est 
bien sur le disque, et on fait EXEC 
PROG.TXT. Le fichier est charg6 en 
mdmoirc sous forme d'un programme 
Basic. 

Note : Ne vous inquietez pas des '§' 
qui s'impriment a I'ecran. e'est 
normal ; vous verrez peut-etre 
s'imprimcr d'autres choses inattcnditcs, 
et meme des messages d'erreur, si 
voire programme contient par exemple 
des lignes non numirotees (Voir 
encadre pour une explication de ce 
phiwmine). 

(5) On peut d'ores et deja utiliscr le 
programme en faisant "RUN". 

® Pour le conserver sous la forme 
BAS, faire SAVE PROG (ou PROG 
sera le nom deiiniuf du programme en 
Basic). 

X Dans le sens 

Basic AppleWorks 

II faut commencer par preparer un 
petit programme 'chargeur', dans 
AppleWorks, et le sauver sur disque 



Macro-commandes 'MACROS.BASIC 

AppleWorks 1.4 SuperMacroWorks 



KACRGS. BASIC 



Cet ensemble de macros permet d'utillser votre Traitement de 
Textes AppleWorks comme editeur de programmes Basic Applesoft . 

Pour en cirer le meilleuc parti, lnscallez votre AppleWorks en 
RAM r et faites de ce fichier de macros le fichier par defaut 
(c'est-A-dire compiJez-Je avec le compilateur de SMW) ; ainsi, 
quitter et red6marrer AppleWorks ne prendra que quelques 

secondes . 



w****!**^-..--.-.--^..... - - ■ ''•rr**:**tW*****-**t****A**AA*A ******* 



Dimltrl Ceystor - AoQt 1988 



start 

<Ctrl-D> : <all><oa-P><rtn>4<rtnXmsg> ' Donnez le nom d°acccs complct du 
fichier TEXT a creer, puis HTN •'. 

Sauve Jo f ichor sous forme TEXT sur disque. 

Note : Veriflez que sur votre configuration 1 'option "Imprimer un fich 
ier texte (ASCII) sur disque" correspond bien a l'optlon n 9 4 . Sin 
on, mcttcz 2c chiffrc appropric dans la macro (ccla ddpend du nombr 
e d'lmprlmances que vous avez d£flnl) . 



<ccrl -c>:<allxoa-Qxesc^<rtn^3<rtn>2<rtn><msg>"_ 
d'acces de votre programme TEXT"! 



Charge le fichier TEXT sous forme AWP 



Donnez le nom 



CeCte macro dolt etre actlonnee en premier ; elle fait la "mlse en 

page standard" du programme : 

<tab>: <allxzoom><oa-2xoa-lxoa~M>P.<rlghtxright><rlght><rlghtx l rlgh t 

xrlgn£xright*F<escxoa-Zxoa-Q?lN<;rcn?6<rtn?mg<;rtn>, 5<rtn?nKt<;rtn 
> 0<rtn>mh<rtn>, 5<rtn>mb<rtn>, 5<rtn><esO<oa-9><rtn>§<rtn>§<rtn>! 



Ces deux macros "formatent" le programme : 

"Aeration" en separant chaque numero de llgne par 5 tlrets 

<ctrl-A>:<all><insert><sa~rtn><left><sa-l><rlght><oa-right> <rtn>< 

rpt>! 

1 : <all xi £>§<oa-ixzoom><stop> ! 

"Ventilation" en mettant une seule instruction par llgne 

<ctrl-v>:<allxinsertxrlghtxsa-2s<sa-3xrpt>! 

2 : <all ><1 f> : <rtnxspcxspcxspcxspc><spcxspnxspcxrlght> ! 

3: <al 1 xi t>§<oa-l><stop> ! 



Cet te macro "justlfie a drolte" la colonne des num&ros de ligne : 

J; <allxso\-8xduwri><ipt>i 

8: <allxoa-tabxsa-lxrightxlfnotxspcxvar=>4<sa-9xoa-tabxsa-u>! 
9: <allxrightxifnotxspcxdecvarxrpt>! 



32 



Pom's n° 38 



La commande EXEC 

Pourmieux comprendrecette commande, dites voussimple- 
ment que : 

• EXECuter un fichier TXT conduit exactement au m§me 
r^sultat que de taper au clavier le contenu exact de ce fichier 
pour le mettreen m6moire. 

• Si vous EXECutez un fichier TXT (ASCII) qui contient les 
lignes d'un programme en Basic, c'est comme si vous tapiez 
ce programme au clavier (sauf que seul le caractere "§" 
apparait pour chaque ligne - et les eventuels messages 
d'erreur si la ligne est incorrecte aux yeux de Basic System). 
Mais le programme est bien 'entre' en memoire : il suffit de 
faire LIST pour s'en convaincre. 

• C'est pour cela que deux EXEC successifs mettent deux 
programmes bout k bout (si les num£ros ne se chevauchent 
pas), exactement comme si vous continuiez h entrer au 
clavier la suite du meme programme. 

:.. ... ■.-.•..v.. — : : ^ 



u :<allxin$ertxvarnot>0<spc><decvarxrpt> ! 



CetCe macro re/net le texte du programme en format "standard" : chacj 

ue ligne num&rot&e separoe par un saul "retout chariot" : 

<ctrl-R>:<allxoa-lxsa-*>! Supprime l'aeration (tirets) 

*:<all><aa rtnXoa right><3a-5><sa-4xrpt> ! 

4:<allxlf>-<r±ght><lf>-<sa-rtn><del><del><del><delxdel><del>! 

5 ; <dll> f^5<od-l ><ad-cti 2-£> .' Supprime la "ventilation" 

<ct rl-E> : <allxsa-rtnxoa-rightxsa-6><oa-riohtxsa-7xrpt> ! 
6:<allxlf>$<oa-l><izooir i ><st.op*i 

7 ; Tall xi f> : <d*= 1 xdel xdel ><Wp J xdft ) xdn 1 Xde 1 Xde 1 Xde 1 > ! 



Cette macro supprime toutes les instructions REM (avanf de / 'action 

ner, mettre le programme en format "ventile") : 

<ctrl-N>:<allxoa-Lxrtnxoa-Yxspc>rem<spc><rtnXrtnXoa-tabxoa-tab> 
<oa-Extab>tab><tabxrtn><rpt> I 



Cette macro insere 5 tirets, pour "aecer" les lignes : 

s:<all><rtn> <ttn>! 

Cea maiszus faul 11 tent 1 'ecilture en format "ventlle)" ; 

: : <a J 1 XtahXtabXrt nXtah> : <r i ght> ! Instruction suivante 

z : <allxoa-tabxoa-tabxoa-D>s<tabxzabxrtn> * "Zapper la ligne" 

b:<allxtab><tabXoa-OD! Recuperer la ligne "zappee" 



sous la forme d'un fichier TEXT 
(procedure 1 et 2 ci-dessus). 
Supposons qu'il ait pour nom 
CHARGEUR. 

Voici ce programme : 

63500 dS = chrS(4) 

63506 input "Fichier : " xx$ 

63508 ?d$ "open" xxS 

€3510 ?dS "write" xx$ 

63512 list 1,63499 

6351*1 ?d$ "close" 

63516 end 

Pour transformer n'importe quel 
programme Basic Applesoft cn fielder 
AWP, proedder comme suit 

® A partir du Basic Applesoft, faire 
LOAD PROG (en snpposant que 
PROG est le nom du programme en 
Basic). 

® AussitOt aprfcs, faire EXEC 
CHARGEUR. Une sdrie de T 
s'impriment & 1'ccran : c'est normal, et 
signe que tout va bien. LisLer : les 
deux programmes PROG et 
CHARGEUR, mis bout a bout, n'en 
font plus qu'un seul. 

® Faire RUN 63500. La partie 
'Chargeur* est ex6cut6e, et vous 
demande d'indiquer un nom de fichier : 
indiquez, par exemple, PKOG.TXT.2 
(ce sera le nom de de votre programme 
sous forme TXT). 

® Cataloguez le disquc pour vdrifier 
que PROG.TXT.2 y est bien. 

® Lancez AppleWorks, ct cr6ez un 
fichier traitement de textes "d'un 
fichier texte (ASCII)", en donnant le 
nom d'acces de PROG.TXT.2. 



Le programme CHARGEUR est crcc 
une fois pour toutes, et r£sidera sur la 
disquetie ou seront vos programmes 
cn Basic (ii est deji sur la disqucttc 
Pom's 38). 

Les operations sont trcs simples, ct 
peuvent etre automatisees en ce qui 
conceme AppleWorks. Voici les deux 
macros qui pcrmcttront 'd'imprimcr 
sur disque (Ascii)' et de creer un 
fichier AWP 'd'un fichier texte 
(ASCII) 1 : 



Pom's n° 38 



33 



Macros diverses "stenographlques" : 

CHRS : 

5:<allxinsert>CHRS (<insg>' Valeur ASCII, puis RTN '<lnput>)<righcxms 
g>" n ! 

PRINT : 

P:<a11xtnsert>PRINT<riQht>! 
DATA 

D:<all><insert>DATA<rlght>! 
UTAB 

H:<all><insert>HTAB<rlghL> ! 
VTAS 

V; <al 1 xi nser t> V7AD<ri gh t> ! 
IF ... THEN 

It<allXinBort>IF <msg>' condition, puis RTN 
'<£nputxrighL>THEN<ri ght><msg> 

pppR* f ) 

E;<all><insert>PEEK (<msg>' Adrosso, puis RTN '<lnput>) <rightXmsg> mM ! 
POKE 

K:<all><lnsert>POKE <msg> * Ariresse, puis RTN '<input>,<m$Q>' Valeur, p 
uis RTN '<inputxrlghtxmsg>" H ! 

CHRS 

S-^allxinnert.^CHRS (cmsg>' VaJeur ASCTT, puis RTN '<input>)<rlghtxms 
g>--! 

M7R5 

M:<allxinsczt>MID$ (<msg>' Chaine, puis RTN *<1 nput>,<msg>' Debut ? p 
uis RTN '<lnput*, <msg>' Longueui, puis RTN '<input>) <rightxmsg>" " .' 

LEFTS 

L;<allxin3ert>LEFT$ (<mog> ' Chaine, puis RTN '<input>,<msg>* longueur 
r puis HTN '<input>) <rlghts<msg>~" ! 

RIGHT* 

R:<all><lnseit>RIGHT5 (<msg> ' Chalne, puis RTN ' <input>, <msg>' Longueu 
r, puis RTN ' <lnpu t> ) <r ig htxms g>~" ! 

PEEK ( ) + 25S * PEEK ( ) 

W:<allxlnsert>PEE:K (<msg>' Acires-btf I, puis RTN * <input>> <right>+<rlgh 
t>256<riaht>*<rlght>PEEK {<msg>' Adresse 2, puis KTN 1 < input *msg* 



VAL 

A:<aJlxinsert>VAL «msg>' Chaine, puis RTN '<input>><r^ght><msg>'•" ! 



<Ctrl-D> : <ali><oa-P><rtn>4<rtn 

><msg>' Donnez le nom ct'acce 

o complot du fichier TEXT a 
creer, puis RTN M Sauve le 
fichcr sous forme TEXT sur d 
isque . 

Note : verijiez que sur votre 
configuration {'option "Imprimer un 
fichier textc (ASCII) sur disque" 
correspond bien d {'option n u 4 . 
Sinon, meitez le cfujfre approprie dans 
la macro (cela depend du nombre 
d'imprimantes que vous avez defini). 

<Ctrl-C>:<all><"oa-Q><e»sr><rtn> 

3<rtn>2<rtnxmsg>" Do 

nnez 1q nom d'acces de votre 

programme TEXT" ! Charge le 

fichier TEXT sous form© AWP 

Ces deux macros sont incluSeS dans le 
fichier MACROS.BASIC. 

Formater 

Prenez un quclconquc petit programme 
en Basic (la disquette Pom's contient 
EXEMPLE.PRG, qui fera bien 
l'affaire), et appliqucz-lui la procedure 
B ci-dessus, point 1 a 4 
inclusivement. 

Bootez AppleWorks, chargez le fichier 
MACROS.BASIC, faites 3-= pour le 
compiler, et actionncz la macro 
<sa-Ctrl-C>. Vous nommerez 
ESSA1.PKG votre fichier AWP. 

L'operation qu'il faut faire aussitot 

apres est d'appliquer la macro 

<sa-tab>, qui fait plusicurs choses : 
® Ellc fixe unc certaine *mise en 
page. 1 standard : tabulation, marges, 
longueur de papier pour l'impression 
© Elle ajoule deux en fin dc 
fichier, qui serviront de 'drapeau , pour 
arreter la boncle des macros de 
formatage. Quand vous ferez 
l'operation de transfert inverse (awp 
Basic), pensez a enlever ces drapeaux. 
lis n'empeeheroni cependant pas votre 
programme de tourner, en cas d'oubli. 

II est aussi reconuuandtf d'aciionner a 
ce stade la macro <sa-J>, qui justifie a 
droite tous les numdros des lignes 
d'instructiun. Ceitc macro a un intdret 
purement esth6tique. Par la suite, il ne 



goto 

: <all >G0TO<rlgh t> ! 

qqsub 

U: <all>GOSUB<rlghc>! 



END 



sera pas nccessaire de la l deTaire\ cette 
justification ne genant en rien la 
transformation du fichier AWP en 
fichier TXT, puis BAS. 

Vous pouvez maintenant vous exercer 
h uiiliser les macros <sa-Ctfl-A>, 
<sa-Ctrl-V> et <sa-CtrI-R>. La plus 
lente a s'executer est la macro 
<sa-CtrI-V> ; que voulcz-vous, ce 
n'est pas du langage-machine, et ia 



macro lit tous les caractcrcs pour 
reperer le sdparateur ":" qui lui 
indiquera qu'il faut aller a la ligne. 

Les macros <sa-Ctrl-A> et 

<sa-Ctrl-V> agissent a partir de la 

position du curscur, la macro 
<sa-Ctrl-R> commence toujours en 
d6but de fichier. 

Si vous pensez vous contenter de la 



34 



Pom's n° 38 



seule 'ventilation', faites <sa-Ctrl-V> 
seulement : Ic formatage sera bien 
plus rapide, car il y aura moins de 
lignes a lire. 

Les macros <sa-Ctrl-A> et 
<sa-Ctrl-R> travaillent plus viie car 
dies ne testent pas tout lc tcxtc 
caractcre par caractere. 

La macro <sa-Ctrl-R> fail un menage 
general, el 'recon strait' le programme 
sous une forme appropriee pour le 
transfer! vers le Basic Applesoft. Elle 
commence par eliminer les tirets. puis 
revicnt au debut et 'compacte' les 
instructions, en ne laissani qu'un seul 
retour chariot par lignc de programme. 

Le fichier MACROS. BASIC contient 
une option de formatage supplemen- 
taire ; elle permct, une fois qu'un 
programme a 6t6 mis au point, d'en 
enlever toutes les remarques t pour une 
une execution plus rapide. Certaines 
precautions sont a respecter : 

Cette macro, ^sa-Ctrl-N^, doit 
s'appliquer a un programme sous sa 
forme 'vcntilcV (chaquc instruction a 
la ligne). 

Cette macro a 6ti prevue (pour 
acc616rer son fonctionnement) sans 
test de fin de fichier. A vous de 
surveiller sa progression et, quand la 
fin du fichier a ete d6pass6e, de faire 
ESC pour arreter la macro. II faut 
aussi, apres la macro, 'nettoyer' les 
eventuels caractcres paiasiLes qui 
auront peut-etre eu le temps de 
s'imprimer a la suite du programme. 

Chaque el'facemcnt de REM ne 

pone que sur une ligne : si une 
remarque est trop longue et deborde 
sur la ligne suivante, cette partie ne 
sera pas effacde. Si vous tenez 
absolument a un commentaire 

abondant, repartissez-le sur plusieurs 
REMs. 

M6fiez-vous des GOTO et GOSUB 
qui renvoicnt a des sous-routines qui 
commenceni par une REM ! Le 
numcro de lignc appcld ne doit pas 
etre celui de la REM qui va 
disparalire. 

Une fois assimile.es ces operations de 
base, vous etes prets a modifier des 
programmes exislants, ou a ecrire de 
nouveaux programmes. 



Les macros du fichier MACROS. 
BASIC vous y aideront. 

Comment modifier 
un programme 

Vous dispose/ de loutes les fonctions 
d'edhion d'AppleWorks et de 
SuperMacroWorks : le confort des 
deplacements rapides avec la souris, 
les functions de recherche et de 
remplacement, les effacements, les 
coupcr/colter, etc. 

A propos de souris, je rappcElc qu'elle 
vous donne deux fagons de faire dclilcr 
les ecrans : en conlinu, en amorcant le 
mouvement et en maintcnant le 
bouton enfonce, et ecran par ecran. 
C'est le defilement le plus rapide : 
gardez enfoncee la touche <3, et 
'trainez 1 doucement la souris. J'ai hien 
ditdoucement. 

Pour le 'contexte' de l'edilion, e'est 
une affaire de gout : 

Vous pouvez choisir de travailler 
sur le texte de programme 'non 
formate', sans precautions particu- 
lieres, sinon de veiller a avoir un seul 
'retour chariot* a la fin de chaquc Ugnc 
numcrotee, ni plus ni moins. Faites 
<oa-Z> pour controler. 

Vous pouvez travailler sur le texte 
de programme 'acVd' : les tirets sont 
des reperes visuels bien utiles. Si par 
megarde on supprime un retour-chariot 
en fin dc lignc, les tirets se decalent 
aussitot. Cela saute aux yenx, et il 
suffit de faire RTN pour les remextre a 
leur place. II faut qu'au moment de la 
'reconstruction' avec <sa-Ctrl-R> tous 
les tirets soient en debut de ligne. 

Vuus pouvez enfin uavailler sur lc 
texte 'ventild'. La syntaxe est 
differente : pour respecter la coherence, 
il faut nun seulemenl aller a la ligne 
apres chaque instruction, mais 
respecter la tabulation des separateurs 

Le iichier MACROS.BASIC contient 
deux commandes pour vous facilitcr lc 
travail : 

CD <sa-:> ; quand elle est actionnee 
n'importe-ou dans une ligne, cette 
macro insere automatiquement une 



nouvclle ligne, fait la tabulation, 
imprime et place le curseur. II n'y 
a plus qu a taper la nouvelle 
insuuetion. Quand celle-ei esL eeriie, 
on tape pour passer a ['instruction 
suivante. 

® <sa-Z> 'zappe' une instruction 
(done une ligne) cntiere. La ligne 
zappee est copiee dans le 
presse-papiers, d'ou <sa-B> ia rccupcre 
au besoin, en 1'inserant apres ia lignc 
du curseur. Ces deux macros 
permettent done un "coupcr/coller" 

Comment ecrire 

un nouveau programme 

Creez le fichier de traitement dc texte, 
et appliquez-lui aussitot la macro 
<sa-tab>. 

Pour 6crire le programme, le format 
'acre' est visucllement le plus 
satisfaisant, mais nullement 
obligatoire : 

ia* Fcrivez le nnmero de ligne, faites 
TAB, ecrivez les instrucdons selon la 
syntaxe habituelle Applesoft. Pour 
passer a la ligne suivante, faites 
<sa-S> : cette macro va a la ligne en 
insurant cinq tirets. 

Si vous preT6rez ecrire en 'format 
ventite*, e'est-a-dire une instruction 
par ligne, commencez la ligne 
noniialement, puis utihsez la macro 
<sa-:> pour chaque nouvelle 
instruction. Four passer h la ligne 
numeroiee suivante, faites seulement 
RTN. Ce format est commode si votre 
programme doit ecrire du texte a 
l'ecran, car les instructions placccs les 
unes sous les autres vous donnent une 

bonne idee de l'apparence future de 

l'ecran (en 80 colonnes). 

a- Rien ne vous interdit d'ecrire en 
'mode mixte-' : pour certaines ligncs 
en format 'aere* (ou memc tout a fait 
ordinaire), pour d"autres en 'ventilant* 
instruction par instruction. Quand 
vous ferez la 'toilette' finale de votre 
texte, la macro <sa-Ctrl-R> du fichier 
MACROS.BASIC convertira un texte 
'venule^ au format normal, sans rien 
changer pour autant aux parties de 



Pom's n° 38 



35 



texie qui seront deja en format 
'normal*. 



Autres macros 
du fichier 
MACROS.BASIC 

En plus des trois macros <sa-:>. 
<sa-Z> ct <sa-S> dcja mcntionndes, 
le fichier MACROS.BASIC contient 
un certain nombre de macros destinees 
a vous facilitcr l'ccriturc depressions 
rep^tiuves du Basic Applesoft. 

Je rappelle que les macros peuvcnt ctrc 
tapees en utilisanl indifferemment les 
lettres minuscules ou majuscules. 

<sa-rtn> Va an prochain retour- 
chariot (fin de Iigne ou fin 
destruction, scion le 
mode) 

<sa-P> Ecrit PRINT, avance d'un 
espace 

<sa-D> Ecrit DATA, avance d'un 
espace 

<sa-H> Ecril HTAB, avance d'un 
espace 

<sa-V> Ecrit VTAB, avance d'un 
espace 

<sa-I> Ecrit IF, attend la 
condition, complete avec 
THEN, avance d'un espace 

<sa-E> Ecrit PEEK(, attend une 
valeur, referme la 
parenihese et avance d'un 
espace 

<sa-K> Ecrit POKE, attend deux 
valeurs, avance d'un 
espace 

<sa-S> Ecrit CQR$(, attend la 
valeur Ascii, referme la 
parenihese, avance d'un 
espace 

<:sa-M> Ecrit MIDS(, attend trois 
indications, referme la 
parenihese, avance d'un 
espace 

<sa-L> Ecrit LEFTS ( attend deux 
indications, referme la 
parenthese, avance d'un 
espace 

<sa-R> Ecrit RIGHTS( attend 
deux indications, referme 
la parenihese, avance d'un 
espace 

<sa-W> ficrit un PEEK + 
256*peek () , en faisaiu 



Les programmes proposes par Pom's 

Void una table indiquant dans quel numero de Pom's vous trouvsrez une 
description de nos programmes diffuses ; 



CLV_Pom's 31 

Editeur Videotex 31 

SuperMacroWorks 31 

InterPom's 31 

Pom JJnk 3.1 34 & 36 

Beagle Compiler 35 

Big U 35 

ProSel 36 & 37 

Copy II Plus 8.3 37 

Copy I! Mac 37 

Timeout 38 



programme d'enregistremenl de CalvaCom 

Editeur d'ecran Minitel (CP/M) 

Macros & souris sur AppleWorks 

Transmission de fichiers 

Serveur telematique complet 

Puissant compilateur Basic sous ProDOS 

Ensemble d'utilitalres indispensables au Basic 

Selecteur d'applications irremplacablo 

Copieur pour Apple// 

Copieur pour Macintosh 

Ensemble d'applications sous AppleWorks 



Shareware communication 
sur la disquette 38 pour Apple // 

Sur la disquette 5.25', vous trouverez Kermit v3.78 
Sur la disquette 3.5' vous aurez egalement Deluxe Disk Desinfcegrator 
v4.2. Binary Linking Utility v2.27, le compacteur pour GS Digipack 
vl.O, Binary II, Executioner de Glen Bredon, TalklsCheap, le 
compacteur Pro Arc. 

L'ensemble avee documentation en anglais. Pom's n'assure aucunc 
assistance pour cos programmes shareware. 



deux pauses pour 
l'insertion des valeurs, 
avance d'un espace 
<sa-A> Ecrit VAL(, attend la 
chaine. referme la 
parenthese, avance d'un 
espace 

<sa-0> Ecrit GOTO, avance d'un 
espace 

<sa-U> Ecrit GOSUB, avance 

d'un espace 
<sa-T> Ecrit RETURN, avance 

d'un espace 
<sa-G> Ecrit STR$(, attend la 

valeur. ferme la 

parenthese ct avance d'un 

espace 

<sa-Ctrl-G> Ecrit BELL, avance d'un 
espace 

<sa-F> Ecrit FOR, attend une 
valeur, 6crit =, attend une 
valeur, ecrit TO, attend 
une valeur, avance d'un 
espace 

<sa-N> Ecrit NEXT, avance d'un 
espace 

<sa-"> Ouvre des guillements, 



attend un tcxtc, referme 
les guillemets 

Cctte Hstc n'est dvidemment pas 
exhaustive, et chacun pourra la 
computer a son gr£. 

Pour essayer votre programme, quatre 
operations simples, qui ne vous 
prendront que quelques secondes : 

® 'Recompacter* le fichier AWP avec 
la macro <sa-Ctr! R>, que vous 
pnuvez actionner de n'importe quel 
endroit de ce fichier. 

(2) Allez en fin de fichier, et 
supprimez les drapeaux "§". 

S) Faites <sa-CtrI-D>, et creez votre 
fichier PROG.TXT. 

® Quittez AppleWorks, allez en 
Basic, faites "EXEC PROG.TXT' (ou 
PROG.TXT) et RUN. 



□ 



36 



Pom's n° 38 












Principes de fonctionnement 

(D choisir une scrie de pages sur un fichier lableur, ce qui permet de beneficier 
d'un fonction ryLhmique (impression de la page coaranle + 2, + 3, etc.). Dans 
la version presentee ici, la grille des pages se consume autoinaliquemenL 
(macro- Y) avec 2 colonnes ; une colonne de 2 en 2 & partir de la page 
(nommee ici 444 car AppleWorks refuse de trouver une page 0) et une 
colonne de 2 en 2 h partir de la page 1. 

© lire successivement Ies cases du lableur, en faisant passer reformation sur un 
fichier interm6diaire de type texte qui pcrmct dc recuperer le nombre et non la 
fonction. 

® fairc unc recherche dc la page concerned dans le fichier texte couranL 
® imprimer de fagon s61ective la page concernee. 
® recnnnaltre la fin do fichier. 

© revenir au d6but du fichier pour rimpression des pages dc la dcuxiemc colonne 
de la grille. 



Macros-commandes 'IMP.2.COLQNNES' 

START 

Svus-rvuLlnes ; 

L: <allxoa-Q>3<Rznxoa-P>B<Rtn>2<RtnxRtnxDownxoa~Q>2<Rtnxoa-r 
><oa- C>D<oa-Righ t ><rread>*rreadXread><roa-lXoa-Q>l <?Rtn> ! 

ATTENTION : dans la macro L ci-dessus r le "2" apres <roa-P>B<rrtn> 

correspond a 1 'option "imprimer sur le presse-papiers (pour le 

Traitement de texte) . Ceci peut varier d'une configuration a 
1 'autre ; verifiez, et mettez la valeur qui convient. 

M:<allxsa-Lxoa-L>P<sa-OXrtnxrti)Xctownxaown><itnot>*<upxupx 
oa -P> Cl<rtnxrtn> <esc> <rpt > ! 

N ;<all><?sa-L><oa-L>P<sa-0xrtn>O<rtnxoa-P>Cl<rtnXrtn><esc>l 

F:<all><zoom><oa-2xoa-lxoa-0>mg<rtn>0, 1 <rtn>md<rtn>4 , 1 <rt n>pc<r 
tn>no <rtn>l<rtnxesc><oa-K>l<rtn> ! 

G:<alixzoom><oa-Z><oa-I><oa-O>mg<rtn>4, 1 <rtn>md<rtn>0 , Krtnxesc 
xoa- K>l<rtn>! 

H: <allX2oomXoa-2xoa-lxoa-0>mg<rtn>l<rtn>md<rtn>Q, 5<rtn>pc<rtn 



Depuis qu ! AppleWorks 
a vu le jour, rim- 
pression d'un texte sur 
deux (ou plusieurs) 
colonnes est le reve 
insaisissablc que pour- 
suivaient ses utilisa- 
teurs. 



11 y a quelques mois 'I'expert en 
AppleWorks' Charles Rubin 
proposait, dans une revue amcricainc, 
'sa' solution. En gros, il x'agixxait 
d'utiliser le iraiiement de lexte, la base 
dc donnccs et le tablcur : on 
commencait dans le iraiiement de 
texte, on faisait le transfert dans le 
tablew via la base de donnees, on 
organisait le texte en deux colonnes 
dans le tableur, et on revenait au 
traitement de texte via le 
presse-papiers. Procedure lourde et 
compliquee, mime en recourant a des 
macros pour le transfert. Son seul 
avantage : on voyait le texte sur deux 
colonnes dans le traitement de texte (ct 
encore, a condition de ne pas depaxxer 
78 caractires par ligne, et de pax trop 
y toucher : rien ne se demolie plus 
trattreuxement que ce genre 
d*architecture !). 

La reponse ne se fit pas attendre, dans 
le courrier des lecteurs de cette mime 
revue, peu de temps apres : powquoi 
se compliquer la vie, ecrivait ce 
lecteur, alors qu'il y a une solution 
beaucoup plus simple, a la condition 
defaire passer le papier deux fois de 
suite dans Vimprimante f «On 
commence par formater le texte en une 
seule colonne sur la moitie gauche dc 
la page, et on imprime. Puis on 
formate le mime texte en une seule 
colonne sur la moitii droite dc la 
page, on reintroduit le papier dans 



Pom's n° 38 



37 



>no<r tn>l<rzn><escxoa-:oi<rtn> ! 

1 ; <all><zoomxoa-Zxoa-lxoa-Q>mg<rtn>0, 5<rzn>md<rzn>l <rznxescx 
oa-K> 2<rtn>! 

X:*awp>fQ3-9><oa-G>JCsrtn>npsrtn><Qsc>*{rzn><oa-0>fip(rtn'><e£c>*<:T 
tn>! 

Y;<allxrtn>3<rzn><rtn>INTERFACE<rtn><esc><xtn>5<HtnXHzn>csR±LLE< 

Rto>4 44<Rzr.xRight>KRtnxDownxLQft>2<RtnxRight>3<RtnxDown 

><Lett>+<Up >+2<Rtfi><Right>+<up>*2<Rtn><LGft><oa-c><Rtn><Right 

><RtnxDown> . <oa- DownXoa-Down>*oa-Downx*oa-Dovn><oa-DownXoa 
-DownXoa-Downxoa-Downxoa-Downxoa-Downxoa-DowrtXDownxDown 
xRtnxRightxRtnxRightxRt n><aa-l><oa-0>ph<rtn><escxesc> ! 

E;<all>4 <rtnxdown><rt n>3<rcn>04<rtn><dowr.xrtn>3<rtn>0! 
Macros generales : 

P : <allxesc><s3-Yxoa-Q>Krtnxsa~Xxoa-2xsa-Fxsa-NX , sa -M><*@sc> 
<rnsg> 'Remettre le listing au debut .' <Key><oa-Q>3<rznxoa-lxz 
abxeso<oa-Q>l<rtnXoa-l><sa~CX£a -Nxsa-MXoa-9>*oa-Exupx 

upxupxupxupxupxrtnxoa-lxescxsa-E> J 

Q:<allxescXsa-YXoa-Q>l<rtn><sa-X><oa-lxsa-H><sa-NXsa-MXesc> 
<n\sg> 'RemettrG lc listing au debut et au recto* ' <keyxoa~Q>3< 
rtnxoa-lxtabXesc><oa-Q>l<rtnxoa-lxsa-I><sa -Nxsa-Mxoa-% 
><oa-EXup>*up><up><up><'JpXupXrtnXoa-l>>?&££>-tsa-E> J 

END 



Les Macros-commandes 

L Lecture d'unc case de la grille des pages dans la macro-0 

M Macro repetitive de recherche ct depression des pages 

N Impression de la premiere page de chaque colonne de la grille des pages 

F Formatage du fichier pour l'impression de la premiere colonne: definition 

des marges gauche (0,1 pouce) etdroitc (4,1 ponces) en tete du fichier texte 
G Formatage du fichier pour l'impression de la deuxieme colonne: definition 

des marges gauche (4,1 pouccs) el droite (0,1 pouce) en tctc du fichier texte 
H Formatage du fichier pour l'impression recto : definition des marges gauche 

(1 pouce) et droite (0,5 pouce) en tStc du fichier texte 
I Formatage du fichier pour l'impression verso: definition des marges gauche 

(0,5 pouce) et droite (1 pouce) en i&e du fichier texte 
X Positionnement des marques de fin de fichier 



I'imprimante, et on imprime une 
deuxieme fois, rnais en commenqant 
par la deuxieme page». 

Minute, me direz-vous, e'est 
astucieux, mais cet ceuf de Christophe 
Coiomb me fait jeter une page sur 
deux au partier ! Certes, mais on ne 
fait pas d'omelette, etc. Ou alors, it 
faudrait, lors de la premiere passe, 
n'imprimer que les pages impaires, et 
lors de la deuxieme n'imprimer que les 
pages paires. 

Mais aufaii. AppleWorks a toutes les 
cotmnandes qui! faut : O-K pour 
numero tcr les pages, (3-L pour 
localiser les pages, I'option 
d'impression PC (pause a chaque page) 
qui arrite l'impression le temps de 
/aire avancer le curseur d'une page sur 
deux. II ne manque que I'esclave pour 
'towner la manivclle' . Mais juste- 
ment, AppleWorks a tout cela, et 
meme mieux, avec SuperMacro- 
Works. Car SuperMacroWorks sait 
compter, et on peut parfaitement le 
charger de sauter d'abord toutes les 
pages paires, ensuite toutes les pages 
impaires. On aurait pu, pour cela, 
uiiliser un petit compteur du genre de 
ceux que je vous ai presents dans les 
nwneros precedents. 

Dans I'illustration qui va suivre, un 
lecteur de Pom's, Alexandre- 
Pierre Caspar, a choisi de faire faire 
le decompte par le tableur. 

Tout d'abord, on construit dans le 
tableur deux colonnes de chiffres qui 
correspondront aux pages, paires et 
impaires. La macro lira les cellules 
successives (non pas directement, 
mais en les imprimant dans un fichier 
de traitement de texte, pour lire le 
nombre et non la formule - Hens, 
tiens, ca ne vous rappelle rien ? Void 
une melhode de plus pour ce genre de 
transfert). Puis elle mettra le resuttat 
de la lecture dans la macro (zero), ira 
dans le traitement de texte, localisera 
la page enregistree dans la macro 0, 
etc. 

Si le mecanisme vous interesse, 
epluchez les macros d'A.-P. Caspar, 
rest tres instrur.tif. 



Si la seule chose qui vous preoccupe 
est le resultat, qu'd cela ne tienne, 
faites tour tier la macro, elle murche u 
merveille (il y a juste une chose a 
verifier : a partir d'un fichier tableur, 
dans votre configuration de travail, 
regardez quel est le numero de I'option 
"imprimer sur le presse-papiers (pour 
le Traitement de textes)". Ce numero 
est 2 dans la macro <sa-L>, mais il 
peut etre 3 ou 4 selon le nombre 
d'imprimantcs que vous avez definies 
simidtanement I Corrigez si necessaire. 



Votre fichier a imprimer peut contenir 
des options de raise en page (CI, LP, 
IN, JT, etc.) : c'esl It grand inleret de 
cette methode, vous avez un controle 
complet sur la presentation du texte 
(cuntraircmenl d la solution de Charles 
Rubin). Une seule chose a respecter : 
ou bien vous evitez complement 
toute indication des marges gauche et 
droite (la macro le /era pour vous, le 
moment venu), ou d I'extreme rigueur 
vous pouvez indiquer une marge de 
gauche en toute premiere, position 



38 



Pom's n° 38 



parmi toutes les options d'impression, 
et une marge de droiie en deuxieme 
position. 

Ah oui, j'oubliais, pour les 
pcrfectionnistcs : apres avoir termini 
d'ecrire voire fichier, faites (3-AT. et 
regardez si par hasard il n'y a pas de 
'nouvelle pages' qui cornmencent par 
une ligne vide ( ga peut arriver a un 
changetnent de paragraphe). En deux 
colonncs, ga saute aux yeux et e'est 
dixgracieux ; eiiminez la ligne vide 
avant d'impritner (et, bien sur, veriftez 
a nouvcau avec uncfois de plus, 
car vous venei de tout decaler). 

DG 



Y Creation dc la GRILLE (tablcur) des pages a imprimcr ct dc 1 'INTERFACE 

(fichier texie) dc lecture des cases de la grille 
E Efi'acement final des fichiers INTERFACE et GRILLE. 

Misc cn ocuvrc 

® compiler les macros impression. 

® charger le fichier lexte a inipriiner (il doit se irouver seul sur le bureau). 
® a partir de ce fichier, tapez : 

i-P (bi-colonncs) 
& #-Q (recio- verso) 
® quand la procedure, vous le riemandera, remettez le papier au debut, inverse 
(recto- verso) ou non (bi-colonnes), et appuyez sur une touche. 

Note : les seuies definitions de marge pouvani apparahre dans le fichier pour 
rcster compatible avee la macro bi colonncs sont : marge gauche en premiire 
ligne de fichier; marge droite en deuxieme ligne de fichier. r~~^ 




«PonT8 est pret a publier 
vos patches les plus 
reussis, Nul n'eta nt 
infaillible, mes modifica- 
tions sont peut-etre 
incompletes, ou peuvent 
engendrer des pepins. 
Nous comptons sur vous, 
lecteurs, pour nous le faire 
savoir, si possible dans le 
Format Prefere de Pom's 

(FPP : deux colonnes. A 

gauche, la question. A 
droite, la reponse). Merci 
d , avance.» 



Voila comment se concluait mon 
article dans Pom's 36. Eh bien, vous 
avez rdpondu, en masse, et le FPP, 
vous connaissez. Je ne peux pas citer 
les noms de tous : e'est la 
commuiiauie des lecteurs de Pom's, 
tout simplement, qui a relevS et 
corrige coquilles et bugs, et nous 
sommes tous des "patchmaniaques", 
selon la formule de Randy Brandt. Les 



editeurs de blocs et le desassemblage 
n'oni plus de secret pour vous. 
Vous trouvcrez done ci-dessous les 
rectifications necessaires aux tableaux 
publics dans Pom's 37 (il y avait 
quelques coquilles, et un bug : les 
nouveaux taqucts de tabulation 
n'etaient pas reconnus par la touche 
TAB), ainsi qu'une serie de patches de 
JL. Renie qui remplacent les fl&ches 
dessinees par "-->" par des icones 
Mousetext. 

J'ai compris la lecon : ce qu'il faul 
quand on vcut un patch a 
AppleWorks, e'est 'Iacher la meute' 
des lecteurs de Pom 's. 



On recherche 

® AppleWorks 1,4 a le merits 
d'envoyer systcmatiquement & 
rimpiimante un 'espace arriere 1 
(backspace, Controle-H) apres chaque 
* A ' et chaque *"\ ce qui nous permet 
d'impiimei a la fiancaise. Bravo. Mais 
il le fait aussi quand on imprime un 
fichier texte sur disque. ce qui peut 

Vous trouverez done aussi ci-dessous 
une premiere liste de 'demandes de 
patches*. Envoycz-nous vous aussi 
vos demandes, et, si vous le pouvez, 
vos reponses. 



AppleWorks 2.0 : corrections 



BLOC 


OCTET 




REfiPLRCER FAR 


S 1 TUfiT 1 OH 


COrinEMTR 1 RES 


$ 83 
D131 


$ 03 


bp 3D 31) 3D 
3D 3U YC R5 


60 3U 3D 3D 
3D 3D 8R R5 


SLG . n 1 

Trai tement 
de textes 


tn-tete des 
fichiers : 
taquets de 
tabu 1 at ion 


$ 92 

D 146 


$ B6 


BE) 1 1 7C C9 7C 
DO F2 


BO 1 1 7C C9 8R 
DO F2 


SEG.M1 
Tra i temen t 
de textes. 


Fonct ionne- 
ment de la 
touche 
TRB 


$ 92 
D146 


$ 1F9 


BO 11 7C CO 7C 
DO F4 


BO 11 7C C9 8fi 
DO F4 


$103 
0239 


$173 


A9 5F 20 84 11 
RE 9C 


R9 93 20 84 11 
RE 9C 


SEG.m 




$104 
D260 


$ 00 


60 04 7C 06 09 
7C 02 5F 5F 


60 04 9F 06 09 
94 02 5F 5F 


SEG.ni 





Pom's n° 38 



39 



Sire gennnt. Si qnelqn'un pouvait 
reperer le passage concernd, on peut 
desormais, avec TimeOut et 
UltraMacros, faire des patches 
p r u v i s o i r t s , des patches 
memoirt'. Du coup, on pourrait 
peut-§tre envisager aussi d'introduire 
cette caracteristique dans AppleWorks 
2.0. 

(D En base de donnees, il reapparalt 
encore unc fenctre avee ccs maudits 
quand on veut effacer un format de 
rapport. Si quelqu'un pouvait la 
trourer... 

© Comment modifier la ligne haute 

de " — " el la ligne basse de 

M " ? Cest facile je crois, mais un 

patch Mousetext peut cr6er la 
confusion enixe les 6crans iraiiement 
de textes et les ecrans de menus. 

® Patch pour les "!" de 
SupcrMacroWorks et UltraMacros 
(boot). Un peu de de'sassemblage est 
n6cessaire ici, run et ('autre se 

chargcant avant AppleWorks. 

P.S. 1 - Le patch & AppleWorks 2.0 
qui remplace, en traitement de textes, 
le damier par le symhole Mousetext 
<Jieturn> , public dans Pom's 35 page 
63, empeche UltraMacros de trouver 
les Return dans sa macro <find> 
(t-Return). On peut suit refuirt une 
macro t<3 -Return avec <peek 
$]0F5> r soit patcher UltraMacros 
comme le propose Randy Brandt 
lui-meme : 

BLOAD ULTRA. SYSTEM, T$FF, 
AS192J 

POKE {(PEEK 10197) i 256 * 

PEEK (MQR)) + 8195), 77 J 

BSAVE ULTRA. SYSTEM, TSYS, 
A81 92 J 

P.S. 2 - L'incapacite dVltraMacros (d 
la difference de SuperMacroWorks) a 
afficher les caracteres Mousetext 
pruduil des risultats curieux avec tries 
patches pour les menus dans la macro 
<msg>. Deux solutions : soit vous ne 
fahes pas le patch en bloc $103 — 
octet $I2E, soit vous donnez A la 
macro <msg> des messages de toute 
la longueur de la ligne de traits du bos. 



AppleWorks 1.4 : corrections 



BLOC 


OCTET 


AMCIENNE CHAINE 


REMPLflCER PAR 


SITUATION 


COMMEhTAIRES 


$ 97 
0131 


* 07 


60 3D 3D 3D 3D 
3D 3D 21 A5 


60 3D 3D 3D 3D 
3D 3D 80 fi5 


SEG.M1 

Irai tement 
do textes 


En-tete das 

f i ch i ers : 
toque ts 

tabu 1 a t i on 


$ 92 

D146 


$ 26 


BD 11 7D C9 21 
DO F2 


BD 11 7D C9 On 
DO F2 


SEC .Ml 
Tra i tement 
de textes. 


Fonct i onne— 
raent de la 
touche 
TAB 


D 146 


t IRQ 


DO F4 


BD 11 7D C9 8R 
DO F4 


S AO 
□ 160 


$1E3 


DO 04 R9 21 DO 
06 


DO 04 A9 8A 00 
06 


SEG.rtl 

Trai tement 
de textes 


nodi f icat ion 
des taquets 
de 

tabu 1 at (on 


$100 
□256 


Z 173 


R9 5F 20 64 11 
RE QC 


AO 03 20 84 11 

PiE OC 


sec Ml 




$101 

U257 


$ 55 


60 04 21 0C 09 
21 02 3F 3F 


GO 04 9F 06 09 
94 02 5F 5F 


SCC.M1 





AppleWorks 1.4 : fleches Mousetext 

Patches de Jean-Louis Renii, que les vols de palonubes 
ont inspire pour ameliorer les filches d 'AppleWorks. 



BLCC 


OCTET 


ANCIEMNE CHAINE 


REKPLACEft PAR 


SITUATION 


COMMENTA 1 RES 


$00E 
D0 14 


$083 


60 04 20 2D 2D 
3E 01 02 


60 04 20 93 93 
95 Of 02 


APLUORKS . 
SVSTEM 
C Menus > 


F 1 ache 
sur 1 e n° 

choisi . 


$04 B 
0075 


$0A2 


1D 2D 2D 3E 20 
6F 72 20 3C 2D 
2D 20 20 


ID 93 93 95 20 
6F 75 20 88 93 

93 20 20 


seo.mo 

Base 
de 

Donnccs 


change 
organ i sa t i on 
6cran Ofl-X 

+ correction 

du Bug "or" 

1 lane bas 
<— Plu* 

1 i gne bas 
Plus —> 


$04B 
0075 


$0E0 


73 24 2D 2D 3E 
20 81 20 20 3C 
2D 2D 20 20 


23 24 93 93 95 
20 81 20 20 88 
93 93 20 20 


S04B 
D075 


$ 1DD 


OA 3C 2D 2D 2D 
20 50 6C 


OR 88 93 93 93 
20 50 6C 


$049 
D075 


$ 1ED 


73 20 2D 2D 2D 
3E 11 49 


73 24 93 93 93 
95 11 49 


$061 
D097 


$ 148 


72 74 20 20 2D 
3E 20 6F 


72 74 20 93 93 
95 20 6F 


SEG.ni 
6 d 


Menu Forma t 
Rappor t 


$051 
D097 


$150 


75 20 3C 20 2D 
20 20 44 


75 20 88 93 93 
20 20 44 


SEG.ni 
BdD 


Menu Format 
Rapport 


$061 
D007 


$ 190 


27 2D 2D 3E 20 
8 1 20 3C 2D 20 
20 20 


27 93 93 95 20 
81 20 88 93 93 
20 20 


SEG.ni 
BdD 


Menu Format 
Rapport 


$062 
D093 


$ 103 


£ " OR 3C 2D 2D 
2D 20 50 


6E Ofl 88 93 93 
93 20 50 


SEO.m 

BdD 


Foraat 
Rappor t 
L i gne bas 
Plus — > 
at < — Plus 


$062 

uuyH 


$183 


75 73 20 2D 2D 
2D 3E 11 


75 73 20 93 93 
93 95 11 


$069 
D105 


$110 


20 20 3E 20 20 
20 3C 2D 2D 20 


93 93 95 20 20 
20 88 93 93 20 


SEG.ni 
BdD 


Ride format 
rapport BdD 


$105 
0261 


$0F7 


60 03 7D 3D 3E 
flo 00 


60 03 93 93 95 
AO 00 


Menus 


Menu disques, 
Sal act ion das 
i i eh i ers 


$1»F 
D287 


$149 


60 03 2D 2D 3E 
02 20 


60 03 93 93 95 
02 20 


SEG.ni 
Menus 


1 den pour 1 e 
bureau 



40 



Pom's n° 38 



Jean-Luc 'Bazawgue 





De nombreux lecteurs 
pratiquant l'assembleur 
68000 desiraient avoir uii 
'noyau' d'accessoire simple 

— mais complet — leur 
permettant de construire 
facilement leurs propres 
accessoires. Voici done ce 
noyau, quelque pen 
agremente puisqu'il s'agit 
d'un accessoire permettant 
d'ejecter les disquettes - — 
apres les avoir mises a jour 

— et de 'redemarrer' le 
Macintosh. 

Nous avons baptist cet accessoire 
*PR#6' , ce qui ne manquera pas 
d'intriguer les utilisateurs de 
Macintosh qui ne sont pas passes par 




I'Apple // ; li convient done de dire 
que PR#6 est la mcthode — 
quasi-legendaire — utilisee par les 
Applemaniaques pour 'rebooted leur 
ordinatcur. 

Le fait que cet accessoire soil avant 
tout un 'noyau' laissc apparaitre des 
branchements qui ne sont pas 
utilises ; e'est k ces emplacements que 
seront placets vos routines d'edition, 
de gestion du curseur, etc. 

Nous n'avons pas ici plac6 les 
routines de Couper, Coller... qui ne 
soul employees que par les accessoires 
qui gerent du texte ou du graphisme. 
Vous pouvez en revanche utiliser de 
telles routines publices dans les 
precedents numeros de Pom's 
(Kruptos, Ad litteram.,,)" 



a 



Fichier TR6Job' 



Asm PR6.Asm Exec Edit 

Link PR6.Link Font/DA Mover Edit 

Fichier TR6.Link' 

i 

/NoStrip 

/Resources 

PR6 

/output Accessoire "PR#6" 
/Type 'DFIL' 'DMOV 
$ 

Fichier 'PR6.Asm' 

RESOURCE 'DRVR* 29 TR#6' 
INCLUDE FSEqu.Txt 
INCLUDE Traps.Txt 



INCLUDE 


SysEqu.D 


INCLUDE 


ToolEqu.D 


INCLUDE 


QuickEqu.D 


INCLUDE 


PackMacs.Txt 


HandleCtl 


EQU 


WindowSize 


HandleControle 


EQU 


HandleCtl+4 


TamponIO 


EQU 


HandleControle+4 


TailleTampon 


EQU 


TamponIO+100 


Oui 


EQU 


$100 


Base 







DC 


$400 


DC 





DC 


$16A 


DC 





DC 


Ouverture-Base 


DC 


Status-Base 


DC 


Controle-Base 


DC 


Status-Base 


DC 


Fermetu re-Base 



A 



Pom's n° 38 



41 



Titre ; Fermeture de l'accessoire 



DC.B 


4,TR#6',0 










Fermeture 




: Ouverture de l'accessoire 




A3-A4,-(SP) 






MOVEM.L 


Ouverture 




MOVEA.L 


A1,A4 


MOVEM.L 


D3-D7/A1-A4,-(SP) 


MOVEA.L 


dCtiWindow(A4),^ 


MOVEA.L 


A1,A4 


MOVF.I. 


AV(SP) 


TST.L 


dCtlWindow(A4) 


_Dispos\Vindow 


BNE 


Status4 


CLR.L 


dCtlWindow(A4) 


SUBQ.L 


#4,SP 


MOVEA.L 


A4,A1 


MOVE.L 


SP,-(SP) 


MOVEM.L 


(SP)+,A3-A4 


_GetPort 




BRA 


Status 


MOVE.L 


#TailleTampon,DO 






_NewPtr / clear 


; Routine de controle 


TST 


DO 






BEQ.S 


MemoireOK 


Controle 




MOVE 


#7,-(SP> 


MOVEM.L 


D3-D7/A1-A4,-(SP 


_SysBeep 






A1 Ad 


BRA 


Status2 


MOVEA.L 


A0,A2 






i\i\J V J2/V. L 


Uv-UVV UUlUW\nftJ f r 


MemoireOK 




MOVE.L 


A3,-(SP> 


MOVEA.L 


A0,A3 


_SetPort 




SUBQ.L 


#4 / SP 


MOVE 


CSCode(A2),D0 


MOVE.L 


A3,-{SP) 


CMPI 


#accEvent / DO 


PEA 


RectFenetre 


BEQ.S 


Evenement 


PEA 


Titre 


CMPI 


#accCursor,DO 


MOVE 


#Oui,-(SP) 


BEQ 


Curseur 


MOVE 


#noCrowDocProc / -(SP) 


CMPI 


#accCut,D0 


MOVEQ.L 


#-l,D0 


BEQ 


Couper 


MOVE.L 


D0,-(SP) 


CMPI 


#accCopy,D0 


MOVE 


#Oui,-(SP) 


BEQ 


Copier 


CLR.L 


-(SP) 


CMPI 


#accPaste,DO 


_New Window 


BEQ 


Coller 


_SetPort 




CMPI 


#accClear,DO 


MOVE.L 


A3,dCtlWindow(A4) 


BEQ 


Effacer 


MOVE.L 


DctlRefNum(A4) / WindowKind(A3) 


BRA 


Status3 


; Affichage du bouton 


; Aiguillage des 


evenements 


SUBQ.L 


#4,SP 


Evenement 




MOVE.L 


A3,-(SP) 


MOVEA.L 


CSParam(A2),A2 


PEA 


RcctBouton 


MOVE 


EvtNum(A2),D0 


PEA 


TitreBouton 


CMPI 


#mButDwnEvt,DO 


MOVE 


#Oui,-(SP) 


BEQ.S 


Contenu 


CLR.L 


-(SP) 


CMPI 


#keyDwnEvt,DO 


CLR.L 


<S?) 


BEQ 


Touche 


CLR.L 


<SP) 


CMPI 


#autoKeyEvt,DO 


_NcwControl 


BEQ 


Touche 


MOVE.L 


(SP)+,HandleCtl<A3) 


CMPI 


#updatEvt / DO 


JnitCursor 




BEQ 


Miselour 


Status2 




CMPI 


WactivateEvt,DO 


_SetPort 




BEQ 


Active 


Status4 




BRA 


Starus3 


MOVE.L 


dCtlWindow(A4) / A3 






Starus3 




; Dans la fenelro de l'accessoire 


MOVEM.L 


(SP)+,D3-D7/A1-A4 






Status 




Contenu 




MOVFQ 


*0,D0 


PEA 


F.vtMcmse(A2) 


RTS 




_GlobalToLocal 



42 



Pom's n° 38 



CLR -(SP) 
MOVE.L EvtMouse(A2), (SP) 
MOVE.L A3,-(SP) 
PEA HandleControle(A3) 
TindControl 



TST 
BEQ 
CLR 
MOVE.L 
MOVE.L 
CLR.L 
_TrackControl 
TST (SP)+ 



<SP)+ 
Status3 
(SP) 

HandleControle(A3>,-(SP) 
EvtMouse(A2),-(SP) 
-(SP) 





Uoulez-uous rede 


marrer 
Qui 


? 



CLR.L -(SP) 
_Copy0its 

MOVEM.L (SPH,A0-A1/D0-D2 

UNI.K A6 

RTS 

; Pour faire un 'noyau' complet 



BEQ 


Starus3 


Couper 






BRA 


Bouton 


Starus3 






BRA 




Touche 




Copier 






BRA 


Starus3 


BRA 


Statns3 








Coller 






; Routine de mise a jour 


BRA 


Starus3 








Effacer 






Misejour 




BRA 


Status3 




MOVE.L 


A3HSP) 


Curseur 






_BeginUpdate 


BRA 


Status^ 




BSR 


PoliceChicago 


Active 






BSR 


AffichePoms 


BRA 


Starus3 




MOVE.L 


#$00100030,-(SP) 








_MoveTo 




Bouton 






PEA 


Chainc 


MOVE 


#l,ioVDrvNum(A0) 


_DrawSrring 


_Eject 






MOVE.L 


A3 r (SP) 


MOVE 


#2,ioVDrvNum(A0) 


_DrawControls 


Eject 






MOVE.L 


A3,-(5P) 


JMP 


S4U000A 




_EndUpdate 








BRA 


Status3 


RectFenctrc 


DC 


41,4,88,242 






RcctBouton 


DC 


24,162,40,216 


PoliceChicago 




RcctPorns 


DC 


8,8,40,40 


CLR 


-(SP) 








_Textt'ont 




Chaine 


DGB 


24,'Voulez-vuus 


MOVE 


#12,-(SP) 






redemarrcr ?',0 


_TextSize 




TitreBouton 


DC.B 


3,'Oui* 


RTS 






.Align 


2 


AffichePoms 




Poms 


DC.L 


$00000000,$00000050 


Tampon 


SET -bitmaprec 




DCL 


$U0000080,$00001100 


LINK 


A6,#Tampon 




DC.L 


$000008AA,$00000155 


MOVEM.L 


A0-A4/DQ-D?.,-(SP> 




DC.L 


$000000 A A^OOOOl 401 


LEA 


Poms,A0 




DC.L 


$00002A02,$00004514 


MOVE.L 


A0,Tampon i baseAddr( A6) 




DC.L 


$OOOOA280,$00015140 


MOVE 


#4,Tam pon+rowBy tes(A6) 




DCL 


$000228AO,$00051440 


CLR.L 


Tampon+bounds(A6) 




DC.L 


$00028AOO,$00014560 


MOVE.L 


#$200020, 




DCL 


$0O28A2AO,$0O545140 




Tampon+bounds+bottom(A6) 




DC.L 


$008A2980,$00453D7C 


PEA 


Tauipon+baseAddr(A6) 




DCL 


$00A2FFD6,$1451FEAB 


MOVEA.L 


A3,A0 




DCL 


$2A28FD45,$4515FAA3 


ADDQ.L 


#2,A0 




DCL 


$A20AFD45,$5100FAA3 


MOVE.L 


A0,-(SP) 




DCL 


$2A007D46 / $14007AAA 


PEA 


Tampon+bounds(A6) 




DCL 


$OA003D54,$05001AA8 


PEA 


RcctPorns 




DCt. 


$02800DDO$01000660 


CLR 


-(SP) 









Pom's n° 38 



43 



Puzzle est une application 
ludique des possibilities 
graph iques du Macintosh. 
Entierement ecrite en 
assembleur 68000 (les 
amateurs apprecieront), 
1'application est d'un 
emploi tres simple, ce qui a 
entre autres avantages celui 
de limiter la taille du mode 
d'emploi a quelqucs ligncs. 

II est en effci simplemeru necessaire 
d'ouvrir un document Taint 1 
(MacPaint. FulLPaint...) ; Puzzle en 
extrail la parlie superieure gauche, 
l'affiche, puis la melange. A vous de 
'rcconstruire' l'image initiale. 
Pour conclurc, notons que le modele 
original demeurc affiche cn 
permanence pour comparaison, et qu'il 
est possible d'obtenir une nouvelle 
repartition cn cmployani Particle 
'melange' du menu 'Jeux\ £^ 

Fichier Tuzzle.Job' 




Marc Qirati 



ASM 


InitManagers 


Exec 


Edit 


ASM 


SotUpMonu 


Exec 


Edit 


ASM 


SclUpWindow 


Exec 


Edit 


ASM 


CrtTabO 


Exec 


EdU 


ASM 


DrawPuzzle 


Exec 


Edit 


ASM 


Melange 


Exec 


Edit 


ASM 


Displacement 


Exec 


Edit 


ASM 


Puzzle.asm 


Exec 


Edit 


LINK 


Puzzle. Link 


Exec 


Edit 


RMAKER 


puzzla.r 


Finder 


Edit 



Fichier Tuzzle.Link' 

[ 

Puzzle 

Ini l managers 

SetUpMenu 

SetUpWindow 

CrlTabO 

DrawPuzzle 

Melange 

Deplacement 

/Output Fuzzl&cotta 
/TYPE TEMP 



Fichier 'Puzzle.R' 

Puzzle 
APPLSAMP 

* Dialogues CKTTABO 
TYPE DLOG 
,128 

Conversion StartupScreen. 
5012080390 



Visible NoGoAway 

1 



129 

TYPE DITL 
,129 

1 

StaticTcxt 
51025 260 

Choisissez voire Puzzle Taquin . 

TYPE DLOG 
,130 

Conversion StartupScreen. 

100 100 190 400 

Visible NoGoAway 

1 



131 

TYPE DITL 
,131 

4 

Button 
60 20 SO BU 
CANCEL 

Button 
&0120 80 ISO 
OK 

StaUcTexl 

152U363UU 

Attention : si startupScreen 

StaticTcxt 

352056300 

existe il sera Modifie !!! 

TYPE ALRT 
,132 

100 50200 450 

133 

7FFF 

TYPE DITL 
,133 

2 



•Windows 
Type WIND 
,151 

PUZZLE 
4010280 250 
Visible NoGoAway 


J 

Type WIND 
,152 
MODELE 
40 260 280 500 

Visible NoGoAway 







INCLUDE 



Puzzle. Code 



Fichier 

'InitManagers. Asm' 

; InitManagcrs 

XDEF XInitManagers 



TRAP 
.TRAP 
.TRAP 
TRAP 
.TRAP 
TRAP 
.TRAP 
TRAP 



_InitGraf 
Jnit Fonts 
JnitWindows 

JjvftMpnus 

_InitDialogs 

JnliCursor 
_FlushEvents 
TFlnit 



SA86E 
5A8FE 
SA912 
SA930 
SA97B 
5A850 
SA032 
SA9CC 



; InitManagers 

XInitManagers 

PEA -4(A5) 

_InirGraf 

_InitFonts 

MOVE.L #SOO0OFFFF,DO 

_FUishEvpnts 

_InitWindows 

_Init.Menus 

CLR.L -(SP) 

_InitDialogs 

_TElnit 

_InltCursor 

RTS 



StaticTcxt 








157035450 

Creation Startupscrecn Impossible !!! 


END 






Fichier 










Button 

7520 9580 


'SetUpMenu.Asm' 




CANCEL 


; SetUpMenu 






* menus 








Type MENLI 


XDFF 


XSotl IpMonii 




.1 


XREF 


AppIcII 




\I4 


XREF 
XREF 


FHeH 
JeuxH 




.2 








Pile 


.TRAP 


_debuggor 


SA9FF 


Quitte 


.TRAP 


_GetRMenu 


SA9BF 




.TRAP 


_InserLMenu 


SA935 


£ 


.TRAP 


_DrawMenuBar 


SA937 


Jcux 


.TRAP 


_AddRos Menu 


SAWD 


Autre jeu 








Melange 


XSetUpMenu 







44 



Pom's n c : 



;Menu Apple 

CLR.L -<SP) 
MOVE #1,-<SP) 
_Gp»RMpnu 

MOVE.L <SP),ApplcH(A5) 
MOVE.L <SP),-<5P) 

CLR -(SP) 
_InsertMenu 

; Add Desk Accessoiries 
MOVEL rDRVR\-(SP> 
_Add ResMenu 

; File Menu 

CLR.L -(SP) 
MOVE #?,-(SP) 
_GetRMcnu 

MOVE.L (SP),FileH(A5) 
CLR -(SP) 
_InsortMenu 

; Jeux Menu 

CLKX -(SP) 
MOVE #3,-(SP> 
_GetRMonu 

MOVE.L (SP)JeuxII<A5) 
CLK -(SP) 
JnsertMenu 

Draw Menu Bar 

RTS 
END 



Fichier 

'SetUpWindow.Asm' 

;SetUpWindow 



XDEF XSetUpWsndow 

XREF WindStorol 

XREF WindStore2 

XREF WWindowl 

XREF WWindow2 

.TRAP .debugger SA9FF 

.TRAP _GetNewWindow SA9BD 

.TRAP _SetPort SA873 

.TRAP _MovcTo $ Aft 93 

.TRAP _Diaw5uing SA884 

XSelUpWindow 

CLR.L -(5P> 

MOVE #152,-(SP) 

PEA WindStore2(A5) 



MOVE.L #0,-(SP> 

_GetNewWindow 

MOVE.L (SP)+,VVWindo w2(A5) 

CLR.L -(SP) 

MOVE #151,-(5P) 

PEA Wind5torel(A5) 

MOVE.L #-l,-(SP) 

_GetN ewWi nd o w 

MOVE.L (SP) i ,WWindowl(A5) 

MOVE.L WWindowl(A5) ( -(SI>) 
SetPort 



MOVE #20,-(SP) 

MOVE #2U,-(SP) 
_MoveTo 

PEA 'Choisir un nouveau Jeu' 



DravvString 



MOVE #20.-(SP) 

MOVE #35,-(SP) 
_MoveTo 

PEA 'dans le Menu Jeux 

_DrawS tring 
RTS 

END 



Fichier 

'CrtTabO.Asm' 



; CrtTabO 



XDEF 


XcrtTabO 




.TRAP 


_dubugger 


5A9FT 


TRAP 


Open 


SA00O 


.TRAP 


Zdose 


SA001 


.TRAP 


_Read 




-TRAP 


_Write 


SA003 


TRAP 


_Create 




TRAP 


Delete 


SA009 


.TRAP 


_Alloca tp 




; I/O System 






; Modes pour ioPosMode 




fsAtMark 


EQU 





fsFrom Start 


F.QU 


1 


fsFromLEOF 


EQU 


2 


fsFrom Marie 


htJU 


3 


; Permissions 


^our IoPermssn 




v~-\. All \ L'l III 







fcRdPc-rm 


EQU 


] 


fsWrPenn 


EQU 


2 


fsRdWrPerm 


EQU 


3 


; I/O record 






ioQLiSize 


EQU 


S32 


ioCompIotior 


EQU 


SC 


iuResull 


EQU 


S10 


ioHleName 


EQU 


S12 


ioVRefNum 


EQU 


S16 


ioDrvKum 


EQU 


$16 


ioRefNum 


EQU 


S18 


ioFileType 


EQU 


S1A 


; zones pour 


Read _Writc 




io Buffer 


EQU 


$20 


ioByleCViunt 


EQU 


$24 


ioNumDonc 


EQU 


S28 


ioPosMode 


EQU 


&2C 


ioPosOffeot 


F.QU 


S2E 


; zones pour 


_ Allocate 




ioReqCount 


EQU 


S24 


ioActCount 


EQU 


S28 


; zones pour _ 


Open 




ioPermssn 


EQU 


SIB 


ioOwnBuf 


EQU 


sic 


.TRAP 


Pack3 


SA9E^ 


; Reply record data structure 




rGood 


EQU 





rType 


EQU 


2 


rVolume 


EQU 


6 


rVersion 


EQU 


8 



I i"> uillc 


FOU 


10 

AW 


■sfGelFilc 


EQU 


2 








TRAP 


IjetlSewL/ialog 




.TRAP 


_Alcrt 


SA985 


TRAP 


_SetPort 


5A673 


.TRAP 


_Modal Dialog 


SA991 


.TRAP 


_CloEoDialog 


SA982 


.TRAP 


StupAleiL 


SA9oo 


Jl tlz JT 

dWindLen 




C A A 
*AA 


, Macro Lect 






MACRO 


_LectRl = 




LEA 


Buf(A5),A6 




MOvb.L 


Ao,iouurrertAU> 




MOVE.L 


AG.Al 




MOVE.L 


#5U,D5 




(Rl) 






CLR.B 


(A6)+ 




DBRA 


D5,{Rl} 





Road 



MOVE.L A1,A2 
ADD. L ioN urn Uo ne(AO), A2 
1 



; Macro Rout 




MACRO 


_RoutRl,R2,R3,R4 = 


ADDQ 


#1,D4 


CMP 


#(24G/8),D4 


BLE 


[Rl] 


CMP 


B72,D4 


BN'E 


[R2 


CLR 


D4 


m 




TST.B 


-(A3) 


w 




CMPA.I. 


A3A4 


BEQ 


FinRout 


CMPAX 


A1.A2 


BNE 


IR3J 


CMP 


#-39,ioResult(A0) 


BEQ 


FinRout 


Lect 


[R4] 


IK3I 
1 




XCi tTabO 




; Dialog explications 


CLR.L 


-(SP) 


MOVE 


*128,-(SP) 


TEA 


DStoragc 


MOVE.L 


ff-l,-(SP) 


GetMewDialog 


MOVE.L 


(SP)!^ 


; Standard File 




MOVE 


#82,-(SP) 


MOVE 


#124,-(SP) 


CLR.L 


-(SP) 


CLR.L 


-(SP) 


MOVE 


#1.-CSP) 


PEA 


sfTypcList 


CLR.L 


-(SP) 


PEA 


siKeply(Ab) 


MOVE.W 


#sfGulFili_v(SP) 


_Pack3 




MOVE.L 


A6,-(SP) 


_CloseDialog 


LEA 


sfReply(A5),A0 


MOVF 


rGnnd(AD),n4 



Pom's n° 38 



OpenFaint 



BNE 
RTS 

; Open fichier MacPaint 

OpenPaint 

MOVE.L 
LEA 
CLR.L 
LEA. 
MOVE-L 
MOVE 



CLR.B 
MOVE.B 
CLR-L 
Open 



AQ,A1 

Diskl(A5),A0 
ioCompletion(AQ) 

rMan\Q<Al)A6 

AO,ioFiieName(AO) 
rVolume(Al), 
ioVRefNum(AO) 
ioFileType(AO) 
#fsRdPerm,ioPcrm55n(A0) 
ioOwnBuf(AO) 



; Rab tableau sortie 

RabTabO 

CLR.L 

MOVE 

SUBQ.L 

MOVEX 
KabO 

CLR.B 

DBRA 



D2 

#«240/8)*240),D2 
#1,D2 
A3.A6 



(A6)+ 
D2,Rabo 



; Routine conversion 

LEA DiskI(A5)A0 
MOVE.L #5l2,ioByteCount(A0) 
MOVE SfsFromStart.ioPosModefAO) 
MOVE.L ff5t2,ioPosOffset(A0) 



MOVE.L 


A3.A4 


ADD.L 


#«240/8)*240),A4 


CLR 


D4 


_Lect 


KO 


Rout 




CLR.L 


D2 


MOVE.B 


<A1)+,D2 


CMPA-L 


A1.A2 


BNE 


TestB 


CMP 


#-39,ioResult<A0) 


BEQ 


FinRout 


_Lect 


10 


lestB 




BTST 


ff7,D2 


BNE 


Bir7»1d 


Bil7a0 




MOVE.B 


(A1>+,(A3)+ 


_Rout 


E0,F0,GO,H0 


DBRA 


D?,Rit7aO 


BRA 


Rout 


BU7ald 




NEG.L 


U2 


ADD.L 


#256,D2 


Bit7al 




MOVE.B 


(Ai>,(A3)t 


.Rout 


fcl,H,G1,rn 


DBRA 


D2,BU7a1 


TST.B 


(A1)+ 


CMPAL 


At,A2 


BNE 


Rout 


CMP 


#-39,ioResult(A0> 


BEQ 


FinRout 


_X*M 


JO 


BKA 


Rout 


FinRouJ 





; Close du Fichier 

_Close 

RTS 
; Data 
DStorage 
itemllil 



DCB.W 
DC 



DWindLen,0 




DiskI 
Buf 

sfRcply 

sfTypvLbt 
END 



DS.B 
D5.B 

D5.B 
DCS 



512 
72 

'P.VFG' 



Fichier 

'DrawPuzzle.Asm' 

; DrawPuzzle 



XDEF 


XDrawPuzzle 




XREF 


WVVinduwl 




XREF 


WWindow2 




. 1 KAr 


^Debugger 


SA9FF 


.XRAr 




SA89D 


.1 KAr 


J'enSize 


5Adye 


TRAP 


PenN'ormal 


SA89E 


.TRAP 


_MoveTo 


SA893 


.TRAP 


_LineTo 


SASQl 


-TRAP 


_FrarneRect 


5A8A1 


TRAP 


CopyBits 


SA8EC 


TRAP 


_TextMode 


SA889 


-TRAP 


_TcxtSizc 


SA88A 


.TRAP 


_DrawStrtng 


SA884 


TRAP 


_SetPort 


SA873 


TRAP 


_Move\Vindow 


SA91B 


.TRAP 


_PaintRoce 


SA8A2 


XDrawPuzzle 






MOVE.L 


WWindowl(A5),-(SP) 


MOVE 


#10,-(3P) 




MUVt 


*40,-(SP) 




CLR 


-(SP) 





_Mo ve\Vi ndo w 

MOVE.L YWlndow2CA5),-£P) 
MOVE *260,-(SP) 
MOVE ff4G,-(SP) 
CI.R -(SP) 
Move Window 



MOVE.L 
_SetPort 

LEA 
MOVE-L 
MOVE-L 
MOVE.L 
ADDA.L 
MOVL.L 
PEA 
PEA 
CLR 
CLR.L 
CopyBits 



WWindowl<A5MSn 



Bit map AG 

A3,(A6) 

A6,-(SP) 

WWindowl(A5),A6 
#2,A6 

AM&P) 

RectBitMap 
RectBitMap 
-(SP) 
-(SP) 



MOVE #9,-<SP> 
TextSize 

MOVE #4,-(SP) 
_TextModc 
MOVE #180><SP) 
MOVE #227,-(SP) 
MoveTo 
PEA '©MARCUS®' 
_DrawString 



, Global DaU 



MOVE.L 

ADDA-L 

MOVE.L 

MOVE-L 

ADDA.L 

MOVFJ 

PEA 

PEA 



WWindowl(A5)A6 

#2,A6 

A6XSP) 

WWjndow2(A5),A6 

#2,A6 

AMSP) 

ViewRect 

ViewRuct 



MOVE no, (SP> 
CLR.L -(SP) 
_CopyBits 

MOVE.L WWindowKAS), (SP) 
_5otFort 

_Pen\orrnal 

PEA ViewRuct 
FrameRect 



MOVE 


#2,-<SP> 


MOVE 


#2,-(SP> 


_PenSize 




MOVE 


#39,D2 


CLR 


D3 


MOVE 


ff39,D4 


MOVE 


#240,D5 


MOVEQ 


#5,D6 


GrilleV 




MOVE 


D2,-(SP) 


MOVE 


D3,-(SP) 


_MoveTo 




MOVE 


D4,-(SP) 


MOVE 


D5,-(SP) 


LinoTo 




ADD 


340.D2 


ADD 


»40,D4 


DBRA 


D6,CrilleV 


CLR 


D2 


MOVE 


*39,D3 


MOVE 


#240,D4 


MOVE 


#39.D5 


MOVEQ 


ff",D6 


I — 'Mil 

GrilleH 




MOVE 


D2.-(SP) 


MOVE 


n\*i /rni 
DJ, (bF) 


_MoveTo 




MUVfc 


U4,-pFJ 


MOVF 


D5,-(SP) 


_LineTo 




ADD 


»40,D3 


ADD 


#4U,D3 


DBRA 


D6.GriUeH 


MOVE 




MOVE 




_PenSize 




PEA 


RectNoir 


_PaintRect 




CLR.L 


D7 


RTS 




ViewRect 


DC 0,0,240,240 


RectNoir 


DC 0,0,39.39 


BitMap 


DCX 


OctLign 


DC 30 


RectBitMap 


DC 0,0,240,240 


Pat 


DS.B 8 



Fichier 

'Melange. Asm 7 

; Melange 



XDEF 
XREF 



X Melange 
WWindowl 



46 



Pom's n° 38 




.TRAP 


_DebuggeT 


SA9FF 


ADD 


D3,D6 


DC 


079,199,040,200,079,239 


.TRAP 


_CopyBits 


SASEC 


CMP 


#0,06 


DC 


080,000, 1 1 9,039,080,040 


.TRAP 


_PainrRect 


SASA2 


BLT 


Hasard 


DC 


ii9,079,0o0,0B0,uy,ny 


.TRAP 


_ Random 


SA861 


CMP 


#35'S,D6 


DC 


080,120,119,159,080,160 


.TRAP 


_SetPort 


SA873 


DGT 


Hasaid 


DC 


119,199,080,200,119,239 












DC 


1 20,000,1 59,039,1 20,040 


XMolange 






MOVE.L 


WWindow1(A5>,A6 


DC 


159,079.120,080.159,119 


MOVEX 


W\Vindowl<A5),-(SP) 


ADDA.L 


*2,A6 


DC 


120,120,159,159,120,160 


_SetPort 






MOVEX 


A6ASP) 


DC 


159,199,120,200,159,239 








MOVE.L 


A6,-<SP) 


DC 


i60,ooo,iyy ,u3y,i 60.U4U 


CMP 


#99,5)7 




LEA 


PosRectM,A3 


DC 


199,079.160.080.199.119 


BEQ 


FinM 




ADDA.L 


D6,A3 


DC 


160,120,199,159,160,160 








MOVE.L 


A3,-(SP) 


DC 


199,199,160200,199,239 


CLK 


U5 




LEA 


PosRectM,A4 


DC 


200,000,239,039,200,010 


CLRX 


D3 




ADDA.L 


D7M 


DC 


239,079,200,080,239.119 








MOVE.L 


A4,-<SP) 


DC 


900, 1 70,739,1 59,200, 1 60 


Httsatd 






MOVE 


*0,-<5P) 


DC 


239,199,200,200,239,239 


CLR 


-(SP) 




CLR.L 


-(SP) 






_Random 






Copy Bits 




END 




MOVE 


(SP)+,D3 


















MOVEX 


A3,-(SP> 


Fichier 




CMP 


#-l6384,D3 




_PairuRect 






BCT 


@1 








Deplacement.Asm' 


MOVE 


#(1*8),D3 




MOVEX 


D6.D7 






BRA 


MovcCarrc 








; Deplacement 




®1 






ADDQ 


« # D5 




CMP 


#0,D3 




CMPI 


#160.D5 


XDEF 


X Deplacement 


BGT 


m 




BNE 


Mai sard 


XREP 


WWindowl 


MOVE 


#-(1*8>,D3 












BRA 


MoveCarre 




FinM 




.TRAP 


Debugger SA9FP 


®2 






RTS 




TRAP 


.PtlnRerr SA8AD 


CMP 


»+l63S4.D3 








.TRAP 


_CopyBits SASEC 


BCT 


®3 




PosRcctM 




TRAP 


JPamtRect SA8A2 


MOVE 


*(6*8),D3 








TRAP 


_CctMouse SA972 


BRA 


MoveCarre 




DC 


000,000,039.039.000.040 




®3 






DC 


030,079,000,080,039, 1 1 9 


XDepJaccmcnt 




MOVE 


#-(6*8),D3 




DC 


000,1 20,039,1 59,000,160 










DC 


039,1 99,0)0,200,039,239 


CMP 


#99,D7 


MoveCarre 






DC 


040,000,079,039,040,040 


BEO 


FinD 








nc 


079,079,040,08-0,079,1 1 9 


PEA 


XYMouso(AS) 


MOVEX 


n7.nfi 




DC 


040,120,079,159,040,160 


Get Mo use 





Pom's n° 38 



CLRL 


D2 


AutreCarre 




CLR 


-CSS) 


MOVE 


XYMou5G + 2<A5),-(SP) 


MOVE 


XYMouse(A5),-(5r) 


LEA 


PosRect,A4 


ADDA.L 


D2,A4 


MOVE.L 


A4,-(SP) 


PtlnRect 




MOVE 


(SP)+,D3 


BNE 


Trouve 


CMP.L 


#<R*35),n? 


BEQ 


FinD 


ADDQ.L 


#8,D2 


BRA 


AutreCarre 


Trouve 




CLRL 


D3 


MOVE 


D2.D3 


ADD 


n (1*8) ,D3 


CMP 


D7.D3 


BEQ 


Contigu 


MOVE 


D2.D3 


ADD 


#(1'8)/D3 


CMP 


D7,D3 


BEQ 


Contigu 


MOVE 


D2.D3 


ADD 


#-(6*8),D3 


CMP 


D7,D3 


BhQ 


Contigu 


MOVE 


D2,D3 


ADD 


#(6*8),D3 


CMP 


D7,D3 


BLQ 


Contigu 


BRA 


FinD 



DC 
DC 
DC 
DC 

XYMouse 

END 



200,000,23 9,039,200,040 
239,079,200,080,239,1 19 
200,120,239,159,200,160 
239,199,200.200,239,239 

DS 2 



MOVEX #99.D7 

EventLoop 
_SystemTask 

CLR -<SP) 
MOVE #S0FFF,-(SP) 
PEA EventRecord 
GetNextEvent 



Fichier Tuzzle.Asm' 


MOVE 


(bP)+,LH) 










Event Loop 










HandleEvcnt 


XREF 


XInitManagers 




BEQ 


EventLoOp 


XREF 


XSetUpMenu 




XREF 


XSetUpWindow 




RTS 




XREF 


XDepIacement 








XREF 


X Melange 




I ldllUltsCVkfi ll 




XREF 


XUrawPuzzle 




un\/p 

IVl^J V 11 


t vtlil IxlrCOlLlT c> UN U 1 11 \ 1 \ 


XREF 


XCrtTabO 




ADD 


DO 

DO, DO 


XDEF 


WindStorel 




MOVE 


EventTable(D0),D0 


XDEF 


WindStore2 




IMP 


EventTable{D0) 


XDEF 


WWindowl 






XDEF 


WWindnw? 




EventTable 




XDEF 


AppleH 




DC 


K'extEvcnt-EventTable 


XDEF 


FileH 




DC 


Mouse Down -EventTable 


XDEF 


JeuxH 




DC 
DC 


NextFvent-F.ventTable 
NcxtE vent -EventTable 


-TRAP 


_dcbuggcr 


SA9FF 


DC 
DC 


NeAtEvcnl-EventTable 
NextEvent-bventTable 


.TRAP 


GetNewUialog 


SA97C 


DC 


Update-EventTable 


.TRAP 


_Alert 


SA985 


DC 


Next Event-Eve ntTable 


-TRAP 


SctPort 


SA873 


DC 


Atlivale-EventTable 


.TRAP 


_Mudal Dialog 


SA991 


DC 


Next Even t-EventTable 


.TRAP 


CloseDialog 


$A982 


DC 


NextEvent-EventTable 


.TRAP 


_StopAlert 


SA986 


DC 


NoxtEvent-EventTable 



Contigu 




dWlndLen 


EQU 


SAA 


Activate 




MOVE.L 


WWindowl (A5),A6 








MOVE.L 


EventRecordt 


ADDA.L 


#2,A6 


.TRAP 


_NewHandle 


$A122 




e v tMossagcf A 5),D? 


MOVEX 


AMSP) 


.TRAP 


_Dispos Handle 


$A023 


MOVEX 


D2,WWindow(A5) 


MOVE.L 


AMSP) 


.TRAP 


~HLock 


$A029 


CMP.L 


WWindowl (A5),D2 


MOVE.L 


A4,-(5P) 


.TRAP 


_HUnLock 


SA02A 


BEQ 


91 


LEA 


PosRect,A6 


.TRAP 


_GetRMcnu 


SAyUF 


CMP.T. 


WWindovv2(A5),D2 


ADDAL 


F)7,A6 


.TRAP 


_InsertM«*nu 


SA935 


BNE 


N'oxtEvent 


MOVE.L 


A6 f (SP) 


.TRAP 


_Dra wMcnu Bar 


SA937 


m 




MOVE 


ff0,-(5P) 


.TRAP 


_AddRcsMenu 


SA94D 


MOVE 


EventKecord+ 


CLR.L 


-<5P) 


.TRAP 


McnuSelect 


SAyJD 




evtMeJa(A5),D3 


_CopyBits 




TRAP 


_HiIiteMenu 


SA938 


BTST 


*0,D3 


MOVE.L 


A4,-(bP) 




EQU 


$10 


BNE 


Next Event 


_PaintRect 


EvtDlkSIze 


MUVE.L 















_SetPort 




MOVE 


D2.D7 


pvt\ : um 


EQU 






evtMcssagc 


EQU 


2 


BRA 


NexlEvent 


FinO 




evtTicks 


EQU 


6 






RTS 




evtMouse 


EQU 


SA 


Update 








cvtMcta 


EQU 


$E 


MOVE.L 


EventRecord + 


PosRect 




evlMBut 


EQU 


SF 




e v lMessage(A 5), 
WWindow(A5) 


DC 


000,000,039/139,000,040 


-TRAP 


_FindWindow 


$A92C 


MOVE.L 


WWindow(A5).-(SP) 


DC 


039,079,000,080,039,119 


-TRAP 


DragWindow 


SA925 


_BegtnUpD 


ate 


DC 


000,120,039,159,000,160 


TRAP 


_Select Window 


SA91F 






DC 


039,199,000,200,039,239 


.TRAP 


_SystemCIick 


5A9B3 


T5T.B 


Tag(A5) 


DC 


040,000,079,039,040,040 


.TRAP 


Gctltem 


$A946 


BEQ 


EndMaj 


DC 


079,079,040,080,079,119 


TRAP 


OpenDeskAcc 


$A9Rfi 


MOVE.L 


WWindow(A5),D2 


DC 


040,120,079,139,040,160 


-TRAT 


_BegtnUpdate 


SA922 


CMP.L 


WWindowl(A5),D2 


DC 


07y,iyV,U40^00,079^39 


TRAP 


_EndUpdate 


5A923 


BNE 


ail 


DC 


080.000,119,039,080,040 


TRAP 


_CopyBils 


SA8EC 


BSR 


RstPuzzle 


DC 


119,079,080,080,119,119 


TRAP 


M FraseRFct 


SA8A3 






DC 


080,1 20,1 1 9,1 59,080,160 


TRAP 


_SystemTask 


SA9B4 


CMP.L 


WWindow2(A5),D2 


DC 


119,199,080,200,119,239 


TRAP 


_GetNifXlEveiit 


SA970 


BNE 


EndMaj 


DC 


120,000,159,039,120,040 








BSR 


RstModele 


DC 


159,079,170,080,1 59,11 9 


WindowSize 


EQU 


S9C 






DC 


1 20,1 20,1 59,1 59,1 20, 1 60 








End Ma j 




DC 


159,199,120,200,159,239 


B5R 


X I ni t Mdi w gers 




MOVE.L 


WWindow(A5),-<SP) 


DC 


160,000,199,039,160,040 


BSK 


XSetUpMenu 




_EndUpdate 


DC 


199,079,160,080,199,119 


BSR 


InitBitMap 




BRA 


KextEvent 


DC 


360,120,199,159,160,160 


CLR.B 


Tag(A5) 








DC 


199,199,160,200,199,239 


BSR 


XSetUpWindow 




MeuseDowM 





48 



Pom's n° 38 



CLR -<SP) 
MOVE.L EventRecord+ 

EvtMouse(A5),-(SP) 
PEA WWiudow(Aj) 
Find Window 



MOVE 
ADD 
MOVE 
JMP 

WindowTable 
DC.W 
DC.W 
new 
DC.W 
DC.W 
DC.W 
DC.W 

InMenu 
CLR.L 
MOVEL 



(SP) + ,DO 
D0,DO 

WindowTable(D0),D0 
WindowTablo(DO) 



NextE vent -WindowTable 
] nMenu-WindowTable 
System Event- WindowTable 
Contont-WindowTablo 
Drag- WindowTable 

NextEvent- Window 1 able 

NextEvent- WindowTable 



EventRecord+ 
evLMouse(A=i),-{SP) 



MenuSelect 



MOVE 


(SP)+,Menu(A5) 


MOVE 


(SP)+,MenuItem<A5) 


MOVE 


Menu(A5),D2 


CMP 


*1,D2 


BF.Q 


InAppleMenu 


CMP 


#2,D2 


BEQ 


InFileMenu 


CMP 


*3,D2 


BEQ 


InJeuxMenu 


CliuixReluin 




CLK 


-(SP) 


_HiliteMcnu 


BRA 


NextEvent 


InAppleMenu 




MOVE.L 


AppleH(A5),-(Sl J ) 


MOVE 


\1pnu1rem(A5),-(5P) 


PEA 


Dc5kName<A5) 


_GetItem 




CLR 


-(SP) 


PEA 


DeskName(A5) 



__Ope nDcbkAcc 
MOVE (bl'J+.DO 



MOVE.L 
SetPort 



WWindpwl(A5),-(SP) 



BRA 


ChoixReturn 


InFileMenu 




MOVE 


#SFF,D0 


RTS 




InJeuxMenu 




CMP 


#l,MenuIt*m(A5) 


BNE 


Choix32 


BSR 


Newjeu 


BRA 


ChuixRetuni 


Choix32 




CMP 


#2,MenuItem(A5) 


BNE 


ChoixReturn 


BSR 


XMeldiiye 


BSR 


SavePuzzle 


BRA 


ChoixReturn 


SystemEvent 




PEA 


EvontRecord(A5) 



MOVE.L WWindow(A5).-(SP) 

_SystemClick 

BRA NextEvent 

Content 

MOVEX WWIndow(A5),D2 



CMP.L 
BNE 
MOVEJ 
_SetPort 
MOVE.L 

SelectWindow 



WWindowl(A5),D2 
NextEvent 
D2,-(SP) 

D2,-<SP) 



BSR 
BSR 
BSR 
BRA 
Drag 

MOVE.L 
MOVE.L 

PEA 



RstPuzzle 
X Do placement 
SavePuzzle 
NextEvent 

WWindc.w(A5),-(SP) 
EventRecordt 
evtMouse(A5)H5P) 
Bounds 



_DragWindnw 



BRA 

NextF.vpnt 
MOVE 

RTS 

No wjcu 



NextEvent 



#500,00 



MOVE.L 


#((24G/e)*240),E 


_NewHandIe 


BNE 


m 


_HLorlc 




MOVEX 


A0,Handle(A5) 


MOVEX 


(A0),A3 


BSR 


XCrtTabO 


TST 


D4 


BEQ 


Q2 


MOVE.L 


Hand!e(A5),A0 


MOVEX 


(A0),A3 


B5R 


XDrawPuzzle 


BSR 


Xmelange 


BSR 


SavePuzzlp 


BSR 


SaveModele 


» 

MOVE L 


Handte(A5),A0 


HUnLock 




_Dispos Handle 


MOVE.B 


#$FF,Tag(A5) 



01 

RTS 

InitBitMop 
LEA 
MOVEL 
MOVE 
CLRX 
MOVE 
MOVE 
LEA 
MOVE.L 
MOVE 
CLRX 
MOVE 
MOVE 

RT5 

SavePuzzle 
MOVE.L 
ADDA.L 
MOVE.L 
PEA 
PEA 
PEA 
MOVE 
CLRX 
_CopyBlts 



TMapl(A5),A6 

A6,Ptrl(A5) 

#-%0,Rowl(A5) 

Boundsl+0(A5) 

#240,Boundsl*4(A5) 

#240,Boundsl+6(A5) 

TMap2(A5),A6 

A6,Ptr2<A5) 

*30,Row2(A5) 

Bounds2+0(A5) 

#240,Bounds2+4(A5) 

#240,Bounds2+6(A5> 



WWindowl(A5)A6 
#2,A6 
A6,-(SP) 
Ptrl(A5) 
ViewRect 
View Reel 
#o,-(sp> 
(SP) 



RTS 

RstPuzzle 
PEA 

MOVEX 

ADDA.L 

MOVEX 

PEA 

PEA 

MOVE 

CLRX 

_CopyBits 

RTS 

SaveModele 
MOVEL 
ADDA.L 
MOVE.L 
PEA 
PEA 
PEA 
MOVE 
CLRX 
_CopyBits 
RTS 

RstModele 
PEA 
MOVE.L 
ADDA.L 
MOVE-L 
PEA 
PEA 
MOVE 
CLRX 
_CopyUits 
RTS 



PtrKAS) 

WWindowl(A5),A6 

*2,A6 

A6,-(SP) 

ViewRect 

ViowRect 

#Q,-(SF) 

-<SP) 



WWindow2(A5),A6 

#7,A6 

A6, (SP) 

Ptr2(A5) 

ViewRect 

ViewRect 

#0,-(SP> 

-(SP) 



Ptr2(A5) 

WWindow2(A5),A6 

#2,A6 

A6 ( -(SP) 

ViewRect 

ViewRect 

ftO.-(SP) 

-(SP) 



;Data 






DStorage 


DCB.W 


DWindLcn.O 


ItemHit 


DC 





Bounds 


DC 


28,4,308,500* 


ViewRect 


DC 


0,0,240,240 


; Global Data 






DeskNamp 


DS 


16 


WWindow 


DS.L 


1 


WWindowl 


DS.L 


1 


WWindow2 


DS.L 


1 


WindStorel 


DS.B 


WindowSizc 


WindStore2 


DS.ti 


WindowSize 


EventRecord 


DS.B 


evtBlkSize 


AppleH 


DSX 


1 


FUpH 


DS.L 


1 


JeuxH 


DSX 


1 


Menu 


DS.L 


1 


Menu! tern 


DS.L 


1 


Handle 


DS.L 


1 


Ptrl 


DS.L 


1 


Rowl 


DS 


1 


Bounds 1 


DS 


4 


Tmapl 


DS.B 


7200 


Ptr2 


DS.L 


1 


Row2 


DS 


1 


Bounds2 


DS 


4 


Tmap2 


DS.B 


7200 


Tag 


DS.B 


1 



END 



Pom's n° 38 





RIEN ! II nc s'cst rien pass6, 40 000 
visiteurs, 400 exposants, prcs de 
200 000 m2 deposition, il ne s'est 
ricn passd a Boston ! He oh! Vous 
trouvez pas que certains exagerent ? 
Que leur faut-il ? Un nouveau Mac 
tous les deux jours ? Ou pcut-ctrc des 
effets d'annonce toutes les deux heures 
9 

Non soyons serieux, lc monde 
Macintosh est desormais complete- 
ment majcur, et si Apple ne sort rien 
de fabuleux pour Apple Expo, les 
nouveautes logicielles et matdriellcs 
foisonncnt. 

Nouveautes 
logicielles 

C'esi la guerre tous azimuts, 
traitements de texte, tableurs, base de 
donnees, logiciels de presentation cn 
tout genre, comment dices vous 
"desktop quelque chose", DAO, CAO, 
etc. tout y passe et Ton irisc 
l'apoplexie. Mais tous necessilent 
plus de me 1 moire vive, plus de 
memoire de masse, plus de vitesse, et 
les niarchands de periphdriques se 
frottent les mains. Qui n'a pas ses 4 
migas de MtV . un petit disque de 
150 r/iegas pour monsieur ? 
Comment ? Mais sans 68030 a 20 
Mhz point de saiut. 

Pourtant, il vous la faudra cette 
extension (malgre la crise) pour faire 
tourncr plcincmcnt lc nouveau 
systemc baptise* 6.0x. 
Ce systcme corrige quelques bugs dn 
MultiFinder 1.0 et arrive avec des 
ulilitaires comme un (petit) generateur 
de macros, une fonction de loupe sur 
le travail en cours et une horloge 
universelle. On remarque quelques 
incompatibilitds logicielles avec le 
nouveau systemc el en particulicr avec 
le generateur de macros. Sont dors et 
deja completement compatibles : 
Microsoft Word 3.02, 46mc 



Dimension, Turbo Pascal 1.1, 
Mac Write 5.0, MacPaint 2.0. Mac 
Draw II, SuperPaint 1.1 et Mac 
Project EL MS Works 1.1 presente des 
problemes avec le generateur de 
macros, et les versions anterieures a 
1,06 d'Exccl ont une certaine 
incompatibilite* d'humeur. Microsoft 
recommande de passer a la version 
1 .5. Prudence done avant de jetcr voire 
ancien sysieme a la poubelle. 

Traitements 
de textes 

Fini le temps des bidouilleurs. Le 
Mac est un outil professionnel 
Monsieur . Comment, mats vous 
utilisez MacWrite, mais quelle 
horreur. Mais aujourd'hui tout 
traitemeni de texte qui se respecte doit 
etre capable de produire l'6dition de fin 
de semaine de votre quotidien avec ses 
supplements cn couleurs Monsieur ! 
En tout cas e'est ce qu'annoncent a peu 
de chose pres Full Write 
Professionnal d'Ashton Tate, et 
WordPerfect. Deux monstres du 
traitemeni de texte, qui vous 
pennettrons de sortir vos letU"es pour 
belle maman avec une qualite 
incomparable. Quest ce qui vous 
manque dans voire traitemeni de textes 
actuel ? Allez dites, e'est pas la peine 
de reflechir. mainicnani ca existe. De 
la simple saisie a la misc en page la 
plus sophistiquee, avec multicolon- 
nage, ddtourage d'images de toute 
provenance, tout y est. Le seul 
problem e e'est qu'on est en train 
d oublier la philosophic premiere du 
Mac : la simplicity ; ct comme 
corollaire une utilisation quasi 
intuitive. Les deux se perdent et il faut 
ddsormais sc pcrdrc dans les 
labyrinthes de documentations de plus 
en plus epaisses et souvent obscures. 
Tout complc fait MacWrite de 
Claris maintenant en version .5.0 
suffit souvent largemenL 



J^LrieCSeSSan 

Tableurs 

Les tableurs ne sont pas en resle. 
Excel de Microsoft dans sa version 
1 .5 prend de la conleur, gagne 
quelques 44 functions el des menus 
personnalisables. Wingz d'Informix 
devrait prendre la relcve pour les 
amiees 90, mais n'en n'a pas fini d'etre 
mis au point, et Full Impact vient 
completer l'offre Macintosh pour 
Ashton Tale. 

Bases de donnees 

4eme dimension d'ACI, ecrasant 
tous ses concurrents, cst-il encore 
utile de citer FoxBase+ dc Fox 

Software, capable de faire tourncr 

des application dc dBase Ill-t- du monde 
MS/DOS (beurk) et ce sans 
modifications, mais qui s'en soucie 
vraiment... Passons. 

HyperCard 

Une version 1.2 est annonc^e avec de 
nouvclles fonctionnalites — le rendant 
pins puissant — qui le fait se 
rapprocher de plus en plus d'une base 
de donnees hors du commun. Dans le 
domaine des utilitaires. Reports 
d'Activision permet de combler les 
lacunes d 'HyperCard en matiere de 
rapports. 

II semble qu'en France, HyperCard n'ait 
pas encore rencontre Tenthousiasme 
qu'on lui connalt outre AUantique. Car 
la grosse question reste ici : que faire 
avec 7 Et pendant qu'on essaie de 
trouver une repouse en Fiance, la 
chame ABC aux U.S.A. utilise 130 
piles et 5 000 cartes pour sa gestion 
des elections prcsidcnticlles. Person- 
nellement je m'en sert pour gerer la 
copropri6t6 dans laqueile j'habite, et 
aucun autre langage m'aurait permis de 
faire la meme chose aussi 
simplcment. El pourquoi pas une 



50 



Pom's n° 38 



rubrique HyperCard dans Pom's. Vos 
contributions scraient les bienvcnues. 

Accessoires 
de bureau 

lis n'ont plus d'accessoires que le 
npm* et nombreux sont ceux qui se 
revelent rapidement indispensables. 

DiskToolsII d'Electronic Arts 
met un Finder en menu 4, Quick 
Keys de CE software permet 
d'utitiser pleinement les possibility 
des claviers ctendus par la creation de 
macros assignees a une seule touche. 
Suit Case de Fifth Generation 
System's manipule polices de 
caraeteres et accessoires de bureau sans 
passer par Font/DA Mover. 
SuperLaser Spool 2.0 de 
SuperMac. dfisormais compatible 
MultiFindcr, rcste le meilleur spooler 
a ce jour. Nous tacherons de consacrer 
une plus grande partie de cette rubrique 
prochainement a la constitution du 
menu 4 ideal. 

Utilitaires divers 

Disk Fit 1.2 de SuperMac el 
Redux 1.0 de Microseeds, vous 
permettrons des sauvegardes rapides et 
efficaces de vos disques durs. Disk 
Express 1.5 de ALSoft, Inc vous 
permetira d'optirniser votre espacc 
disque. 

Et dans la rubrique "il taut-en parler" : 
les virus. Sans aiiribuer a ces sales 
bestioles tous les "Bourn! une grave 
erreur systeme ID xx...'\ il est 
souhailable de prendre des precautions 
elementaires. En particulier, il existe 
un ensemble d'utiiitaires (Virus RX, 
Virus detective, etc.) dont certains 
signes Apple, qu'il est indispensable 
d'avoir dans son dossier systeme. Et, 
croyez moi, la premiere des choses sur 
laquelle mon disque dur ddmarre e'est 
Vaccine INIT de CE Software. 
Alors prudence, ct tcstcz toujours 
loute nouveaute sur disquette 
verrouillee, disque dur deconnecte\ 

Les titres cites ne. couvrent 
malfieurcusernent qu'une iniime paitie 
de toutcs les nouveautes logicielles, et 



ce numero entier de Pom's n'y 
suffirait pas, mais il existe une bible 
en la matiere qui est MacGuide qui 
recense environ 3 500 produits en tout 
genre, leur prix, les adresses, et un 
rapide desenptif de leurs possibiliies. 

Materiel 

Durs les disques ! 

Question : pourquoi en France les 
disques durs pour Mac sont ils 
toujours aussi chers ? Avec un dollar a 
6,50 F, rien ne justifie de tels ecarts 
dc prix, Les fabricants Francais ne 
sont-ils done pas capable de sortir un 
disque dur pour moins de 4 000 F 
TTC. Le Mac et ses p6ripheriques 
sont-ils condamnes a rester en France 
des produits de luxe ? Faites un effort. 
Messieurs. Un Dayna 60 me.gas ne 
coute que 720 S aux Etats-Unis, soil 
environ 4 600 francs ! 

Dans la mcme rubrique, les canes 
accclcratriccs qui commencent la-bas a 
environ 5 000 francs, cnutent ici au 
moins le double. 11 faudra qu'on 
m'cxplique. Et on trouve des modems 
compatibles Hayes (.Anchor 
Automation, Inc) a 240 S. 

Les grands ecrans sont desormais 
nombreux el vuus pouirez trouvcr un 
test complet dans le numero d'aout de 
MACazine. 

Dans la gamme des nouveautes 
materielles, ce sont surtout les 
peripheriques a destination graphiquc 
qui se detachent. Scanners, dont un 
signe Apple, interfacd HyperCard, et 
autres editcurs de diapositives couleurs 
tel Image Maker de Presentation 
Technologies se multiplicnt. Mais 
encore hors de prix pour un utilisateur 
de base. 

Nous tacherons dans nos prochains 
numeros de cibler le sujet de r.ette 
rubrique. Et — Pom's oblige — nous 
ferons des le prochain numero, une 
revue des langages. D'hyperTalk a 
MPW en passant par ZBasic, il yen a 
pour tous les gouts, et ne croyez plus 
que le Mac soil si difficile d 
programmer. C'est juste une question 
de plulosophie I 



Adresses 

ACI 

5, rue Beaujon 

75008 Paris 

« (1) 42 27 37 25 

Acti vision 

3885 Bohannon Dr. 

Menlo Park, CA 94025 

Anchor Automation, Inc 

20675 Bahama Street 

Chast worth, 

CA 91406 

Ashton Tate - LCE 

La Mare a Jouy - Douains 

27120 Pacy sur Eurc 

« 32 6A 63 62 

CE Software 

P.O Box 65580 

West Des Moines, IA 

50265 

Claris P.Ingenierie 

10, rue Mercoeur 

750L1 Paris 

* (1)43 70 71 72 

Dayna 

50 S Main St. 

Suite 530 

.Salt Lake City. UT 84144 

Electronic Arts 

1820 Gateway Dr. 

San Mateo, CA 94404 

Fifth Generation System's 

1322 Bell Ave. 

Suite 1A 

Irvine, CA 94123 

Fox Software 

118 W. South Bondary 

Perrysburg, OH 43551 

Informix 

6, bd du General Leclerc 

92110 Clichy 

•a (1) 42 70 67 74 

MACazine 

#919, P.O Box 9802 

Austin, Texas 78766 

MacGuide 

550 South Wadsworth blvd 
Suite 500 

Lakewood , CO 80226 
Microseeds 
4702 N. Hesperides 
Tampa, FL 3361 
Microsoft 
12, avenue du Quebec 
Z.A de Courtaboeuf 
91957 Les Ulis Cedex 



Pom's if 38 



Presentation Technologies 

743 N. Pasioria Ave. 
Sunnyvale, CA 94086 



SuperMac Symbiotic 

4, rue Robert Schumann 
94220 Charenton 
w(l)43 78 99 99 



WordPerfect corp 

1555 North Technology Way 
Orem.UT 84057 



Pom's 38 



20 elements 



770K dans disque 



disponibles 




'Systeme' DisASM 2.0 Vaccine Virus Rx lyy League Camera DA 





A 



m 



Dossier 'PR*G' PR S 6 KillScores Interferon 3.0 Art Deco ArWiew 1 .5 




m 



A 



-tf=h- 



Dossier 'Puzzle' Puzzle 



virus Virus.bg Ultra JoliVrite 2.0 



Anti nVirus 



-tf=tr- 



A 



Dali 24 



2: 



Anti-Virus 

La disquette Pom's Mac 38 accompagnant ce 
Twmero contient tous les outils necessaires pour 
venir a bout des virus qui — eventuellement — 
envahiraient vos programmes et fichiers. Ces 
outils se presenlent sous different es formes ; 
Virus Rx, KillScores, Anti nVirus el Interferon 

3.0 sont des applications a lancer avec un 

4 double-clic* depuis le Finder ; 

Virus est un accessoire dc bureau a installer 
dans le fichier systeme de votre disquette de 
demarrage avee Font /DA Mover ; 

Vaccine est un programme qui, une fois installc 
dans le dossier systeme de votre disquette de 
demarrage. sera appele depuis le tableau de 
bord suivant le raeme principe que General, 
Frappe clavier, Souris, etc. 

Polices de caracteres 

La disquette 38 contient les polices Ivy League. 
Art Deco, Ultra et Dali. 

Accessoires de bureau 

Camera DA est un accessoire de bureau qui 
produit le meme travail que les 
combinaisoris de touches Commande - 
majuscule - 3 ou Commande - majuscule - 4, 
e'est-a-dire la copie d'ecran sur ImageWriter 
ou sous la forme d'un fichier de type Taint*. 



Il presente toutefois quelques avantages par 
rapport a la fonctlon classlque : 

• la copie d'ecran est toujours possible, 
meme avec les applications qui ne 
l'autorise pas ; 

• l'execution de la copie d'ecran peut etre 
dilleree de 1 a 60 secondes ; 

• la copie avec un menu deroule est 
possible (comme avec les Mac 128 et 
512Ko) ; 

• Camera DA perrnet aussi d'obtenir des 
copies d'ecran avec curseur masque. 

ArtView est un mini 'MacPaint' toujours 
disponible dans le menu 4 . Ecrit par 
Jean- Yves Thuaudet 

JoliWrite est un traitement de textes aux 
possibilites bien sur plus limitees que, par 
exemple. MacWrite. mais qui a l'avantage 
d'etre toujours disponible. 

PR#6 est l'accessoire de redemarrage presente 
dans ce numero de Pom's. 

Applications 

DisASM 2.0 est un desassembleur symbolique 
qui raviera les explorateurs de memoires et 
fichiers. Nous devons cette application a 
Jean-Yves Thuaudet. 

Puzzle est une application ludique entierement 
ecrite en assernbleur, et presentee dans ce 
numero. 



52 



Pom's n° 38 



Oii Ton decouvre ❖ le GS le 
mo ins cher ses premiers 
virus •O' une forme de van- 
dalismc 4- la guerre, 
I'amour ^ les cerveaux de 
l'Apple // ❖ William 
Mensch ^ les accele- 
rateurs le He 'speediske' 
❖ le rongeur en cage 4> le 
Mac cache du GS ^ 
l f AppleWorks 2.1 ^ les 
dumps ecran O le 68881 O 
le Canada Dry des CDA ❖ 
le Systeme 3.2 

Nouvelles du front 

Vive la France ! 

Quel est 1'ordinateur le plus vendu aux 
USA dans les boutiques dinformatique 
personnelle ? Le GS bien sur. Les 
acheteurs americains sont d'ailleurs tres 
heureux. parce qu 'Apple le vend depuis 
pcu de temps avec plus dc mcmoirc : il 
est desormais livre avec... 512Ko ! 
Evidemment, quand il s'agit de uouver 
ct d'acheter les puces Ram supplemen- 
taires pour monier le, GS a 1 280Ko, 
ce qui est le minimum pour le GS 
aujourd'hui, ce n'est pas la joie, vu le 
prix de ces puces... Dans A+ de 
Juilkt, Gary Lilile propose a Apple 
USA une mesure simple pour 
augmenter la vente de GS : cesser de 
vendre des //e ! Un //e neuf revicnt en 
fait PLUS CHER qu'un GS neuf, mais 
il s'en vend toujours, entre autres parce 
qu'il est vendu dans une version 
transformable en GS moyennant... 
plus cher que le prix d'un GS ! 

Ce que Gary Little ne sait pas, e'est 
qu'il existe un pays dans le mondc ou 
les GS sont vendus avec 1 28GKo, ou 
on ne vend plus de //e neufs : e'est la 
France. Franchement, regardez un pcu 
les annonces de la presse devote qui 
vend du compatible IBM oriental : on 
vous vend maintenant des machines 
apparemmcnt pas chores avec.-. OKo 
sur la carte mere, aucune mcmoire ! 
Dcrnandcz done lc prix pour avoir la 
machine avec 64QKn (la mnitie de la 
mcmoire du GS). Au prix des 41256 





aujourd'hui, 1 280Ko sur la carte, mere 
au meme tarif qu'avant, e'est un cadeau 
ROYAL. Alors que les americains 
n'ont droit qu'au systeme et an Finder, 
en France on nous donne GS Write et 
GS Paint avec la machine. On nous a 
mcme donne AppleWorks, que nombre 
d'Amcricains coniinuent a acheter fort 
cher. J'ai pu lire ct entendre nombre de 
critiques adressees a Apple France par 
des possesseurs de GS, et j'ai 
moi-meme ecrit dans Pom's quelques 
gentillesses a propos de certains 
concessionnaires. N'empcche que nous 
sommcs encore les micux lotis. Ce qui 
prouve pcut-etre que les Frangais ont 
bien raisuu d'etre rouspcleurs. . . 



Stan-^vts <B our din 



Virus : enfin 

Alors que toutes les autres machines 
avaient droit a leur virus, l'Apple // 
jusqu'ici restait outrageusement sain. 
Le premier virus pour ProDOS 8, 
appele CyberAids, vient enfin d'etre 
realise outre-Atlanlique (voir Open 
Apple, qui donne aussi le remede). Ce 
virus s'incorporc aux fichicrs SYS et 
finit par detruire le catalogue principal 
des disques ProDOS. Son auteur lui a 
mcmc fait une suite, appelee Festering 
Hate. 

Mgme aux USA, ce virus est ires peu 

diffuse : prevenez cependant Pom's si 
jamais il atteignait nos rivages. Mais 
si vous avez pris les precautions 
d'usage (voir 1'articlc dc Pierre 
Demblon dans Pom's 35 et le mien 

dans Pom's 37 page 55), vous ne 

risqucz pas grand chose. D'autant que la 
communaute des utilisateurs Apple // 
ciant bien autre chose que ce qu'Herve 
Thiricz appcllc dans Pom's 37 «la 
troupe des consommatenrs des 
standards industriels» (suivez mon 
regard...), il y a plus d'exterminateurs 
de virus que de disquettes infectces. 

Boomerang 

Consequence : l'auteur du virus a etc 
rcp6rc par Apple, qui a mis ses avocats 
sur le coup. Avoir le service juridique 
d' Apple sur le dos, e'est deja dur pour 
une 'Major Company' du logiciel 
commc Microsoft (Pom's 36 page 58), 
alors je plains le petit malin qui va 



Ponrsn° 38 



53 



passer soil cn juridiction civile, soil en 
juridiction criminelle auprcs du FBI, 
scion ce qu'aura decide Apple. II est 
vrai que mciire des virus sur des 
scrveurs preciscment au moment ou 
Apple lance son serveur Apple Link 
Individual (excellent serveur), cc n'est 
pas si malin que 5a... 

Les gentils pirates francais qui ont 
diffuse eel ete un vim? GS 'doux' (scs 
degats maximaux sont reffacement des 
blocs standard 00 ct 01 des disqucs 3'5 
formates en ProDOS, et ses auteurs 
ont ties vile diffuse un antidote), 
alimentant ainsi sur quclques scrveurs 
1c dclirc antivirus dont j'ai parle dans 
Pom's 36 ct 37, feraicnt done bicn dc 
se mcficr. Puisque, forcemcnt, commc 
tous les connaisseuxs, ils lisent Pom's, 
qu'ils sachent que la legislation 
francaise rcccnte, concue pour lutter 
contre le vandal isme informaiiquc dans 
les 'institutions* (banqucs, etc.) est 
egalement tres dure. De simples 
gamincrics au depart (le virus du 
groupc true contre la disinfection du 
groupc machin) peuvent etre prises tres 
au scricux par les inlcrets cconomiques 
considerables qui sont cn jcu sur 
cette question du vandalisme 
informatique, et qui nc font pas le 
detail... 

Non, je n'exagcre pas : le GS n'est pas 
une console dc jeux. mais unc tres 
bonne machine polyvalenlc qui sen 
AUSSI au travail (voir Pom's 37 page 
63), il y est meme mcillcur que bicn 
d'aulres. Comme il y a des gens 
intelligents pariout, il y a partout des 
lccteurs de Pom's qui travaillent a 
aiuener le patron a l'Apple Expo pour 
rcrnplaccr son informatique ringarde. Jc 
viens par exemple d'apprendre qu'il 
existe un serveur, montc par un dc nos 
lccteurs, qui tourne avec un //c, Cristcl 
et un Minitcl pour une association 
s'occupant de dons d'organes 
(59.2.45.45). Imagines maintenant un 
GS qui controle un processus 
(production industrielle, monitoring 
dans un hopital, que sais-je encore : on 
a souvent besoin d'une bonne 
d6finition cn couloirs dans lc controle 
de processus) ; un pepin survicnt, et le 
gardien qui joue h Pirates la nuit sur la 
machine du patron DIT que c'csl sans 
doute le virus du groupc true. Ou pirc : 
CEST le virus du groupe true... 



La guerre est-elle 
un jeu ? 

Nos voisins de RFA, dont le pacifisme 
est bicn connu, pensent que non, et 
l'Office pour les Publications pour la 
Jeuncsse a carrcment interdii la 
diffusion dun certain nombre dc jeux 
de MicroProse (ceux qui nc diffuscnt 
pas Wordstar, vous vous rappelez ?), 
comme F15 Strike Eagle et Silent 
Service. Micrnprose a rcussi a faire 
lever l'interdiction pour Silent Service 
seulement. 

Cette interdiction a au moins 
ravamago d'inviter a une reflexion 
critique sur lc contenu des jeux sur 

l'Apple //. Keconnaissons que si on 
compare le nombre dc jeux 
informatiques consacres a la guerre a 

ceux consacres a une autre activite 

essenticlle des hommes, le sexe ct 
l'amour, la disproportion est flagrante 
(sauf pcut-cire... en France, eh eh). 
Mais, a mon avis, cc qui est lc plus 
dangercux dans n'est pas tant de joucr a 
la guerre (il vaut micux y jouer que la 
fairc), mais l'idcologic manichccnnc, 
binaire (les bons conire les mechants) 
qui regne sur nos ecrans depuis les 
'shooting aliens* des ddbuts. Qu'on ne 
se dise pas "c'est juste un jeu" : 
beaucoup trop d'Amdricains, grands et 
pctits, y marchent des deux jambes. 

C'est d'ailleurs pourquoi les fabricants 
de jeux americains, du moins les 
ineilleurs, foul aujourd'hui des jeux 
comme Ultima ou Bard's Tale qui 
ont un contenu moral, educatif : il faut 
etre honnete, serviable, etc. pour 
gagner des poinis. La vraie question, 
en fait, est celle de la qualites des 
jeux. "Boum-boum sur les mechants", 
c'est facile et ca rapporte gros. Le jeu 
qui reproduil fidclement des situations 
historiqucs reelles, qui fait reflcchir, 
c'est plus difficile. 

Mais preciscment Silent Service et 
les aulres jeux de MicroProse sont 
des jeux d'excellente facture. Regardez 
ce que Michel dit de Pirates dans 
Pom's 37. Rciiscz par la meme 
occasion ce que Christian Piard y dit de 
Flight Simulator (mais est-ce un 
jeu ?). A Pom's, nous pensons que lc 
mcilleur moyen de faire reculcr les jeux 
qui rendent bete, c'est de fairc connaitre 
ct soutcnir les jeux dc qualitc, tous les 
jeux; dc qualite (y compris ceux de 
MicroProse). 



Apple // for ever, 
camarades... 

Scion William Mcnsch, Gorbachev 
aurait un Macintosh sur son bureau. 
C'est mieux que 1'horoscope de 
Reagan. Apple, apres sctre organise 
pour la conquete du Pacifique, songe 
tres sdricuscmcni a rcpondre h 
1'invitation que jc lui lancais dans 
Pom's 37 de soccuper dc ce marche-la. 

Avec les progrcs de la detente, les 

mcntaliics changent. 

C'est au point que lc premier jcu 
philo-sovictiquc amcricain vient dc 
sortir pour GS : il s'appelle Tetris et 
est cdite par Spectrum Holobyie. 
Tres belles images de paysages 
sovieiiques, mais lc jeu est une sorte 
de casse-tete d'adrcssc ct dc strategic, cc 
genre dc true a la fois amusant ct 
cnervant, exirememcni simple, qui 
vous fait dire «bon attends, je 
recommence, le prochain coup j'y 
arrive», et cela pendant... des hcures, 
des semaines, des MOIS cnticrs : 
HUIT MOIS exactement selon la 
legende. c'est ce qu'il aurait fallu aux 

cusinonauies sovictiqucs en orbitc 
autour dc la tcrre pour gagner a ce jeu 
pilotc par leur ordinatcur dc bord. . . 

Du cote dc la CIA ct des militaircs US, 
on rcste encore cependant ires 
"bourn-bourn sur les mechants", ct Ton 
oppose a. Apple que le Macintosh 
coniicndrait ccrtaincs technologies 
susceptible* d'etre 11tiIiso.es h des fins 
miluaires (jc suppose que certains ont 
du mal comprendre l'iconc bombe du 
Mac). Mais Ton n'a ricn trouve a 
opposer a l'Apple // : «Le 6502 n'a 
jamais etc tres qualilic pour tucr des 
gcns», dit William Mcnsch. Et voila 
pourquoi John Scullcy, PDG d'Apple, 
declare que la meilleure machine a 
vendre a 1'F.st est le GS. 

Brain storming 

Apres Jean-Louis Gassee et bien 
d'autrcs personnages, apres le rachat dc 
Styleware par Claris, ca devient une 
manie chcz Apple : des que quelqu'un 
fait quelque chose de bicn pour l'Apple 
//, allez hop, on 1'embauche chcz 
Apple, quitte a le faire venir de fautre 
bout du inoiide. La creation 
d'AppleLink Individuel a pompe 
nombre de 'cerveaux' de l'Apple//. Un 



54 



Pom's n° 38 



redactcur en chef de Nibble est passe chez Apple. II rcstait 
un pays dans le mondc prcsqu'aussi bon que nous cn 
maticrc d'Applc // : c'cst I'Australie. Cela essenticllcmcnt 
grace a un homme, Peter Sandys, Dirccteur du Marketing 
pour Macintosh a Apple Ausiralic, qui y a vendu non 
SCuIcmcnt des Mac, mais quantite dc //c et de GS. Lui aussi 
rcjoint le service marketing d'Applc USA pour y vendre des 
Apple //. Scion lui, et selon bicn d'autres, tout montre 
qu'un tournant a etc pr is chez Apple USA qui n'est plus 
une entrcprise Mac exclusivement. Unc machine qui 
rcprcsente un milliard dc dollars dc eluflxe d'affaires annuel 
vaut bien qu'on s'en occupc. 

Ccci dil, rassurez-vous, a Pom's, nous restons solidcmcnt 
accroches la ou nous sommcs, nous ne nous laisserons pas 
achcter. Ou alors il faudrait un pont d'or. Ou au moins 309fc 
de plus... 

Toujours plus 

WDM 

William Mcnsch (voir Pom's 37 page 54) parte decidement 
beaucoup en ce moment. Ce qu'il dit est interessant, mais 
quand quelqu'un parle tant, e'est... qu'il a quelque chose a 
vendre. Que vend-il done ? 

* D'abord, bien sur, des microprocesseurs 6502. Si vous 
pensiez, comme moi, qu'Apple Computer emit 1c principal 
utilisatcur des 6502, vous avez perdu 15 points de vie. 
C'cst 1' Atari 2600, machine de jeux, qui est l'utilisateur 
principal de 6502 dans le mondc de l'informatique 
individuelle. Et dans le monde de rinformatique indus- 
trielle 7 Eh bien, Sony, par cxemple, utilise entre 5 et 10 
millions; de 6502 par an dans ses differents produits. Le 
6502 a d'abord 6te con$u pour les appareils de controle 
clcctronique, et si Wozniak en a mis un dans r Apple /A 
e'est pour cette raison fondamentaie que e'etait ce 
microprocesseur-la qu'il pouvait trouver pour pas trop cher 
chez le marchand de composants du coin. Scion Mensch, 
e'est le 65816 qui a ete le premier microproccsscur congu 
par le Western Design Center en fonction des ordinateurs 
individuals. 

* Ensuite, des 65816 plus rapides pour le GS, Mensch ne 
se contentc pas d'en fournir a Applied Engineering pour son 
accdldrateur GS (voir plus bas), il est en cheville avee deux 
firmes, Zip et DTP, pour fabriqucr des accclcratcurs avec 
cache sur le principe de Zip Chip pour //e. 

* Enfin, et surtout, Mensch vcut nous vendre des... 
ordinateurs. Cela va commencer *en douceur', par unc carte 
auxiliaire de developpement munie de quatre 65832 
tournant en parallele, avec un slot relic directcmcnt a 
chacun. Le "Mensch Family Computer" sc prcscmcra sous 
la forme d'un bolticr a mctirc au-dessus du GS, mais aossi 
e"vcntuellemcnt d'un Atari, d'un Macintosh ou d'un IBM 
PC. Puis, un jour, on pourra lui connecter directemcnt un 
clavier, et un autre jour... on le rieconnectera du GS. 

A voir et essayer. Mais si Mensch pensc qu'un 
micro-ordinateur, e'est juste un boitier autour du 
microprocesseur, je crois qu'il partage le vertige des '80486 



f APPLE II GS, APPLE II E, APPLE II C 
REVEILLEZVOUS ! 



IIG3; Ex:ens;on nemoire GS RAM GS RAM PLUS avec patch 
'Super AppleWcXs' ei memoire cache. Alimentation permanent d*1ou 2 
ca.^es RAM KEEPER Erfin is linaer disponble en quekju&s seconrta* l 

I 
I 

IIGS, HE: Memoire paniiionnabls sous diMdrents systemes 
d*e*ploita:iori avec RAMFACTOR (Patch "Super ApplBWorts.' sur 
fypie it E). Alimentation permanenie avec le module RAMCHARGER 
Disque Winchester 3.5' eiterne, 8JX 20 MO compact el 
rapifle partnionnable sous dHFerents sysiemes. Livre avec selecteur de 

programmes et utilitaires en nombra 



HE: TRANSWARP: Aceeieraieur a 3.6 Mgz da la memoire 

principale auiiliaire ei des acces 3om Vriesse i6g!ab!e 

Exrension memoiro avoc 80 Coonnos RAMWORKS III. 



IIC: Extension memoirs Z-RAM ULTRA 1, 2 ou3, de 256K 
& 1 MO avec oj sans hof!o^& evou CP/AH. (Z-SO B 4MgzJ. Compatible 
IIC 128K, 12SK Rom 3.5, 3MK. (Patch "Super AppleWorks') 

APPLE II GS COMPATIBLE MS-DOS 

PC-TRANSPORTER ' Vous I'ar.enaiez... II fait merveille I 
Decouvrw «te le monde PC pa/ la lucarne de voire Apple it GS en garcam 
vos naoriudas de travail ei vos peripheries 



BREJOUX.AE APPLE EXPO 

29 rue Montribloud 69009 LYON Nous y serons I 

m 78.36.52.69 

APPLE I! FOR EVER 



h 40 Mhz' qui fait tant de degus cote IBM, et sous-estime le 
travail d' Apple. Meme Apple d'ailleurs s'est rendu compte 
que parler uniquement de viiesscs d'hoilogc ou de capacity 
d'adressage, ce n'est pas cela qui fait vendre des Mac II. 
Montrer les possibilites de la machine, si. Car ['important, 
e'est I'ordinatcur, e'est-a-dire tout le reste, le 
microprocesseur se trouve chez le marchand de composants 
du coin. L'impormni, e'est aussi la qualite* du logiciel. Un 
ordinatcur ringard super accclcrc (j'en connais...) faisant 
lourncr h la vitesse turbo des logiciels poussifs, e'est un 
peu comme un begue qu'on ferait parler plus vite. . . Or dejil 
le GS paralt quasi-improgrammable certains jours : alors 
programmer ne serait-ce qu'un systfeme Sexploitation pour 
quaere microprocesseurs 65832 tournant en parallele, il y 
faudra de l'aspirine. . . 

Toujours plus vite ! 

La guerre des acc&eraleurs est commenced. Commcncons 
par celui qui n'a pas d'ennemi pour le moment : la carte 
TransWarp GS d'AppIied Engineering est annoncfic 
comme disponible au prix de 300 dollars dans InCider de 
Septembre, mais sans doutc pour la fin de Tannee en fait. 
Cette carte est munie d'un 658 16 3 6 Mhz au lieu des 2,8 
du GS. Bicn entendu, die ne pcul pas accelerer les acces 
disques ou ('impression, qui sont toujours ralentis a la 

vitesse //e , mais elle accclere de deux fois les operations 



Pom's n° 38 



55 



Lexique 



Cache : voir Pom's 35 page 30. 

CDA et NDA : accessoires pour le GS du type de rAIarme (CDA) et du 
Converter (NDA) publies dans Pom's 35. 

Comp ilateur : programme qui sc charge dc traduirc cnbloc un programme 
ecritdans un 'langage' informatiquepourle faireexecuterensuite,en bloc, 
par la machine. 

DMA (Direct Memory Access) : acces direct a la memoire de Tordinateur, 
sans passer par le microproccsscur. Lc DMA est incompatible avee Ie 
cache- memoire, done aver Ips accplerateurs genre Zip Chip, mais tres pen 
de cartes (quelques anciennes Z80 par exemple) le pratiquent sur Apple II . 

Driver : programme pour piloter les peripheriques et les interfaces d'un 
ordinateur (par exemple I'imprimante et la carte d'interface de 
I'imprimante). 

Firmware : programme qui, au lieu d'etre implante en memoire vive, est 
installe en memoire morte dans les Roms d'une machine ou d'une carte. 
C'est pratique, mais quand il y a un bug dans lc programme, il faut 
reprogrammer une Rom et changer la puce conoernee. 

Interpreteur : programme qui se charge de traduire et faire executer par 
rordinateur en direct, une instruction aprfes l'autre, un programme ecrit 
dans un langage' informatique. 

MIDI : standard de communica tion entrcun ordinateur ct les instruments 
de musique electronique type synthetiseur. 

MS/DOS : system? d'exploitation repris par Microsoft snr 1'ancien CP/M 
pour les anciens ordinateurs personnels IBM. 
NDA : voir CDA. 

PAO : Publication Assistee par Ordinateur (Anglais: Desktop Publishing). 

Presse devote : presse informatique personnelle dite 'generate', mais qui 
est en fait a la devotion du 'standard industriel' IBM. 

Relationnelle : une base de donnees relationnelle permet d' avoir plusieurs 
fichiers ouverts en memo temps, avec des relations definics entre ces 
fichiers, si bien que la modification d'une. fiche dans un fichier entralne 
automatiqucmcnt la misc a jour d'autrcs fiches dans d'autrcs fichiers. Par 
exemple,la faetu ration d'un produit a un client entraine automatiquement 
la mise a jour du stock et du compte du client. 

RunTime : morceau de code, toujours le meme, ajoute par url compilateur 
a un programme compile pour l'intcrfaccr a la machine pendant 
1'exerutinn deep programme. Si vmisdetmisezle firhier RINI "Compiler'" 
dans le Beagle Compiler, vous avez le RunTime du Beagle Compiler. 

SANE (Standard Apple Numeric Environnement) : standard pour les 
calculs a haute precision, fourni par Apple sous formes dc routines toutcs 
faites sur ses differentes machines et dans ses differents systemes 
d'exploitation. 

SCSI : standard de communication rapide entre un ordinateur et ses 
peripheriques pcrmcttant dc chaincr ccs peripheriques et dc les rendre 
compatibles avec differents ordinateurs. 

Shareware : mode de diffusion du logiciel a encourager. Voir Pom's 37 
page 52. 

Standard ProDOS ; logiciel sous ProDOS 8 ou ProDOS 16, non protege, 
acceptanl d'etre place dans n'importe quel sous-catalogue (dossier), 
configurable, acceptant les Classik Desk Accessories du GS et renvoyan t au 
Quit du ProDOS en sortie. 



niemoires, &ntre autres cellos de 
SlowDraw II du GS. La carte est 
prevue pour une vitesse de 10 Mhz : 
des que le Western Design Center 
pourra foumir a Applied Engineering 
des 65816 a cette vitesse (eh, Mr 
William Mensch, vous parlez 
beaucoup, mais 9a ne suffit pas), il 
suffira de changer le microprocesseur et 
un quartz sur la carte. Voir Brcjoux 
pour disponibilite* et prix francais. 

Bien entendu* vous hesitez : on sait 
que Zip prepare son acceleratcur GS, 
que MDIdeas va bienlol sortir le sien, 
qu'un jour le GS sera accelere par 
Apple lui-meme. Oui, eh bien meme 
pour quelques mois, moi, 9a me tente. 
Parce que le resle, pour le moment, ce 
soni des projets. Et je connais des gens 
qui ont vu tourncr a Boston GS Works 
a 6 Mhz... 

Sur //e et //c. en revanche, c'est la 
guerre ouvertc ; pour affronter Zip 
Chip, de Zip Technology, 
Applied Engineering baisse le prix 
du TransWarp lie. Zip Chip est 
enfin reellement vendu, et on trouve 
des tests partouL Juste quelques points 
a savoir sur Zip Chip : d'abord ce n'est 
rien d'autre que l'ancienne carte 
accelerate ur SpeerJemon de MCT qui 
a ctd intcgrcc en unc sculc puce. 
Ensuite, 9a marche, c'est configurable, 

tout est aussi OK qu'avec TransWarp. 

Les tests montrent qu'en gros, 
TransWarp et Zip Chip, le resultat en 
vitesse est le meme, meme si le 
principe (cache ou DMA) est different : 
tons deux se valent, et depassent 
nettement le GS actuel. Enfin, Zip 
Chip marche micux avec les cartes 
memoire 'adressahles' pour le slot 
auxiliaire du //e, qu'elle accelere jusqu 'a 
deux Mhz, qu'avec les cartes 'tous 
slots' au standard Apple. Enfin, une 
difference cssentielle : la Zip Chip 
n'occupe pas de slot, et tourne sur //c. 
Mais sur une Transwarp, on peut 
mettre un 65802 (voir Pom's 34 page 
64). 

Outre la rivalite* Transwarp/Zip Chip, 
un nouveau front s'est ouvert qui met 
aux prises la Zip Chip et la Rocket 
Chip, de Bit and pieces 
Technology, Sauf qu'elle toume a 5 
Mhz au lieu de 4 pour la Zip Chip, et 
qu'elle peut aussi accelerer la ROM des 
cartes d'interface dans les slots 
(intcrcssant, 9a, pour ccrtaincs cartes). 



56 



Pom's n° 38 



cette carte ressemble tort a I'autre. Si 
fort que Zip Technology a interne un 
proces contre Bits and Pieces. Voir 
Call Apple de Juillet/Aout pour toutes 
precisions. 

Les prix actuellement annoncds par Ics 
constmcteurs sont de 189 dollars pour 
la Rocket Chip, de 129 dollars pour la 
Zip Chip, de 169 dollars pour la 
Trans warp //e chez Preferred 
Computing. 

He instantane 

Une super carte d'extension memoire 
pour //c a 6t6 montrfie par 
Checkmate Technology a la Fete 
de Boston : non seulement c'est une 
carte d'extension memoire 1 Mega, 
mais elle integre une carte horloge, une 
copie d'ecran pour tous ceux qui revent 
de 1'avoLr dans la Rom du //c, mais ce 
n'est pas 1'essentiel. L'essenuel, c'est le 
nouveau concept de cette carte : quand 
vous ctcigncz le //c, tout l'dtat dc la 
m&noire est conserv6 par une batterie 
tel que vous l'avez laiss6. Rien a 
sauvegarder sur disquc ni a recharger 
quand on rallume : en rallumant, on se 
retrouve exactement la ou on en £taiL 
C'est plus qu'une extension du concept 
de la Speedisk, v a. Ccla fait de 
l'ordinaieur sa proprc memoire de 
masse. Je paric que cette formulc, 
surtout sur les portables, aura de 
l'avenir. 

Cage a souris 

Non seulement cette satanie souris a 
toujours tendance a gambader hors de 
mon bureau, mais, les rongeurs cLanl 
le plus souvent des animaux nocturnes, 
elle a toujours tendance a fuir la 
lumiere et a s'enfouir le plus 
profondement possible sous les 
papicrs, documents, piles de disquettes, 
vcrres de whisky, pourtant si 
impcccablement ranges sur nos 
bureaux a Pom's. 

II y a une autre solution que de la 
mettrc sur le dos pour lui carcsser le 
ventre comme je le proposal's dans 
Pom's 37 : c'est de la mettre en cage. 
Le MouseTrap de Gercd 
Corporation est un true tres pratique 
a poser sur son bureau : dessous, une 
cage ou une niche pour la souris, avec 
un beau tapis. Dessus, un plateau 
tournant pour Ics disquettes et les 



Encre fraiche, S.V.P. 

Comme vous le savez sans doute, il existe de petits appareils 
qui permettent de reencrer les rubans d'imprimante au lieu 
d'avoir h racheter h chaque fois non seulement I'encre, mais 
aussi un ruban neuf etunenouvelle cassette. En fait, onpeut 
certainementse dispenser de ces appareils etmonter un petit 
bricolage soi-meme qui evitera de tourner manuellement la 
molette de la cassette. Bref, ce qui est indispensable, c'est 
L'ENCRE (il s'agit d'une encre speciale, non grasse je crois). 

Ce genre de 'tuyau' peut faire eeonomiser beaucoup k beau- 
coup d'enlre nous. Or je suis CERTAIN qu'il y a des lecleurs 
de Pom's qui connaissenl les specifications de I'encre, et 
aussi des adresses pour la Irouver. Un petit mot h Pom's, et 
le tour est joue. Merci d'avance. Lecteurs, conservez vos 
j vieilles cassettes d'imprimante... 

I : . — : — 



vcrres, ct un presentoir pour les papiers 
et le dernier Pom's. 

A propos de souris, un ami nous a 
domic un true pour avoir un tapis & 
souris pas cher. Maintcnant, quand Ic 
Redactcur en Chef arrive an bureau, 
plus besoin de replier en vitesse le 
tapis du poker : c'est celui de la souris, 
voyons, tu vois bien que c'est du 
feutre. Merei, Roger. 

GS/Mac : rumeurs 

Ce n'est pas moi qui le dis, c'est 
InCider d'Aoiit : de nouvelles Roms 
(oui, encore) devraient etre diffusees par 
Apple pour le GS en Septembre. 
L'avenir du GS n'inclurait pas 
seulement un 65832, mais une chip 
video (VGC) capable d'afficher en 640 
x 400 pixels, en quatre couleurs. C'est 
supcrieur a la resolution du Mac Plus, 
ct le GS a deja le meme clavier, la 
meme souris, les memes Iecteurs de 
disques, les memes interfaces et les 
memes cables dc liaison que Ic Mac 
Plus. II n'a pas le meme 
microprocesseur que le Mac, mais il a 
des slots... Jc nc vous fais pas dc 
dessin, mais tout le monde sail que la 
politique d'Apple, c'est l'intdgration 
maximum de ses deux gammes. Ce 
qu'a aussi le Mac Plus, c'est nn pori 
SCSI iuiegre, alors qu'il faut une cane 
au GS actuel. Mais precis6ment le 
suivant aura un port SCSI integrd... 
Ce n'est d'ailleurs pas parce qu'il va 
bientot etre possible dc mettrc un Mac 



dans Ic GS que le conuaire n'aura pas 
lieu : dans A+, Gary Little prevoit que 
sous deux ans Apple mettra un Apple 
// dans lc Mac, du moins dans un Mac 
avec slots... 

Pour les sceptiques : essayez done de 
deinoiiter voire GS, ce que j'ai deja fait 
pour divcrscs raisons. Le constat est 
celui-ci : lout est entierement 
modulaire. Une carte-mere se change en 
trois minutes, sans rien dessouder ni 
ddvisser. A votre avis, combien 
couterait a Apple la fabrication d'unc 
carte-mere de Mac Plus, 1'ordinateur 
ultra-amoni, avec OKo de Ram, mais 
avec un slot d'extension memoire type 
GS et une sortie video ? Cette 
carte-mere marcherait TELLE 
QUELLE, directement, avec les 
interfaces, cables, Iecteurs, boTtier, etc. 
du GS. Qui a un GS a des aujourd'hui 
75% d'un Mac Plus : la r£ciproque 
n'est vraie qu'a partir du SE. 

Sur la carte-mere du GS, trois puces, et 
trois seulement, sont dans des 
supports, pretes pour un changemcnt, 
les autres 6tant souddes : le 
microprocesseur, la Rom, la puce 
VGC pour l'affichagc. £a montre ce 
que c'est que de savoir construire un 
oidinateur... C'est un fait qu'AppIe a 
pratiquement toujours eu une politique 
de mise a niveau a prix tres interessant 
quand il intruduisail un nouveau 
modele de machine. Bon, vous faites 
comme vous voulcz, moi, j'ai fait mes 
provisions. 



Pom's n° 38 



57 



Megabit 

La crise des Ram, et particulierement 

des 4 1256, c'est du seneux (voir Pom's 

37). C'cst au point qu'un Mega de 
puces de 1 Megabit (8 puces pour un 
Megaociet) a 100 nanosecondes couiait 

320 dollars, lc meme Mega coutant 
428 dollars en puces de 256Ko (32 
puces pour un M6ga), dans Infoworld 
du 22 Aout. (Jc prends des 100 
nanosecondes, parce qu'il faut prevoir 
des microprocesseurs rapides, ei que la 

difference dc prix est ndgligeable). 
Autant dire que les cartes d'extension 
memoirs capables d'accepter les puces 
de^ 1 M6ga DES LE PREMIER 
MEGA, et pas sur des cartes 
addiiionnelles qui ne marchent qu'apres 
avoir rempli la premiere carte en 
41256, deviennent interessantes 
aujourd'hui : d'autant qu'avec le meme 
nombre de supports on peut mettre 4 
Megas au lieu d'un sur la meme carte. 
Voici la Usee et les prix (releves dans 
les revues US d'Aout et Scptcmbrc) des 
cartes d'extension que je connais qui 
acceptent les puces d'un Megabit x 1 
des lc premier Mega. 

— Cartes pour GS seulement : 

* MultiRam GS de Checkmate 
Technology : 127 dollars avec 
OKo installe ; 

* GS Ram Plus d'Applied 
Engineering : 579 dollars avec 1 
Mega installe chez Preferred 
Computing ; 

* GS Juice Plus d'Applied 
Ingenuity : 75 dollars avec OKo 
installs, 400 dollars avec 1 Mega ; 

* Plus Ram GS-8 de Cirtech : 
500 dollars avec 1 M£ga installed. 

— Carle pour slot 1-7 au standard 
Apple "slinky" : 

* PIusRam-16 de Cirtech : 500 
dollars avec 1 M6ga install^. C'est 
la seule a ma connaissaiice qui 
accepte les un Megabit x 1 des Ie 
premier Mega. 



Le mange-disque 

Lucky Luc 

Activision, qui passe de plus en plus 
au logiciel "pro" (Paintworks 
Gold), a decide dc changer son nom cn 



celui de Mediagenic, Activision 
restani le nom de la serie des jeux 
mediageniques (il parait que ce nom 
plait aux Americains : moi, ca me fait 
plutot penser & des rouleaux de papier). 
Du coup, noire ami Luc Barthelet, qui 
avail opcrc cn douceur le glissement 
transatlantique VersionSoft/Activision, 
quiue liiainienant Activision pour 
iravailler chez Electronic Arts. 
Vous voyez ce que ca vcut dire ? Non ? 
Eh bien, comme vous le savcz, Luc 
Darthelet, c'est un des auteurs dc CS 
Paint (VersionSoft/Activision), bon 
logiciel qui a t\6 vite dCpassd par Tun 
des deux mcillcurs logiciels graphiques 
pour GS, Deluxe Paint //. Je dis Tun 
des deux meilleurs, parce que Luc a 
replique chez Activision avec un 
logiciel rie meme niveau que Deluxe 
Paint, meme supcrieur a mon avis, 
PaintWorks Gold (voir Pom's 36 et 
37). Pour faire du graphisme sur GS 
aujourd'hui, il nous faut les deux, pour 
avoir l'ensemble des possibi tiles 
graphiques du GS. Mais passer de Tun 
a l'auire en permanence est fastidicux. 
Ce qu'il nous faudrait, c'est un logiciel 
unique qui reunisse les capacites des 
deux, ct concilie les aptitudes de 
Paintworks Gold avec la 
programmaiion moins gourmande en 
memoire de Deluxe Paint. Si jc yous 
rappelle que Deluxe Paint // est un 
produic Electronic Arts, je suppose 
qu'il n'y a pas besoin dc vous faire un 
dessin... 

AppleWorks v2.1 

Claris USA vient de realiser et dif- 
fuse la version US 2.1 d'Appleworks : 
c'cst unc misc a jour (update), pas une 
mise a niveau (upgrade). EDe contient 
essentiellemeni des xt paraiions de bugs 
(bug du Control-a dans la definition des 
codes d'imprimantes, bug du lancernent 
des NDA sur GS, bug de la sauvegarde 
le - disquc - est - plein - voulez - vous 
- dctruire - ce - fichier, bug des nume- 
rus de page apres 255, bug du buffer 
d'irnprimante sur GS , bug des plus de 
100 fichiers dans un sous-catalogue), et 
quelques ameliorations (64 caracieres 
accept6s dans un chemin d'acces 
ProDOS, recalcul intelligent dans le 
tablcur, bureau pouvant atteindrc 8 
Megas sur GS). Cette version est 
GRATUITE pour les possesseurs 
d'Appleworks 2.0. 



Quand on sail que Claris dent dans la 
revue A+ une rubrique re'guliere de 
reponses aux utilisaieurs d'AppIe- 
Works, dans laquelle elle n'hesitc pas a 
ecrire «n'utilisez pas cette option de 
mon logiciel, elle est bug6e», qui peut 
encore dire que Claris neglige 
AppleWorks ? Quand on sail 
qu'AppleWorks vient seulemeni de 
perdre la premiere place dans le 
Hit-Parade des ventes de logiciels 
integres pour ordinateurs individuels 
(toutes marques confondues), 
e'est-a-dire qu'il ne ddtient plus "que" 
25% des parts dc ce marche contre 30% 
a Works de Microsoft pour Mac, on se 
dit que des que GS Works sera chez les 
revendeurs, on sait qui sera lc premier. 

Attention, avec Appleworks 2.1, vous 
devez. avoir les versions suivantes des 
programmes d'accompagnement : 

- Beagle Bros : version 2.0 de 
TirncOut lui-meme, ei versions 2.0 ou 
supcrieures de toutes les applications 
TimeOut sauf SuperFonts, 
QuickSpell, Thesaurus, PowcrPack, 
DeskTools fj et TimeOut Com 
(nouveautd de Beagle, a propos). 

- Applied Engineering : version 
3.0 ou superieure de TAppleworks 2 
Expander. 

- Checkmate Technology : 

version 5.2 ou superieure du logiciel 
pour Multiram GS. 

- Jem Software : versions 2.0 dc 
Patchmania, Late Nite Patches, 
Pathfinder. 

- PinPoint : tous les produits 
PinPoint qui marchent avec la version 

2.0 d'Appleworks marchent tels quels 
avec la version 2.1. 

Divers 

* Broderbund, apres avoir pub-lie" 
deux disquettes de "clip-art" pour Print 
Shop GS (Sampler Edition et Party 
Edition), prepare pour 89 un Print 
Shop Companion pour GS. On 
parlc aussi d'un Print Shop 128Ko 
ProDOS. 

* Springboard a realise une version 

1.1 de son Publisher (logiciel de 
PAO sur Apple // 128Ko, voir Pom's 
36), disponible en 3,5* et 5,25*. La 
premiere amelioration 6tait une 
evidence : la mise au standard ProDOS, 
Tabandon de la protection (pourquoi 
faut-il que certains editeurs raieni lain 



58 



Pom's n° 38 



de ventes avant de prendre conscience 
que la protection est une mauvaise 
strategic commerciale ?). La seconde 
est la transformation en option du 
reformatage automatique du lexte qui 
faisait redessiner tout l'ecran DHGR a 
chaque modification du tcxte. II parait 
meme qu'avec un Mega de disque Ram 
et une Zip Chip, il serait PRESQUE 
utilisable. Aprcs tout, il n'est pas plus 
lent que le recalcul d'un fichier 
Multiplan moyen sur IBM PC... 

* WordBench, diffusd par 
Addison-Wesley, et realise par le 
Bank Street College (Bank Street 
Writer) est un logiciel qui veul servir 
d'outillage complet pour celui qui 
ecrit : module de prise de notes, 
d'esquisses, correcteur, imprimeur, 
dictionnaire de synonymes, etc. A voir, 
mais j'ai bien l'impression 
qu'AppleWorks/TimeOul fait aussi 
bien. 

* GS Works : nous avons pu jouer 
avec une version b£ta. Une grande 
surprise : pas dc rclais-disquc, sur notrc 
GS 1280Ko, il se charge TOUT 
ENTIER D'UN SEUL COUP EN* 
MEMOIRE ! Confirmation : Claris 
prevoit un prix tres amical pour les 
possesseurs d' AppleWorks (100 dollars 
au lieu de 250). II va peut-etre falloir 
sortir nos originaux d' AppleWorks du 
cofCrc-fon. 

* Art and Film Director, 
d'Epyx, est un programme qui 
combine dessin et animation. A voir. 
Mais Epyx s'y connait pas mal dans 
['animation de 1'Apple //.. . 

* Pages, le logiciel de PAO de 
PinPoint Publishing, aura en 
meme temps une version GS, une 
version Mac, et une version IBM. 
Avec GS OS, le passage de fichiers 
sera sans problcme. 

* Pinpoint prepare aussi un 
super-tableur pour GS ! Oigit. 

Sous le capot 
Nos Roms 

En attendant qu'Apple USA decide lout 
comme Apple France de cesser de 
vendrc des lit et //c, tout ce que nous 
pouvons faire, e'est la llste de ce que 
nous souhaiterons mctlre dans les 
Roms de ces machines. Certains 



commencent d£j& & programmer, ils ne 
perdent pas leur temps. 

Rappelons d'abord que Pom's 
lui-mcme a dejS publid dans son 
numero 23 le source d'un 
desassembleur de 65C02 pour le 
moniteur du lit, par Yvan Koenig. 



Pour quelques lecteurs qui 
cornprennent mal mon in- 
sistence sur les lecteurs 3' 5, 
deux citations : 

1] «A l'6vidence, les jours 
du disque 5'25 sont 
compt£s» (A+ de Sep- 
tembre) ; 

2] «Le disque 5'25 esi en 
Ira in de subir le sorl de la 
cartouche 8 pistes pour 
magnetophones » (Jon Si- 
monsen, Beagle Bros). 

No comment. 



Pour le //e, on souhaite surtout, 
comme Gerard Mourier. un dump 
d'ecran sur imprimante : ccla doit ctrc 
assez simple, dans la mesure ou il 
suffirait d'interfacer avec une carte 
d'interface graphique doude de ces 
possibility. Pour le //c, on envisage 
aussi le dump d'6cran, et la 
modification du Smartport pour qu'il 
reconnaisse les lecteurs Apple 3.5. 

Police, on imprime 

Tel est manifestcment lc reve dc 
nombre de nos lecteurs : avoir un #-H 
permanent en Rom. On trouve 
beaucoup de bruit fait en ce moment 
an tour de deux cartes pour GS qui 
permeueni cela : la Fingerprint GS 
dc Thirdware ct la Prograpplcr 
d'Orange Micro. Alors, distinguons 
bien : la Fingerprint n'est pas une carte 
d'interface, e'est une carte ^interruption 
qui utilise les interfaces existantes (slot 
integrd ou cane) du GS pour irnprimer. 
La Prograppler au contraire est une 
carte d'interface parallele avec un 
logiciel de "Screendurnp" sous forme 
dcCDA. 

Franchement, je ne saurais conseiller 
aucune des deux. La Fingerprint fait le 



travail d'un CDA ( mais avec du 
logiciel en Rom. La Prograppler est 
avant tout une carte d'interface 
parallele. En fait, on a simplement 
besoin sur GS d'un CDA type 
Diversi-Hack ou d'un pseudo-CDA 
type The Desktop Manager qui fasse 
pour les ecrans graphiques ce qu'ils 
font pour le texte. Pour le moment, 
j'utilisc TDM pour sauvcr Tccran 
graphique dans le disque Ram, et 
j'imprime ensuite. Le GS n'a pas 
besoin de cartes d'intcrruptions, 
puisqu'il integre cette possibility* sous 
forme de CDA. 

Sur //e en revanche, une carte 
d'interruption est une id£e inteVessante. 
Et Fingerprint existe aussi sur //e. 
Mais dans ce cas,' on ne voit pas 
pourquoi les interruptions devraient se 
limiter a la recopie d'ecran. II y a bien 
d'autrcs choses a faire quand on 
interrompt. Ce type de carte 
d'interruption multifonctions, avec 
accessoires, a existd, et existe peut-etre 
encore sur//e. Si des lecteurs preferent 
invesiir dans ce type de cane que dans 
unc unit6 ccntralc dc GS, qu'ils mc lc 
fassent savoir. 

La bosse des maths 

Vous avez remarque ce paradoxe : la 
tache pour laquclle Yotrc ordinateur est 
le moins doue, e'est... le calcul ! Le 
6502 de 1' Apple //, ainsi que le 65816 
du GS, ne savent meme pas multiplier 
ni diviser. Quand vous voulez une 
precision importante, et plusieurs 
chiffres apres la virgule, e'est possible, 
mais e'est leeeeent... J'ai cm un jour 
que mon GS 6tait mort : non, il 
calculait avec ses outils (SANE). Le 
68000 du Mac fait un peu mieux 
seulement. La solution a done etc 
trouvee par Apple sur lc Mac // : un 
coprocesseur arithmetique (68881) qui 
relaie le processeur principal des qu'il 
s'agitdccalculs. 

Pour ccux qui trouvent lc Mac // un 
peu cher, une autre solution a 6t6 
trouvee pour 200 dollars : une carte 
coprocesseur avec ce meme 68881 qui 
se met dans un slot de tout Apple // 
qui a des slots. The Floating Point 
Engine a etc montre par Innovative 
Systems a la fete Apple // de Boston 
el il est en vente des maintenant. 
L'autcur est en train de realiser une 
interface pour le tableur d" Apple Works. 



Pom's n° 38 



59 



Mais ceue cane sera torn 
particulierement utile sur GS : 
Innovative Systems est en train de 
rdaliser un outil pour la Bolie a Outils 
du GS qui remplacera purernent et 
simplement 1'outil SANE du GS. C'est 
la beaut6 de la programmatiun par 
outils : sans rien changer aux 
applications qui utilisent cet outil. la 
vitcsse de leurs calculs sera multiplied 
par 30... 

Joystix 

«C'est la faute h ce satan6 joys- 
tick.. .» : ce pretexie derisoire ne 
pourra plus excuser vos scores 
lamentablcs dcpuis qu'Epyx diffuse 
l'outil pour gagner dans ses jeux, le 
joystick 500X.I. Pour droiticrs 
seutement, e'est lc moyen dc mcttrc 
enfin votrc nom cn haut des "Hall of 
Fame". 

SOS Apple // 

Mr Loiseleux, de SOS Computer, le 
sorcicr dc la mccaniquc Apple // qui 
croule sous vos appels depuis qu'il 
s'esi fait connaitre dans Pom's 37, 
nous communique le true suivant. Si 
la pile de voire GS se vide (elle est 
concue pour durer six ans, mais 
certains GS mettent les bouchdes 
doubles) : 

1] Exigez de votre concessionnaire un 
changement de pile el rien d'autre : 
c'est une petite intervention dc SAV 
oinciellement repertories et bon 
marchtJ, qui consisLe a dessouder la pile 
et a en soudcr une autre. Mais on a 
entendu parler de tentatives de 
changement compict de carte- 

mere (!)... 

2] Si vous e-tes pressed, un peu 
bricoleur, et que votre GS n'est plus 
garanti, sachcz qu'on pcut toujours — 
provisoirement — remplacer cette pile 
par une pile ordinaire 4,5 V du 
commerce, type lampc dc pochc, aprcs 
avoir dessoude* la pile Apple. Le GS de 
Mr Loiseleux a deux fils qui sortcnt du 
boitier et une jolie pile exterieure. . . 

Patchworks 
Copy II Plus 

Le "Filer" de Copy TI Plus 



(Uiil. System) a pense aux proprie'iaires 
de II Plus : dcran 40 colonnes en 
majuscules etc. Voici quelques patches 
pour ceux qui on L une configuration un 
peu plus recente, et qui utilisent 
comme moi ce Filer independamment 
des Biicopieurs (avec Prosel par 
exemple). Attention, ces patches sont a 
opcrer sur la version 8.3 de Copy II 
Plus, celle que Pours diffuse. 
1] Quitte automatiquement vers le 
Quit du ProDOS, sans proposer 
d'autres options (e'est-a-dire renvoi 
automauque a Prosel par exemple) : 

§ CALL -151 -J 

* BLOAD VTIL. SYSTEM, T$FF, 
A$2000 ~J 

* 71 63 : 2C J 

* /IbS: FO 16 00 14 ~J 

' BSAVE UTIL. SYSTEM, T$FF, 
A$2000 .1 

2] Les deux patches suivants sont 
inutiles pour les proprietaires de GS 
(votre configuration est reconnue). 
Mais on pcut sans GS avoir quand 
meme une horloge et une carte 80 
colonnes. Notez qu'il faut toujours 
rdpondre Oui a la proposition des 
catalogues en 8U colonnes. pour avoir 
des arbres convenables pour les 
sous-catalogues. 

— pour que Copy II Plus accepte 
automatiquement la date et fheure de 
ProDOS : 

$ CALL -151 J 

* BLOAD UTIL. SYSTEM, TSFF r 
A52O00 J 

* 2241: 2C J 

* 2244: EA EA EA EA J 

' BSAVE UTIL* SYSTEM, T$FF, 
ASPQQO -1 

— pour avoir automatiquement les 
catalogues en 80 colonnes : 

§ CALL -151 -i 

* BLOAD UTIL. SYSTEM, T$FF, 
A$2O00 -J 

* 23D3: 2C J 

* 2306: F0 IA J 

* BSAVE UTIL. SYSTEM, T$FF. 
A$20UU J 

3] L'option COPY du menu de Copy 
II Plus vous propose en premier lc 
RITCOPY 5.25 et le BITCOPY 3.5. 
Si vous choisissez une de ces deux 
options, il lance soit lc iichicr 
RITCOPY.SYSTEM, soit le fichier 



BC3. SYSTEM. Mais je me sers 
moins souvent de ces deux copieurs (de 
toute facon parfaitement lanjables 
directement par un selecteur), que de 
Prosel par exemple. II suffit de trouver 
(avec les bitcopieurs prdcisSment) les 
deux noms de fichiers cites dans 
UTIL.SYSTEM, et de les remplacer 
par d'autres noms de fichier (prec6d6s 
d'un octet dc longueur) pour que Copy 
II Pius vous renvoie automatiquement 
au fichier que vous avez choisi. 

Ultima V 

Ultima V, de Broderbund, a des 
musiques magnifiques sur //e avec 
cartes Mockingboard, Phasor. Passport 
ou equivalent. Mais si vous avez mis 
ces cartes dans voire GS, elles ne sont 
pas reconnues. Voici un patch diffuse* 
par les editeurs pour y remedier : 

10 FOR I = 768 TO 702 : READ A 

: POKE I, A : NEXT : CALL /6tf 
20 DATA 24, 251, 191, 48, 244, 

11, 0, 162, 3, 35, 34, 0, 0, 

225, 244, 4, 
30 DATA 244, 0, 0, 244, 0, 3, 1 

62, 3, 16, 34, 0, 0, 255, 56, 

251, 226, 48, 96 
Lancez ce programme par RUN et 
lanccz aussitot Ultima V par PR£6. 
Vous pouvez aussi renvoyer votre 
disqueue, l'echange est gratuit. 

Print Shop 
Haute Densite 

A+ d'AouC public un true tout simple 
pour avoir une impression de bonne 
qualite avec Print Shop, en lui faisant 
passer deux fois la tctc d'imprcssion. 
Mettez un ruban noir sur voire 
jmprimante, mais dcclarez a Print 
Shop (la dcrnicre version, coulcur), 
dans le menu de configuration, que 
vous avez un ruban tricolore. Apres 
avoir fait votrc carte de veeux, mcttcz 
toutes les bordures, fontes, ainsi que 
les graphiques en vert ou en orange. 
Pour fairc du vert, Print Shop 
imprimera une fois en bleu, une fois 
en jaune, c'est a dire... deux fois en 
noir. Ce true doit marcher avec tous les 
logiciels qui imprirn^.nt du graphisme 
en couleurs. 

Sairvegarde 

Commc je viens seulemcnt d'y penser, 
je presume que certains n'y ont pas 



60 



Pom's n° 38 



pcns6 non plus. En lecteur averti, vous 
savez qu'il faut toujours faire dcs 
doubles. Quand vous travaillez avec 
AppleWorks par exemple, vous sauvez 
deux fois vos fichiers, sur votre 
disqueite donnees et sur son double. 
Done, soit vous passez votre temps a 
rctirer a remettre des disquettes, soit 
vous jonglez avec les menus pour 
changer dc lecteur. Temps perdu. II 
suffit (e'est ca le true) de designer a 
AppleWorks votre disque de donnees 
comme un Catalogue ProDOS 
(/POMS/NUMER0.38) et non comme 
sloL el drive (Lecteur 2 Port 6), de 
me lire vos deux disquettes dans deux 
lecteurs differents, de laisser chaquc 
disque dans son lecteur, et de se 
contenter d'ejecter ou d'ouvrir la porte 
de Tun des deux. ProDOS irouvera 
automatiqucmenL lc bon, * -S marchcra 
a tout coup, et vos disquettes ne 
traineront plus. 

Encore une partie 
et j'eteins 

In Door 

Le jeu, ce n'est pas seulement 
tl boum-boum sur les m6chants". 
Superstar Indoor Sports, de 
Mindscape, vous permet de prendre 
plaisir a dcs simulations tres bien 
agencies de ping-pong, de flechettes, de 
bowling. On choisit son niveau, on 
peut affronter l'ordinateur ou un 
copain. Mais ce qui m'a le plus 
surpris, e'est d'ailleurs le meilleur jeu 
des quatre : un "air hockey" (hockey 
sur air) anquel je n'ai jamais joufi "en 
vrai". Fonnidable, el ya coGlc rnuins 
cher qu'un voyage en Californie pour y 
joucr. 

Alio, Michel... 

— Attends, le d&eaeur me signale un 
radar, et je dois doublcr ce camion 
avant le haul de cote. Ou est la 
quanicme sur ce bazar ? Ouais, $a vaut 
pas la Lamborghini. Bon, 1'overdrive 
maintenanL 

Comment ga, pas d'ovcrdrive sur ce 
true ? Mais e'est un char d'assaut, 
celle-Ia ! Bon, je suis marron, les flics 
dans le retro. 

Le jeu de ce numdro, ce sera Test 
Drive, d'Accolade : en gros, lu es le 



jouraalisle de 1'Auto Journal, et m 
testes les super-bolides europcens dont 
nous revons to us : Ferrari Testarossa, 
Lotus Turbo Esprit, Porsche 911 
Turbo, Lamborghini Countach, tu 
peux y aller. Un circuit routier bien 
raide, tu les pousses au bout de leurs 
possibility, mais sans sortir, sans te 
planter (attention au retroviseur), sans 
couler une bicllc (attention au 
compte-tours). Tu as potasse le dossier 
technique avant, avec courbes 
d'acceleration et tout. Formidable. 
Mais, soi-disant pour faire "reellement 
iniernationai", ils ont mis la Corvette 
dc Chevrolet. Tu paries, UN VEAU, 
oui. Bon. je prends la Lotus ce 
coup-ci... 

— Salut Michel, teste bien. Avant son 
demarrage, Michel a oublie de nous 
dire qu'il testait la version lit : 
formidable telle quelle, mais si bon 
sang ils pouvaient y mettre le SON du 
GS... 

Pour une poignee 
de dollars 

Dans la serie «A cc prix-la e'est idiot 
de pirater", e'est Accolade cette 
fois-ci qui vend ses jcuxfavoris de tous 
les temps a 15 dollars piece. Cela 
comprend des jeux comme Hardball 
et Ace of Aces, qui en valent la 
peine. 

Virus cgyptien 

Je suppose que, comme tout le monde, 
vous avez un jour 6ri atteint par un des 
virus les plus dangereux sur Apple //, 
le virus Lode Runner. Vous croycz 
peut-etre qu'ii force, vous etes 
immunise. Eh bien, essayez done La 
revanche du Pharaon (Pharao s 
Revenge) dc Publishing 
International : moi, j'y ai reperdu 
pas mal d'heures de sommeil. Laisse 
cette disqueite ici, bon sang. Non.je 
ne joue pas avec. J'etudie ce jeu pour 
les lecteurs de Pom's : je 
TRAVAILLE, moi ! 

Apple // planant 

Vexant, Particle de Christian Piard sur 
Right Simulator Mac dans Pom's 37, 
quand on sail qu'il n'y a pas jusqu'a 
present de version GS de ce jeu. Mais 
dans un prochain Pom's, Christian va 
apprendre a pilotcr des turbo jets avec 



un general de VwxtGe de 1'air US, 
cassera du bois en hdlicoptere, et 
testera pour vous le vdhicule spatial de 
combat ct d'assaut le plus avance du 
21e siecle, le C104. Et le tout sur 
Apple//, cette fois... 

16 bits 

Hyper GS Card 

Si Tutor Tech, predecesseur Apple // 
d'Hypercard pour le Macintosh (cf. 
Pom's 36 page 60), ne vous suffit pas 
parce qu'il n'exploite pas le graphisme 
du GS, vous devriez trouver votre 
bonheur avec le produit "hypcr-Iike" 
que Roger Wagner prevoit de 
publier en Septembre et de presenter a 
la fete dc 1' Apple // de San Francisco 
(oui, la deuxieme fete Apple // de 
l'annee : cote Est, cote Ouest. Et nous, 
cn Europe, on s'y met quand ?). 

Mais Pom's vous previent 
charitablcmcnt : nous n'avons pas plus 
l'intention de diffuser des disques 
domaine public de piles "hyper GS" 
que de commencer a copier les piles de 
centaines de disquettes de piles 
HyperCard pour le Mac qui s'entasseni 
ailleurs. £a s'empile, ca s'empile, ca 
nous horripile. Ponce, on pile ! 

Copie d'ecran 

Pierre Dcmblon a oublie dc rcgarder sa 
disquette d'utilitaires Diversi avant de 
repondre au lecteur qui lui demandait 
un tf-H permanent : non seulement il 
n'est pas impossible de savoir ou le 
GS range l'ecran-texte en cas d'acccs 
aux CDA, puisque la documentation dc 
Diversi-Hack le dit, mais ce meme 
Diversi-Hack vous fait une copie 
d'ecran impeccable. En plus, il 
rcconnait les caracteres souris et les 
caracteres en inverse de 1'ecran et les 
imprimc corrcctemcnt sur Imagcwriier 
II, ce que ne fait pas The Desktop 
Manager. 11 permet aussi d'envoyer a 
I'imprimante toutes les commandes 
qu'on veut. Enfin, ce Diversi-Hack est 
sur la disqueite Shareware "DPA.0003" 
diffuscc par Pom's... 

CDA de CDA 

F.n plus, Pierre ne vous a pas tout dit 
sur The Desktop Manager, de On 
Three. Ce Canada Dry du CDA, selon 



Pom's n° 38 



61 



sa formule, est capable d'interrompre 
(et done d'imprimer les ecrans)... des 
CDA eux-memes. Bon. j'explique : du 
moment que l'application que vous 
utilise z autorise les interruptions, vous 
pouvez a tout moment rinterrompre 
pour utiliser un accessoire CDA. 
D'accord ? Si ce CDA lui-meme 
autorise les interruptions, il n'y a pas 
do raison thcoriquc pour qu'un 
deuxieme CDA ne puisse pas 
irtterrompre le premier, d'accord aussi ? 
Simplcmcnt, ce n'est pas possible pour 
les CDA orthodoxes, parce que pour 
avoir acces au second CDA, il faut 
passer par le menu des CDA, ce qui 
n'est possible qu'apres avoir quitte le 
premier CDA. Mais justemeni, TDM 
n'est pas un CDA orthodoxe. Le seul 
des CDA que j'utilise qui n'autorise pas 
les interruptions, c r est... le tableau de 
bord GS. 

Bref, le GS est bien fait : il accepte des 
interruptions en cascade, sans planter. 
J'ai vu pas mal d'Apple // : e'est 
apparemment le seul modele qui n'ait 
pas trop de problemes avec les 
interruptions. 11 va falloir bucher sur 
ces fichiers $B6~. 

Yvan Koenig nous signale qu'il cxistc 
une nouvelle version de TDM qui fait 
disparaitre les "if, mais qui introduit 
un bug dans le presse-papicrs. La 
solution est pourtant simple, si nos 
amis americains voulaient bien nous 
dcouter : utiliser les caractcrcs 
Mousetext comme un STANDARD, 
par exemple pour les encadrements en 
lexte. Les caracteres Mousetext (sauf 
deux) son! les memes sur tons les 

Apple //du monde. 

Fatal System Error 
--> 0911 

C'est un fait : un utilisateur de GS sur 
3 dans le monde a droit de temps en 
temps, et de facon imprdvisible, a ce 
message sur son ecran. Avec un peu de 
chance, et si vous disposez d'un sort de 
mage de niveau 7, 9a doit repaxtir au 
bout d'un petit moment. 
Quantite de speculations ont ete faites 
sur cette erreur. Apple, jusqu'a present, 
fait celui qui ne sait rien, arguant qu'il 
n'arrive pas a la reproduire 
VOLONTAIREMENT. Cest pourtant 
bien simple : il suffit de taper CALL 
— 454 (sur un GS avec les Rom 01). 



Ccla plaidcrait pour un bug dans le 
firmware. 

Le responsable, selon Computist 
d'Aout, serail plulOt lc coiurGleur ADB 
(rerreur 911 est une erreur ADB), puce 
n° 19 soudee sur la carte mere. Quoi 
qu'il en suit, hard ou soft, IL Y A UN 
BUG dans un GS sur trois. Conclu- 
sion : chaque Ibis que vous avez cette 
erreur, donnez un coup de fil a Apple 
Assistance. Et si votre GS est sous 
garantie. envoyez un mot a votre 
concessionnaire, pour ctrc certain que 
la reparation sera gratuite le jour ou 
Apple aura trouve un remede. 

Si jamais vous voyez un de vos 
lecteurs chainds sur votre GS demarrer 
de facon intempestive, et que vous ne 
pouvez l'arreter qu'avec Reset, il est 
probable que votre lecteur Apple 3.5 
est fautif. Votre concessionnaire doit 
gratuitcmcnt vous remplacer sa carte 
interne avec une carte Revision B. Si 
vous avez une carte d'extension 
memoire pour GS avec un code de date 
8751. 8752 ou 8801, il est possible 
que cerlaines puces Ram niarclieiit mal 
Meme chose : voir votre 

concessionnaire, et Open Apple d'Aout 

pour toutes precisions. 

Musique 

* La carte stereo/digitalisation 
(numerisation) des sons Sonic 
Blaster d'Applied Engineering 
esr en vente chez Preferred Computing 
au prix de 99 dollars. Elle pennet 
d'enregistrer, 6diter, et rejouer les sons 
du magnetophone ou de la chaine. Son 
amplificateur integre fait qu'il n'est pas 
necessaire de la brancher sur I'arnpli de 
la chaine : elle accepte directement les 
enceintes sans ampli. 

* II faudra la comparer a la carte 
Digitizer Professional, de 
Mdideas. Plus chere (190 dollars), et 
exigeant la carte stereo Supersonic 
de la meme maison, sur laquelle elle se 
branche, cette carte prdtend a des 
caracteristiques "pro", par exemple une 
reduction du bruit de fond. 

* La carte Audio Animator, 
toujours d'AE, fait la meme chose, 
mais avec les instruments MIDI. 
Environ 200 dollars chez Preferred 
Computing. Voir Br6joux pour la 
disponibilite et le prix en France de ces 
deux cartes. 



* Music Studio Version 2.0, qui 
marche entre autres avec les cartes 
ci-dessus, est disponiblc chez 
Activision/Mediagenic (vo ir 
adresse a Music Update), pour 10 
dollars plus lc port si vous renvoyez en 
meme temps la page 1 du mannel de 
l'ancienne version. Vingt instruments 
nouvcaux, 15 caracteristiques 
nouvelles, dont la possibility d'entree 
en temps reel par un interface MIDI. 

Trou de m£moirc 

Sean Nolan, dans Call Apple de 
Juillet, rcvele un emplacement 
extremement precieux dans le GS, un 
endroit libre ou vous pouvez mcttrc cc 
que vous voulez : un trou dans la 
memoire. Sean fait partie de ces 
programmers anciennc mode qui 
aiment bien savoir ofi est le 
programme qu'ils ont fait. La mdLhode 
ideologiquement correcte, recommandee 
par le Bureau Politique, pour g6rer la 
memoire du GS, c'est de passer par le 
Memory Manager. Mais entre les 
pointeurs de pointeurs et les 
deplacemcnts perp6tuels, plus moyen 
de savoir ou on est. 

II y a bien certains emplacements que 
le Memory Manager ne gfere pas, ceux 
reserves a l'afflchage texte et graphique 
dans les bancs EO et El. C'est le 
registrede "shadowing" (ombre ponce, 
explication dans un prochain Pom's) 
en $0035, Qui determine l'usage de ces 
zones (en gros : sous ProDOS 8, le 
GS copie ce qui se passe dans les bancs 
memoire 00 et 01 , dans les bancs E0 et 
El). Ce regisLre a bull bits qui sont 
autant de commutateurs pour le 
shadowing. Mais on en a oublie un : 
eclui de la page texte 2. Alors, Apple a 
fait par soft ce qu'il n'a pas fait par 
hard, pour permettre aux rarissimes 
programmes qui, dans les musces, 
utiliscnt encore cette page texte 2, de 
toumer : c'est r Alternate Display Mode 
du Tableau de bord. Celui-ci, par 
interrupdons, copie tous les 60emes de 
seconde, la zone $800 a SBFF du banc 
00 dans le banc E0. Bon. Mais ils en 
ont encore oublie un : la page texte 2 
de la memoire auxiliaire. Je ne connais 
pas de programme 8 bits asscz tordu 
pour faire de Taffichage en utilisant la 
page texte 2 en 80 colonnes, mais s'il 
y en a un, alors il est incompatible 
avec le GS. 



62 



Pom's n° 38 



Si vous n'avez rien compris aux 
explications super-denscs qui precedent, 
vous n'etes pas le seul. Mais la 

conclusion est la : tant que de 

nouvclles Roms n'auront pas recupdrd 
cet espace, nous pouvons mettre ce que 
nous voulons en 5E1/800 • SEl/BFF 
dans le GS, le Memory Manager n'y 
touchera pas, eel espace est T.TRRF. 
Enfin, il l'fiiait avant ce num6ro de 
Call Apple, car il va sans doute faire 
comme la page S300 - $3CF dans 
r Apple // : TOUT LE MONDE va y 
mcltrc des routines fixes 
'indispensables 1 , puisque e'est libre. 

Systeme 3.2 ; officiel 

La version 3.2 du systeme que 
j'evoquais dans Pom's 37 est sortie de 
la clandestine en Juillei aux USA. 
Versions : ProDOS 16 1.6, ProDOS 8 
l.fi, Basic System 1.2, Finder 1.1, 
System Utilities 3.1. Essentiellement 
des bugs repares, dans les outils 
egalement. Dans le sous-catalogue 
/SYSTEM/SYSTEM.SETUP, gardez 
TOOL.SETUP et TS2 si vous avez les 
Roms 01. TS1 si vous avez les Roms 
00; tout le reste peut etre jetd si vous 
n'etes pas branche Appletalk. Meme 
chose pour le driver IMAGEWRITER 
LQ dans /SYSTEM/DRIVERS qui nc 
permet que Temulation d'l mage Writer 
par I'intermcdiaire d'Appletalk. Le 
driver d'ImagcWriter est, lui, tout 
nouveau, et en nets progres. 

Gros efforts sur le son : drivers 
d'inierface MIDI, et de nouveaux 

ouiils. A.C.E (Audio Compression and 
Expansion), pour comprimer et 

decompresser les fichiers de sons 

numerises. Outil MIDI. Note 
Sequencer (sequenceur de notes) pour 
enregistrer cl rdecouier les sons MIDI. 
Note Synthetizer (cette fois, je ne 
traduis pas) qui fabrique des sons et des 
notes de musique. 

Comme d'habitude, ce nouveau 
systeme devrait etre disponible "dans 
quclqucs temps", gratuitement, chez 
votre concessionnaire. Comme 
d'habitude, vous avez plus de chances 
dc ravoir, avee sa vraic documentation, 
a l'APDA ou a DDA, pour un prix 
modique. Si vous n'avez pas tout 
compris dans les deux paragraphes qui 
precedent, lisez l'article de Pierrot 
Demblon dans Pom's 36. 



En vrac 

* Certains programmes de la disqueue 
DPA 002 comme P8CDA connaissent 
taut de succes en Shareware qu'on en 
envisage, parait-il, de nouvelles 
versions a diffusion commerciale 
classique. Si, aprcs cssai des versions 
Shareware, certains de ces programmes 
vous conviennent, dcrivez a l'auteur 
pour savoir s'il en existe des versions 
co mmercialisees. 

* J'ai trouvd, lors dc tentatives (guere 
fmctueuses) pour ranger un peu les 
piles de disquettes a Pom's, un 
accessoire (NDA) bien utile : 
sauvegarde sur disque d'ecrans SHGR, 
copie sur imprimante de ces derails, 
redefinition du clavier pour les 
caracteres nationaux speciaux. 
Copyright Apple ; merci a nos amis 
d'Apple... Allemagne. Ce 
"Tastaiurdienst", ou "KeyUtil", devrait 
pouvoix ctrc traduit en Francais, nicht 
wahr ? 

* Pour dessiner sur GS (et aussi sur 
Mac), un true genial (cher, mais 
genial) : la tablcttc graphiquc ADB 
(s'intercale entre le clavier et la sonris) 
Kurla is/one de Kurta Corpo- 
ration. Revue complete dans A+ 
d'Aout. 

A lire 

La loi de la vie 

Dispariuon de deux revues sur Apple // 
ces dcrnicrs temps : Apple User, 
revue d'Outre-Manche, consacrait 
peut-cire un peu trop de place a des 
vieilleries (CP/M etc.). Elle passe ses 
Iecteurs a Apple 2000, revue genre 
Pom's (bonne revue, done) du groupe 
d'utilisatcurs le plus important 
dTEurope. 

Assembly Lines, la petite revue 
rondotypde que Bob Sander- Cederlof 
consacrait a son asscmblcur S-C 
Assembler, disparalt : plus persnnne ne 
se sen de cct assembleur, on ne connait 
plus que Merlin et Orca. Bob, excellent 
programmeur de firmware, excellent 
disassembler d'AppleWorks (voir 
Pom's 37 page 64), s'est fait 
embaucher par.. . Applied Engineering 
bien sur. 

Si certains meurent, d'autres naissent 
ou se developpent : des revues comme 



Open Apple. A Plus, Tom's... 

gagncnt des Iecteurs. Une revue 
"underground" se cree pour les 
fanatiques de l'Apple //, The Road 
Apple. Non que les posscsseurs 
d'Apple // soient plus nombreux 
qu'avant, mais ils lisent de plus en 
plus, ils sont fidclcs a lcur machine et 
aux revues... sur l'Apple : quand Call 
Apple a voulu ouvrir une rubrique 
MS/Dos, elle a cesse tout de suite a 
cause des resiliaiions d'abonnement 
(dont le mien), Et quand Computist a 
voulu ouvrir elle aussi une rubrique 
MS/Dos. elle ne trouve rien du tout a 
mettre dedans, sauf des lettres de 
protestation de Iecteurs. Apple // For 
Ever... 

En plus, il semble que la tendance des 
Iecteurs, trcs sensible a Pom's, a 
demander aux revues Apple // 
ind^pendames un SERVICE croissant 
(Hot Line, vente de logiciels et de 
materiels...), s'affirme aussi aux 
Etats-Unis ; apres la vente de livres, 
Open Apple se met maintenant a 
vendre du hard, sous la forme des cartes 
d'exiension meinoire de Cirtech, que 
Tom Weishaar appelle 1'Applied 
Engineering europeen, ce qui est une 
juste comparaison. 

Woz 

Interview de Steve Wozniak dans 
InCider d'Aout. A lire de pr6s. Et ne 
demandez plus d'ou viennent mcs 
opinions sur I'avenir de l'Apple //. 

Tricher n'est pas jouer 

Si, si, moi je pense que e'est de la 
trichc. Mcmc s'il est diffuse par un 
Sriiteur de jeux ; meme s'il est redige 
par une bande de fanadques hagards qui 
ont l'aventure dans le sang et qui, eux, 
sont allds jusqu'au bout a la force du 
poignet ; meme si leurs indices sont 
codes pour que tu ne puisses pas lire la 
solution tout de suite; meme si e'est 
un florilege de leur excellente revue ; 
meme si tu ne le regardes qu'au bout du 
d6sespoir, avant ton dernier souffle ; 
meme s'il ne conuent que des indices, 
et pas la solution toule faite. Meme, 
c'csl dc la triche. 

Dis done, je suis completement perdu 
dans Breakers. Y-aurait pas le plan de 
Borg, dans Quest for the clues ? 
Comment ga. de la triche ? Mais si lu 



Pom's n° 38 



n'avais pas causd, j'aurais pu lc finir 
moi-meme, ce plan ! Non mais, moi, 
moi qui lis reguliercment Quest- 
Busters, Ic journal dcs avcnturicrs, 
moi, UN TRICHEUR ??? 
Tiens, regarde pi mot a la fin, il y a la 
liste des meilleurs jeux pour les 
aventuriers, el celle des machines sur 
lesquellcs on pcut jouer a ces jeux. lis 
y soni Lous, 1'IBM, le ST, lc Mac, Ic 
C128 et le reste. Et quelle est la 
machine qui les a TOUS, sauf un 7 
OK, tu viens de gagncr 20 points 
d'experience. 

Adresses 

A Plus 

P.O. Box 40158, Philadelphia, PA 

19106-9931, USA. 

Accolade 

20813 Stevens Creek Boulevard, 
Cupertino, CA 95014, USA. 
Activision 

(attention, nouvcllc adressc) : 
3885 Bohannon Drive, 
Menlo Park, CA 94025, USA. 
Activision Music Update 
P.O. Box T, Gilroy, 
CA 95021-2249, USA. 

Addison-Wesley 
Publishing Company 

6 Jacob Way, Reading, 
MA 01867. USA. 
APDA 

290 S.W. 43rd Street, Renton, 
WA 98055, USA. 
Applied Engineering 
P.O. Box 5100, Carrollton, 
TX 75011, USA. 

Applied Ingenuity 

14992 Ramona Boulevard. 
Unit M, Baldwin Park, 
CA 91706, USA- 
Assembly Lines 
S-C SOFTWARE. 
P.O. Box 280300, Dallas, 
TX 75228, USA. 

Beagle Bros 

6215 Ferris Square, Suite 100 

San Diego, CA 92121, USA. 

Bits and Pieces Technology 

Gantry Entreprises, 

P.O. Box 2622, San Rafael, 

CA 94912, USA. 

Brejoux 

29, rue Montribloud 



69009 Lyon — * 78 36 52 69 
Broderbund Software, Inc. 
17 Paul Drive. San Rafael. 
CA 94903, USA. 
Call Apple 

290 S.W. 43rd Sirect, Renton 
WA 98055. USA. 
Check Technology 
509 South Rockford Drive, 
Tempe, AZ 85281, USA. 

Com putist 

P.O. Box 11086-T, 
Tacoma, USA. 
Cirtech 

Curric Road Industrial Estate. 

Galashiels, Selkirkshire, Scotland, 

TD1 2BP, Royaumc-Uni. 

it 0896 57790. 

nnA/Prim'Vert 

36, rue des Euats G6n6raux 

78000 Versailles. 

Electronic Arts 

Electronic Arts Direct Sales. 

P.O. Box 7530, San Mateo, 

CA 94403, USA. 

Epyx 

600 Galveston Drive, 

Redwood City, CA 94063, USA. 

Cercd Corporation 

2401 Northeast Cornell Road, 

Suite 125, Hillsboro, 

OR 97124, USA. 

Imagol 

72, bd Raspail, 75006 Paris. 
«(l) 42 22 05 55. 
Incider 

80 Elm Street, Peterborough, 
NH 03458, USA. 
Innovative Systems 
P.O. Box 444, Severn, 
MD 21 144-0444, USA. 
.lem Software 
P.O. Box 20920, El Cajon, 
CA 92021, USA. 
Kurta Corporation 
4610 South 35ih Street, 
Phoenix, AZ 85040, USA. 
Mdideas 

1 163 Triton Drive, Foster City, 

CA 94404, USA. 

Mediagenic 

voir Activision. 

Memoland 

2. boulevard Bellevue 

05000 Gap — i*92 51 03 30. 

Mindscape 



3444 Dundee Road, Nonhbrook, 

1L 60062. USA. 

On Three 

4478 Market Street, 

Suites 701-702, Ventura, 

CA 93003, USA. 

Open Apple 

P.O. Box 1 1250, Overland Park, 
Kansas 66207, USA. 

Orange Micro 
1400 N Lakeview Avenue, 
Anaheim, CA 92807, USA. 
Pinpoint Publishing 
5901 Christie Avenue, 
Emeryville, CA 94608, USA. 
Preferred Computing 
P.O. Box 815828, Dallas. 
TX 75381, USA. 
Publishing International 
333 West El Camino Real, 
Suite 222, Sunnyvale. 
CA 94087, USA. 
QuestBusters 
P.O. Box 525, Southeastern, 
PA 19939-9968, USA. 
Roger Wagner Publishing 
1050 Pioneer Way, Suite P, 
El Cajon. CA 92020, USA. 
Scarlett 

Big Red Computer Club. 

423 Norfolk Avenue, Norfolk, 

NE 68701, USA. 

SOS Computer 

50, rue Rochechouan 

75009 Paris * (1) 42 81 03 73 

Springboard Software 

7808 Crekkridge Circle, 

Minneapolis, MN 55435, USA. 

Spectrum Ilolobyte 

Sphere, Inc, 

2061 Challenger Drive, 

Alameda, CA 94501, USA. 

The Road Apple 

1121 N.E. 177th Street, Portland, 

OR 97230, USA. 

Thirdware Computer 

Products 

4747 NW 72nd Avenue, Miami, 
FL 33166, USA. 
Western Design Center 
2166 East Brown Road, MESA, 
AZ 85203, USA. 
Zip Technology 

1 1926 Santa Monica Boulevard, 
Los Angeles, CA 90025, USA. 



Pom's n° 38 



Remords 

Le MEM-monde 

Remords, c'est le mot, a propos du MEM- 
monde. J 'appellc ainsi cc monde de la programma- 
tion ensoleillee — ni^oise — qui a toujours eu — a 
tort — sur Apple// uncaructereun peu marginalise, 
un peu a part, comme les adeptes du CP/M. A 
Pom's, nousn'ysommcspas tres competents. C'est 
pourquoi jusqu'ici Pom's h'a pas suffisamment dit 
tout le bien qu'il en pensait. Nous faisons done un 
appel au peuple : lecteursutilisateurs de MemDOS, 
MemBasic, MemoBase et les autres, auteurs de 
logiciels du MEM-monde, ecrivez-nous pour nous 
dire ce que vous en savez et ce que vous en pensez. 
En attendant, voici deux ou trois choses que je sais 
du MEM-monde. 

D'abord, quel est le premier interpreteur (pas com 
pilateur) Basic 16 bits qui a ete disponible pour le 
GS ? Reponse : MemBasic. Excellent produit, qui 
pourrait (a tort) un peu rebuterau premier abord les 
fanas de 1'Apple, a cause de son 'look IBM' : il y a 
une raison bien precise, et fort louable, a ce look. 
C'est que le meme produit existe sur d' autres 
machines, avec echange possible des programmes 
et des donnees. MemDos sait par ailleurs ce 
qu' ignore GEOS : comment proieger ses produits 
sans gener l'utilisateur. MemBasic est protege par 
une mini carte electronique { en beton' (incas- 
sable), qui se met dans le slot 4 du GS, celui dans 
lequel on ne peut rien mettre, carte qui n'a pas a etre 
declaree dans le tableau de bord. Les disquettes, 
cllcs, sont au standard ProDOS. Sccurite parfaite 
pour les donnees (car sculcs nos donnees sont im- 
portantes). C'est 'pro', 5a. 

Ensuite, quelle est la premiere (et pour le moment 
la seule) base de donnees relationnelle pour GS en 
16 bits ? MemoBase, bien sur, qui, elle aussi, existe 
sur d'autres machines. Un RunTime existe puurquc 
vous puissiez cliff user vus bases en McniuBasc. 
Interface avec MemBasic. Un souci evident de 
1'essentiel, la security de vos donnees (sauvegarde 
automuiique et auLres rafliriements)- C a aiussi, c'est 
'pro'. 

Ce que je vous dis la vient tres largement d*un 
developpeur en MemDos, le Docteur Walusinski, 



qui m'a envoye ses produits en MemDOS sur 
disque 5"25. Attention, ces produits n'ont PAS 
besoin de la cane MemDos pour tourner sur//e, //c 
et lies. Les disquettes sont non protegees et sous 
'Turbo MemDOS' (et pourquoi' le MemDOS de 
ma carte n'est-il pas turbo, lui ?). Je suis un peu 
dubitatif sur "MemCalories" : tres bonne base de 
donnees dietetique pour medecins, mais aussi pour 
particuliers qui veulent garder la ligne, tres acces- 
sible et rapide. Le 'hie', ce sont les chiffres exorbi- 
tants que me renvoie cette base de donnees : ce n'est 
pas possible qu'il y ait tout 9a dans ['inoffensive 
bouteille de Chivas de Pom's 34. . . 

J'apprecie done mieux "Biblio", outil de recher- 
ches bibliographiques et documentaires tres com- 
mode et bien fait. Tout fonctionne par menus 
deroulants, mais en Scran texte 80 colonnes, la 
formule que je prefere. Marche sur //e, //c et 11GS, 
y reconnah les disques 3"5 et les disques durs. 

Mais bien entendu, celle que je prefere, c'est celle 
qui ne considere pas le Bordeaux 47 comme une 
somme de calories, mais pour ce qu 1 il est : un avant- 
gout du paradis. II s'agit de "MemoCave", logiciel 
de gestion de votre cave a vins. On sent que ce 
programme a ete fait par un connaisseur. Et s* il est 
largement au niveau des logiciels americains du 
point de vue de la programmation, il les ridiculise 
carrement sur 1'essentiel : les categories de vin de 
MemoCave n'ont rien a voir avec le classement des 
piqucues 'compatibles' californiennes. MemDOS 
ct MemoCave : vive la France ! Californiens, 
continucz a faire des ordinateurs. . . 

Deitx adresses pour le MEM-monde : MemoLandet 
Imagol. 

031 Soitisier ; vu dans Science et Vie Micro (S VM) 
deSeptembre : «LeGS, unordinateurdupasse». Lu 
le meme jour sur le serveur SVM en 3615, rubrique 
"Choisir un Micro" : «Apple I1GS, 256Ko, a partir 
de 17 430 F ncuf». On sc surpassc, dans la presse 
devote... 

cs> Tilt, revue de jeux sur ordinateurs, vient, lui, de 
decouvrir Fexistence flu GS. II etait temps... 

Tetris : 4655, dernier score de Michel, sur son or- 
dinateur du passe 256Ko a 17 430F. 



Pom's n° 38 



65 



KruptQS 

Thilippe Picherit 

A chaque essai de la commande extcrne de cryptagc 
Kruptos (Pom's 29), j'obticns un Syntax Error sur-mon 
Apple //c 65C02. Que faire ? 

Le redacteur devait etre un peu crypte et vous en etes 
victime I En fail, la commande de cryptage est : 
CRYPTE chemln d'acces, clef LSslot] LDdrivel 
ait lieu de KRUPTOS chemirt d'acces... 

Daisy Wheel Printer 
Michel Imbert 

Existe-t-il sur Macintosh un Traitement de Textes, un 
Tableur et un Gestionnaire de Base de Donnees 
fonctionnant avec l'imprimantc a marguerite 
Apple ? 

Word, traitement de textes peut utiliser votre 
imprimante. Excel, parmi les tableurs s'en servira 
egalement. Nous tie doit tons pas que les gesl format res 
de BdD Microsoft s'accomodent de vos marguerites 
mais il vous fauttra poser la question aux revendeurs. 

Caiacleies MouseTexl 
Michel Anceaux 

Comment obtcnir les caracteres MouseTcxt a I'ecran 
d'un Apple //e ? 

11 vous faut meitre voire Apple //e a niveau (65C02 
et nouvelle Roms). Consultez votre revendeur. 



ImageWriter II ordinaire ? 

Daniel Fieux 

Quel programme permettrait une utilisation 
optimale de mon ImageWriter II par mon Apple 
//c? Existe-t-il des logiciels de fontes pour 
ameliorer le resultat ordinaire ? 

Dans ce numdro, Pom's vous propose LA solution : 
AppleWorks + TimcOut SuperFonts qui est livre 
avec plus de 40 polices et qui donne un resultat 
identique a celui du Mac. Si vous ajoutez nos 
nouvelles disquettes Polices 01, 02 et 03, vous void 



avec pres de 150 polices. 
Affitext 

Fabienne Dunaigre 

Pourquoi le message No Buffer Available avec 
Affitext du Pom's 36? 

Question encore ires frequcnte : reponse en encadre 
dans ce mcme numcro 36, page 17. 

Copy II Plus 
Dominique Entrcmont 

le possede Copy II Plus americain. Faitcs-vous les 

mises h jour, a quclles conditions ? 

Non. Central Point Software pratique direclemenl 
les mises a jour de ses logiciels. 

Detecteur d'appels 
Marc Lcrman 

Votre revue est super, mais... etes-vous certains que 
le plan du detecteur d'appels du n° 32 soit correct ? 
Oui, il va vous falloir controler a nouveau votre 
montage. 



ProDOS 

Freddy Cozette 

Comment stocker des informations dans la carte 
langage sous ProDOS ? 

Vos informations OU ProDOS, il faut choisir : 
ProDOS occupe en effct la carte langage. Dans le 
celebre et excellent Beneath Apple ProDOS, vous 
trouverez une solution pour forcer le chargement de 

ProDOS en memoire principale comme DOS 3.3. 
Cette solution prdsente toutefois de menus 
inconvenients comme I 'incompatibilitc avec 
Basic. System.., 

Renumber sous FroDOS 
Frangois Vignes 

Existc-t-il un Renumber sous ProDOS ? 



66 



Pom's n° 38 



C'est peut-etre la la question la 
plus souvent posee. 11 figure sur la 
disquette livree avec le livre La 
Programmation en Basic avec 
ProDOS edite par Inter-Editions, 
disponibk chez les revendeurs 
Apple. 

CalvaCom 
Didier Bonnet 

Quel est le moyen de s'abonner a 
CalvaCom, le numero public dans 
Pom's nc scmblc pas ctrc le bon ? 

Le numero de Calva a change : 
Tiletel I par le 367.3 puis 775777 7. 
Au code d'ubonne, repondez : 
'nouveau'. 

A dresses 
Didier Skutnik 

Sauriez-vous me dormer des 
adresscs pour AppleWorks GS et 
PaintWorks Gold ? 

Activision 3885 Bofmnnon Drive, 
Menlo Park, CA 94025 USA 
Claris 10, rue Mercosur 75011 Paris 
@(1)43 70 71 72 

Graphisme surMinitel 

Claude Metzger 

Pour sauvegarder le source 
DENSITE.S, quelle est la syntaxe 
exacte : BSAVE DENSITE.S, 
A$???.L$??? 

Le source, comme tous les sources 
est a saisir a Vaidc dc Vediteur 
d'un assembleur on avec un 
traitement de texte avant 
assemblage, hi, le micux est 
d'utiliser Merlin-Pro ; I'option de 
sauvegarde est au menu. 
Pour utiliser cc programme de 
graphisme sur Minitel, vous 
n'avez pas besoin d'utiliser le 
source : le programme Basic ct la 
recapitulation DENSITE sont les 
seuls indispensables. 

Stnckage des chames 
Robert Sevrin 

J'ai tente, avec Block.Wardcn de 
Prosel, de franciscr les noms des 
mois dans lc fichier 
ULTRA.SYSTEM de TimeOut 
UltraMacros, version amcricaine. 



La liste des noms se preserve comme suit, sans espaces entre les 
differents mois : 

January FebruaryMarchAprilMay . . . 

Changer April en Avril n'offre pas de difficultes et #' donne bicn Avril 
8, 88. 

Mais quand il s'agit de changer September en Septembre, pourtant du 
meme nombre de lettres, la commande donne SeptembrcOctober 8, 88. 
11 en est de meme a chaque fois que je modifie le dernier caractere d'un 
mois. Ou est 1'erreur ? 

Sept bit sur huit suffisent pour coder tous les caracteres de V Apple //. 

Lc bit dc poids fort (MSB) n'est pas signifiant pour ce codage : I'espace 

peut eAre code indifferemment 520 (00100000 en binaire) ou $A0 

(10100000). Le 'A' est code $41 (01000001) ou $C1 (11000001). 

Bicn des programmes utilisent ce Seme bit comme delimiteur de chaine : 

tous les caracteres sont codes avec le MSB a sauf le dernier 41. Ou Men 

Vinverse. 

Regardez en hexa voire chaine de caracteres : tous les caracteres out un 
code inferieur a $80 sauf le dernier de chaque mois. Ou bien Vinverse. 
La solution consisle done a respecter le bit de poids fort lors de vos 
modifications. En effet la routine d'affichage du logiciel se sert de ce 
MSB pour determier la fin des mois... 





Apple Expo 1988 



Grand rendez-vous de la communaute Apple, Apple Expo ouvrira 
scs portes du mcrcrcdi 28 septembre a 10 h au samcdi lcr octobrc 
a 19 h a la Grande Halle dc la Villcttc, Porte dc Pantin k Paris. Cost 
pour vous l'occasion d'un tour d'horizon dc l'actualitc Apple. Cost 
aussi l'occasion dc rencontrer Pom's : 

Eric Weyland vous accueillera durant les quatre jours. 

Jean-Yves Bourdin, incollable sur le GS et l'actualite Apple, 
repondra a vos questions le samedi de 15h k 17h. 

Sylvie Gallet (rappelez-vous le compacteurde programmes Basic, 
le formateur de programmes, les fractales en Pascal, Xcat 
l'indispensable commande externe en Orca/M, Alarme 
l'accessoire GS. . . ) sera egalement presente le samedi de 15h 
a 17h. 

Dimitri Geystor ? Avec un peu de chance, vous le croiserez dans 
la journee de samedi. On ne presente plus ce specialiste 
d'Apple Works et de SuperMacro Works qui participe 
aujourd'hui aux TimeOut sur AppleWorks 1 .4. 

Venez nombreux (gardez Pom's a la main, vous passerez les 
caisses economiquement et pensez a votre carte Joker). 



Pom's n° 38 



67 




Recueil 1 

(Pom's l t 2 t 3 & 4) 

Overlay dynamique 

Visicalc el Applesoft 
Un programme aide m£moire 
Dc l'lTT 2020 a i" Apple 
Les adrcsses du graphique 
Presentation graphique 
Graphiqucs hautc-rcsolution 
Creation dc tables de tormes 
Des instructions en une lcllre 
A s'arrachcr les cheveux 
PLE ; Program Line Editor 
CRAE : Applesoft Editor 
Les mystcrcs du DOS 
bvttSHff DOS 3.2/DOS 3.3 
Les drames dc 1' Append 
Reparez voire Append 
Rcparcz votrc Renumber 
Analyse du contenu des slots 
Le nettoyagc-mdmoire 
Faitcs 1c menage cn mcmoirc 
Utilitaires dc documentation 
Limites des 6ditcurs dc tcxics 
Copie d'ecran lexte 
Catalogue general en Pascal 
Formattez vos programmes 
La lecon de calcul 
Tiois secundes pour urier 
Chargez vile les fichicrs bin. 
Sprechen Sie DOS ? 
Changez voire poignce dc jcu 

SHLAM : routine bicn pratique 
Apprendre I'asscmblcur 
Ddplacement des programmes 
Notions de base : les fichicrs 

Print Using d'intMt general 

Conversion Pascal/Basic 
Communication grace a I 1 Apple 

Lc format DIP 
Les fichiers; EXEC 
Un cxcmplc dc Hello 
Pcrsonnalisez vos disqucitcs 
TRACE selective 
Un programme dcvinetlc 
Les mcmoirc de masse 
La carte M/DOS a l'essai 

Les codes ASCII epluchcs 
Survol dc I'Applc /// 
KobotWar 

Recueil 2 

(Pom's 5, 6, 7 & 8) 
I1AIFA : ampcr inicrprctcur 
Le clavier rnagique 
Creation graphique cn Pascal 
Logic id graphique cn Pascal 
Graphique, lu nous liens... 
Tortuc & 

Craphiqucs ct logique 
Les Quatre Poms 
Hard Copy Seicosha 

Creation de polices 
FrancisczlcDOS 
La programmation facilitee 
Un analyseur de syntaxe 
Programme dc lest universe! 
Programme de Hello complci 
Accelcrez vos programmes 
Des programmes rclogeables 
Recherche dc codes binaircs 



Ergonoraie des programmes 

Applesoft vers EXEC 
Cr6aUun de fichicrs EXEC 
Tableaux en Pascal 
Dump Pascal 

Un gencratcur 

Koutmc d' input generalise 
Gestion de fichiers 

Gcslion dc masques cn Basic 
Boot PLE+CRAE 
Programme de fondu enchalne" 
Le H basic : un basic pascalien 
Calculs en format gestion 
Calculs a 12 chiffres cn Pascal 
Le loto, c'esi facile 
Cryptographic a clef publique 
Visicalc el testes 
Arcanes du moniteur /// 
Moniicur eUcndu 

L'Appie lit a Tessai 

Le cours de Basic Applesoft 

Base de donnees sur Apple 

Mini-base de donndes 

Pilot et Super-Pilot a l'essai 

Multiplan a l'essai 

Banc d'essai du BASIS 108 

Alio, Questel ? 

The Last One a l'essai 

C.O.R.P. a l'essai 

CX MuUigcstion a l'essai 

Test de la carte Legend 128 

La souris de Lisa 

FID, MUFFIN ct DEMUFFIN 

Recueil 3 

(Pom's 9, 10, 11 & 12) 
Copic CR d'ecran HCR 
Un editeur graphique HGR 
Fusion dc tables de shapes 
Fondu enchain e* graphique 

Reconstiuicz le Puzzle 
La Magie de Magicalc 
£diteur-Composeur de teste 

Caiacleie a vuuc iiupriinanic 

Super-impression de chaines 

Mise en forme de listings 
Lecture dc fichicrs TEXT 
Saisie Mullipage en Pascal 
Fichicrs avec RWTS 
Opcodes d'osscmblcurs 
La Prom P5A dtSsassemblee 
Jonglez avec voire catalogue 

MaiGraph, routine graphique 
Compression d'iniages HGR 
Dessins avec planche a clous 
Aide au graphique HGR 
CaiactCrcs gcauls 

Dccisionncl graphique a l'essai 

Commanded atilnmnliqnes 

Gestion de comptcs b-ancaires 
Acces direct aux disqucttes 
Edition des fichiers Basic 

Coupurc de fin de programme 
Input generalise de tableaux 
Chargement de I'lnteger 
De Big Mac vers Lisa 2.5 
La communication avec I'Apple 
CX Systeme a l'essai 
Calcndricr en Visicalc 
Music 

Initianon a I'assembleur (1) 



Le Bavard 

Effets stroboscopiques 
Pour suppriincr les REMs 
Des POKEs a gogo 
Un programme de menu 

Un menu a la carle 

Comparaison dc programmes 
'Type-ahead" cn Applesoft 
Courbcs cn convcrsalionncl 
Exiremum absolu 
Tri rapide cn asscmblcur 

MacArlicU 
GuLcnberg a l'essai 
Traitemcnt dc tcxtes 
Magic. Window a l'essai 
Initiation a I'assembleur (2) 
Disque viriuel 16Ko 

Charts Unlimited a l'essai 

Le Calculaicur Enticr 
Exp(7teSqr<163)) enticr ? 
Patch du DOS 3.3 
Tableaux de dimension variable 
& ONERR GOTO 
Assembleur a la fin du Basic 
Nombrcs flottants en LM 
PEEKs et POKEs en Pascal 
Les codes ESC de voire PLE 
Trace* rapide de cercles 
Un cdiicur de shapes 
Trues pour ApplcWritcr 
Apple Writer 1.1 et I'Apple lie 
Pom's a vu MF.M/TERM 
Analyse dc MagicMailcr 
La famille Apple // 

L' Apple //c est n£ 
Pom's 13 

Initiation a I'assembleur (3] 

Home, Sweet Home 

Jcu cn Pascal : Ordralphabclix 

ProDOS a l'essai 

La compatibility de I'Apple lie 

Analyse de la VTOC 

Bloc-Notes 

Impressions des variables 
Tables de shapes 
Reduction U'iiuagca HGR 
PEEKs a gogo 
Le Basicium 

Lcctcur Micio-cxpajision 
UugBytcr a l'essai 
Pom's a vu LIGHT 1 
ThinkTank a l'essai 

Us nouvelUs du Macintosh 

Pom's 14 

Initiation a. I'assembleur (4) 
Procedure & 
Disque viriuel 6>lKo 
Lcclurc/utralurc de tableau* 

Input generalise miniature 
Amper-intcrpreieiir TCARP 
Les essais du Macintosh 
De MacWrtte d AppleW'nter 
Les tokens du Basic Microsoft 
Gcslion dc masques amclionfc 

Leve-toi ct brille ! 
217 lichicr.s par disquctte 
Conversions minus/MAJUS 
Un catalogue general 

Koala Pad a l'essai 



Appleworks a l'essai 
Visicalc Advanced Version 
Jane, Apple// sauce Maciniush 

Pom's 15 

Inilia.liun a l'asseuiblcur (5) 

MobbyDisk 
Disk ChecV-up 
Flcuvcs dc France 
HPGRAPH 

Ecriture en page HGR 
MousePaint 

Caractercs programme sur IW 
Fichiers avec Rwls el Dos 3.3 
Routines en ROM du Macintosh 
Formes et uurseu/s 
Omnis 2 a l'essai 

Pom's 16 

Initiation a I'assembleur (6) 
Pot-pourri ProDOS 
Gdrer la date en ProDOS 
Signature 

Epson cn mode piopoi Uoimel 

Acces direct aux disquctics 

L'Appie en muliitachp 
Pcrsonnalisez vos disques Mac 
Call : un exemple d'appttcation 
MacPaint et le Basic 

Appel des routines en ROM 

Entree analogique ameMioree 
Dds assembleur cn BasicAVPL 

Les codes ASCII du //e 
Startup, saisic dc dale Pascal 
PLh+CKAh+APA 
Conversion minusAIAJlIS 
CALLs a gogo 

Pom's 17 

Initiation a I'assembleur (7) 

Transfer! rapide de tableaux 
Les poimeurs en Pascal UCSD 

Animations graphiqucs 

Distribution normale 
Copic d'ecran sur EPSON 

Catalogue sur impnmanU 
BSAVE et BLOAD en Basic 
Switch video pour carte 80 col 
Mini-e*dileur Basic 
Tiansfuriiiez vutic //e en ][+ 
Conversion chiffrcs-1 cures 

Pom's 18 

DisquciteDOS/ProDOS 
Saisie de variables par ecran 
Le poite parole 

Gestion dc fcncircs 

Graphiques alcaloires 
Recuperet les icdnes systeme 
Informations pour le Finder 
Les curseurs du systeme 
Micro journal 

ft Les pirates ont la parole... 
Hard-Copy HGR etendue 
Les poimeurs, suite... 
Rcndcv, le DOS transparent 
Recherche dans un tableau 

Pom's 19 

Un analyscur dc synuxc 



68 



Pom's n° 38 



Un catalogue muiti-sed 


Kctour dans le Basic 


• Comment uuhser Pom's 


Pom's 33 


Una memoire tampon d*e*cran 


Halte au* Scrolls 


Essais Mac 


I j date avec AnnleWriipr 
it 


Disqueues DOS/Pascal 


Parches au DOS 3.3 


IntcrPom's Mac 


Graphisme sur Miniicl 


Mousccai 




JustTexl a I essai 


Raccourcir WPL 


Lucy in the Sky with Diamonds 


Pom's 24 


Scrolling* en HGR 


GS el QuickDraw II 


Jttrange accessoire 


Un disque virluol sous CP/Si 


Extasie & l'essai 


Heure et AppleWriter 


Fermez les /entires 


T1IGR sur DMPeilW 


Pico-Expert 


Coiiunandc cAicinc ; 0^ , LI^ r E 


Ou est la souns 


EXEC SAVE 




Impression avec AppleWriter 


Develnppernent 68000 


Printer 


Pom's 29 


Cats et Mouse 


La mcthodc PERT 


Datheur 


Recheiche d'octets 


Mac : en vi trine 


Hard-copy HGR IW 


TOKENisaiion des chaines 


« Caracieres Videotex 


Graphisme et Mmite( 


L'tntelligence artificielle 


PostScript 


Conversions HGR/DHGR 


Essai Mac : SideKick 2 


Vos programmes pcrdus 


Composcur telcphonique Mac 


Kyrarn : dc 1'octci au Nibble 


Recherche d'applicatians 


Creation de carac teres 


Macintosh et Presse-Papiers 


ProDOS et fichiers deiruiis 


NEWBOOT 




Le Bundle et le Finder 


Cryptage : Kruptos 


Essai : SuperMacro Works 


Pom's 20 


Analyse mullicritere 


Accessoire : Kruptos 


AppleWorks et LaserJet* 


DOS ou ProDOS a ta carte 


Hard-Copy stir GP500A 


PageMaker : essai 'wittier' 


Multiicribc 2.0 


Manipulation dc catalogue 
Copie d'ecran sur silemype 


Le kit 65C02 
Snake 


Macintosh SE et II 
Simpler* 


Tin ' - '1 "i 

fODj S j4 


Quaire fonctions pour le Basic 




Apple Wiitei et /RAM 


Copie d'dcran texte 40 el 


Des messages en botte 


Pom's 25 


Tabulations automatiques WPL 


AppleWorks : macros 


Gestiun de compies bancaires 


Temps anglais 


^ Ligne tel. artificielie 


Lc passage des parametres 

1 It * 1 -¥" n 

A 1 essai : les TimcOui 


Dccalagcs... 


Editeur de blocs ProDOS 




Utilisation de la carte langage 


Miroirs Janus 


Pom's 30 


72 points avec MacWrite 




Reset & PioDOS 


(jSPaint et Basic 


Essai Mac : Overvue 0. I 
# Pom_Link 2. 1 


Pom's 21 


Compdisk 


La souris ? facile ! 


Conversion Pascal/DOS 


Formatcur ProDOS 


Ilumcur... 


* Repondeur leiematique 


cdi graph 


Ad litterum 


MultiScribe 2.0 


Du cote des LaserWriter 


Coumcr automaiisc en WPL 


Ascenceurs en Basic 


OhgrTool : outil graphique 




RVVTS disassemble 


MacAstuces 


Jeu : souns-Lascr 


Pom's 35 


Dccrypicur 


pFinder 


'Patch' de BugByier 


Multi-laches : Share 


Library ; motif de satisfaction 


Tri dc chaines 


Freeware : un biflardd Vessax 


CD A : Alarme 


Une corbeille dans la pomme 


Disk][et tic 


Disquettes Pom's Mac B a I 


Courricr automalique 


Fenctres dc saisie 


Courbes fractales 


Essai Muc . More 2 


Pctii .guide PiuDOS 


La 36emc piste 


Hyper- espace 


Mac et le II :T Pom's 


NDA : Converter 


Un compatible incompatible ? 


Pom's 26 


Apple //ei le 11 : T.Pnm's 


Compilaienr Beagle 


Defilement graphique 


Big U dc Dcaglc 


Calcul dc k 


Des fenctres en IIGR 


Pom's 31 


Accessoire : Corner light 


Pom's 22 


Disquctles sans DOS 


Peeks et Pokes longs sur GS 


Mac : en vitrine 


Rcnommez les cdes ProDOS 


Lc Basic ct I'hcurc 


Accessoire ; Mini~montre 


Composition de n°*dc tel. 


Siariup Pascal cornplcl 


<Jraph.es el lonclions 


Double-Graphics 


Adaptation a ProDOS 


Cane Super Serie et CP/M 


CiOGO 




Compacicur dc Basic 


Tri de chames 


Essai ; carte vocalc Valentine 


Pom's 36 


Copie d'ecran GR 


Accessoire : 68000' s 


Venture en DHGR 


Vivre sans ProSel 


Dc la formulc a la combe 


Courbes 


fidiieur Videotex Pom's 


HGR ; Affitcxt 


'Startup' Basic sous ProDOS 


Loupe HGR 


Essai Mac : Writer ± 


ProDOS : comment fairc ? 


Dc* tine en Basic 


CALLRWTS 


Decompacteur Basic 


4 Le CD-Rom Apple 


Jeu de mots 


Comptcr.animaux 


Accessoire : MinAcc 


Formes en DHGR : Sprite 1.0 


Transfert II — "> Mac 


Lissajous 


Kino 


Essai : Xpress et graphisme 


Hyperparalle Up ipedes 


PonVs 27 


ft Nouveaux IntcrPom's 


SuperMasterMinat 


MacAstuces 


Le voyagcur 


SMW : Alrnanach et Mailing 


Mini-cdilcur Basic 


TeleAlarme Tclernaliquc 


Graphisme en Turbo-Pascal 


BRAM 


Six Lcttrcs 


Un camet d'adressc 


LcMousc : souris cl menus 




Des bugs sous ProDOS 


Ejectez les disqueues 3,5" 




Pom's 37 


Print Using 


L'apprenti-FORTHier 


Pom's 32 


Travaux pratiques Ensoniq 


Pom's 23 


Cane SSC ci CP/M (2) 


HGR ->SIIGR 


Une image, un source : Cut 


Mise en page 


Courbes fractales 


APW : macros commandes 


Le Turbo Pascal 


MacAstuces 


Ecran virtucl 


Programmer en AppleWorks 


Un composeur sur te IJc 


Essais Mac 


Un d£iccieur dc sonncric 


Copie dc ligncs avec SMW 


GENUTTLE 


Minuet et Macintosh 


lissai : Ummaie 


ProDOS : des indispensablcs 




ft I e Miniicl 


Demarrer sur Lnidtsk SOOKo 


AppleWorks ; un nouveau "loo 


Navetle 


Minitel et Apple // 


Commandc XCAT 


Les nouvcaux ccrans ProSct 


Un "Decruncher" 


L'Apple llgs 


Des filets en WPL 


(Mac)Plus de Jleches 


Un Disassembler 65C02 


Un crayon oplique 


Essai Mac : Microsoft Works 


Accessoire : Quid ? 


Jeu de la Vie 


Pom's 28 


Programme 'Mots croises 


* Essai : Flight Simulator 


Routine de saisie en Basic 


Fuseaux horaires 


4 Les Copy II 


MacAstuces 


SHOW, I. C, 


Essai Mac : Orthogiciel 2 


Shareware : disquettes DPA 


tmpQls sur Multiplan 


InierPom's Apple // 


Copy : une command? exteme 




Impots sur Multiplan 


CopyBasFilcs 


COPIE.TF 


En italiques : articles Mac 


SoflCopie 


Messages el Basic.System 


Pascal : fichiers sequentiels 


tt = article d mierei general 



Pom's n° 38 



^ N> Revues Pom's 

Of 



t n°8 35.00 FG n° 10 40,00 Fj n° 11 40,00 FD n°12 40,OOFD n° 13 40,00 FD 

8 n° 14 40,OOFD n°15 40,00 FD n° 16 40,00 FD n° 17 40,00 FD n° 18 40,00 FD 

S n° 19 40,00 FD n o 20 40,00 FD n°21 40,00 FD n°22 40,OOFD n°23 40,00 FD 

g n° 24 40,00 FD n°25 40,O0FD n°26 40,00FD n°27 45,00FO n°28 45,00 FD 

n n° 29 45,00 F □ n° 30 45.00 FD n° 31 45,00 FD n°32 45,O0FD n°33 45,00 FD 

•$ n° 34 45,00 FD n n 35 45,00 FD n n 36 45,00 FD n"37 45,O0FD n°38 45,0QFD 
a. 



C3 



s 



^ Disquettes Pom's Apple ][, 140Ko - 5,25 pouces 

vu Cos disquettes regroupent 1'ensembledes programmes pour Applp // d'unr* revue. 



% n° 1+2 60,00 FD n°3 60,00 FD n°4 60,00 FD n°5 60,00 FD n°6 60,00 FD 
n°7 60.00 FD n°8 60.00 FD n°9 60,00 FD n°10 60,00 FD n°11 60.00 FD 

~ n° 12 60,00 FD n°13 60,00 FD n° 14 60,00 FD n°15 60,00 FD n°16 60,00 FD 

5 n°17 60,00 FD n°18 60,00 FO n° 19 60,00 FD n°20 60,00 FD n°21 60,00 FD 

£ n v 22 60.00FD n u 23 60.00 FU n u 24 60,00 FL I n°25 60.00FD n u 26 60.00 F I I 

| . n°27 60.00FD n°28 60,00 FD n'29 60.00 FD n°30 60.00 FD n°31 60,00 FD 

<u $ n°32 60,00 FD n°33 60,00 FD n°34 60,00 FD n°35 60,00 FD n°36 60,00 FD 

2 m n ° 37 60,00 FD n°38 60,00 FD 

I S | Disquettes Pom's Apple ][, 8OOK0 - 3,5 pouces 

2 g Ces disquettes regroupent lensembledes programmes pour Apple //dune revue, 

oj co -o Elle sont au format ProDOS. 

p 3 I n°29 80.00FD n°30 80,O0FD n°31 80.00 FD n°32 80.00 FD n°33 80,00 FD 

y g J n°34 80.00FD n°35 80.00 FD n°36 80.00 FD n°37 80.00 FD n°38 80.00 FD 

§: - 

- • § I Disquettes Pom's pour Macintosh 

£ 2 Ces disquettes regroupent 1 ensemble des programmes pour Macintosh d'une revue. Programmes du domaine 

£* § public, polices de caractercs, nouveaux systemes etc. y sont joutos. Details dans chaquc numero. 

3g| n° 14+15+16 150,00 FD n°17 80,00 FD n°18 8O,00FD n°19 80,00 FD 

N N| n °20 80.00FD n u 2l 80.00 FD n°22 80.00 FD n u 23 80.00 FD n°24 80.00 FD 

Sg| n°25 80,00 FD n°26 80.00FD n°27 80.00FD n°28 80,OOFD n°29 80,00 FD 
n°30 80,00 FD n°3l 80,00 FD n°32 80,00 FD n°33 80,00 FD n°34 80,00 FD 

Um£ n°35 80,00 FD n°36 80,00 FD n°37 80,00 FD n°38 80,00 FD 



Recueils de la revue Pom's 



Ccs recueils regroupent quatrc numcros dc Pom's. 

n° 1 (revues 1 k 4) 140,00 FD n° 2 (revues 5^ 8) 140,00 FD n° 3 (revues 9 a 12) 140,00 FD 

Disquettes 1 a 4 200.00 F □ Disquettes 5 a 8 200,00 F □ Disquettes 9 a 12 200,00 F □ 

Cables communication 

Pour la mise en ceuvre des cables, se reporter aux numcros 27, 28, 30, 31, 33 et 34 de Pom's qui prosentent les 
programmes de communication. 

cable Minitel/ordinateur 225.00 F □ Pr6cisez le type d'ordinateur 



Cable local ordinateur/ordinateur 225,00 F □ Precisez les types 1 - 



Envoycz ce bon ct votre reglcment a : Editions MEV — 12, rue d'Anjou - 78000 Versailles 

Nom : 

Adressc : 

Reglementpar: CBA/isa/Euro/MasterCard Cheque bancaire □ Cheque postaf □ Mandat □ 

numero de la carte date d'expiration 

Montant , F Signature : 



70 



Pom's n° 38 



5 I Logiciels pour Apple ][ 

t | Ludologic140Ko 80.00 FC Ordico 140Ko 200,00 FO E.P.E 5.1 140Ko 200.00FD 

"> | EP.E5.1 800KO 200.00 F_ Clv_Pom'S 140KO 200,00 FU Civ_Pom's 8OOK0 200,00 FD 

§ jj InlerPom's 2.0 140Ko 450,00 FZ Inter Pom's 2.0 8OOK0 450,00 F □ 

§ Pom_Link 3.1 1 40Ko 450,00 F Z PomJJnk 3.1 8OOK0 450,00 F Z (avec carte Joker : 400, 00 F) 

8 I SuperMacroWorks 500,00 F Z (Joker : 450,00 F) Compilateur Beagle 750,00 F □ (Joker : 675, 00 F) 

I § BigU 450,00 FU (Joker: 400,00 F) ProSel 500,00 F □ (Joker : 450,00 F) 

§jH § Copy II Plus 8.3 500,00 F I 1 (Joker : 450,00 F) PathFinder 150,00 FD 

* TirneOut Graph 850,00 F Z (Joker : 765,00 F) TimeOut SuperFonts 800,00 F □ (Joker : 720,00 F) 

j| TimeOut UltraMacros 650,00 F _i (Joker: 585,00 F) TimeOut SideSpread 550,00 F □ (Joker : 495,00 F) 



•S a ^ Disqucttcs 'shareware' pour Apple ][ 

£ e Presentation des 'DPA' dans le numcro 37 ct des T?olices' dans ce numero. 

£ DPA140KO '001'! I '002M I '003' i I '004' n '005* Q '006' n WG 80,00 F par disquetle 

£ J DPA8OOK0 wra wn wn wo 4 005'n wn wn so.ooFpardisquetiQ 

> a Polices 140Ko'001'n '002' □ '003' □ 80,00 F par disquelle 

■a | Polices WOKoWD '002' □ '003* □ 80,00 F par disquette 

* ~ 

1 3 5- Logiciels pour Macintosh 

2^1 Ex eel eff icace 400Ko 1 90,00 F □ Excel eff icacc 8OOK0 1 75,00 F □ M ac Astuccs 200,00 F □ 

qj n f Clv_Pom's 200,00 F □ InterPom's 2.0 450,00 FD Raccourci 200,00 FD 

06 - Le iiwe du Macintosh 200,00 F □ Pom_Link 3.1 450,00 F □ (avec cane Joker : 400. 00 F) 

£ 3 J Copy II 7.1 500,00 F □ (avec carte Joker : 450,00 Fj 



Mr 

5 a I Disquettes 'domaine public' pour Macintosh 

&<2g- Mac'A'D 'B' □ 'CD 'D'D 'E' □ 'PD 'G'Z 'H' □ T □ 80,00 F chaque 

« I 1 



^ 5 5 ^ Logiciels pour IBM PC 

S .ts S Secrets de Multiplan 175,00 Fn InterPom's 2.0 450,00 FO 

I 

u ooq. t» Reliures 

q % Reliures toilees pour 6 numeros de Pom's (un an) : exemplaire(s) a 75,00 F, soit . 



fa* Abonnements (comprenant la carte Joker) 

l^^3 La carte Joker offre un acces privilegie a notre Hotline (assistance dans la mise en eeuvre des programmes 
^HJ|J diffuses par Pom's) f*t donnr* droit a dns remises snr Ins produits Pom's. 

Abonnements pour six numeros a partir du , a : 

la revue Pom's seule 225,00 FD 

la revue et les disquettes Apple ][ 1 40Ko 525,00 F □ 

la revue et les disquettes Apple ][ 800Ko 625,00 F □ 

la revue et les disquettes Macintosh 625,00 FD 

la revue Pom's, les disquettes Apple ][ 140Ko - 5' 1/4 et les disquettes Macintosh 925,00 FD 

la revue Pom's, les disquettes Apple ][ 8OOK0 -3* 1/2 et les disquettes Macintosh 1025,00 FD 



Envoyez ce bon et votre reglcment a : Editions MEV - 12, rue d' Anjou - 78000 Versailles 

Norn : 

Adresse : 

Reglementpar; CB/Visa/Euro/MaslerCard Cheque bancaire □ Cheque postal □ Mandat □ 

numero de la carte date d'expiration 

Montani _ _ r F Signature : 



Pom's n° 38 



71 



Jamais un outil aussi rapide 
n f a ete aussi simple 



Compiler un programme Basic 
avec le bon outil, c'est : 

»* Transformer le Basic en langage machine, 

sous ProDOS, 
»> Accelerer de 2 k 20 fois 1' execution des 

programmes, 

G6n6rer un code plus compact que le Basic 
original, 

Compiler instantanement, lors du RUN, 
ou sur disque, 

Utiliser les cartes d' extension-memoire, 

Gagner en confidentiality : le code est 

herm&ique, 

Gagner en efficacite . . . 

Compilateur, documentations francaise et americaine 
750,00 F TTC, (abonnes 675,00 F), frais de port 20,00 F. 
Pom's - Editions MEV - 12, rue d'Anjou - 78000 Versailles 
(commande par Minitel : (1 ) 39 53 04 40) 
Banc d'essai, Pom' 35 






. . .LA solution pour relier aux Apple //e et ] [+ : 

• un "Apple 3.5 GS Platinum" 8OOK0 

• un lcctcur Macintosh 8OOK0 

• un lecteur Macintosh 400Ko 

• un lecteur Chinon 8OOK0 

• un Unidisk 5,25" 140Ko 

Connectee a n'importe quel port, elle pilote deux lecteurs (meme 
differents, pouvant totaliser 1,6 mega). Elle per met le travail bit a 
bit avec tous les lecteurs d'aujourd'hui (ce travail etait impos- 
sible avec l'Unidisk 3.5"). 

Carte UDC : 1 050,00 F TTC franco 
Tarif carte Pom's Joker : 945,00 F TTC 



Logma S.A. - 12, rue d'Anjou - 78000 Versailles - Tel : 39 51 24 43 



Vends Unidisk 3.5' 8OOK0 avcc sa 
carte contrdleur pour II+, //e ou 
IIGS : 2 5GU00 R 

M. CftflCOW 90 74 29 64 dans la 
journee ou 90 04 75 59 apres 19h. 



Vends lectcur 3.5' 8OOK0 pour 
Apple IIGS (achete 1e 16/03/88), 
2000,00 F. 

Thierry Btaricarelli - 47, rue du 
Javelot - 75645 Paris Cedex 23 



Vends ou echange contre materials 
et aceessoires Apple, 1 ordinateur 
Junior-Computer 64Ko a base de 
6502, avcc nombreuses 
ameliorations materielles ct 
logicietles et commutations de 
Roms en bancs de I6K0. Idem pour 
un adaptatcur Tckelec Minitel 
vers imprimante parallele. Idem 
pour carte synthcse de parole en 
franqais pour Apple II ct carte 
digitalisation de son pour Apple 
II. 

Gerard Mourier (1) 40 35 26 25 
(soir) 



Vends Apple //e 128Ko 65C02, 80 
colonnes, ecran couleurs, lecteur 
5,25' & cuntruleur, buuris, joystick, 
livrcs, excellent etat, 6 500,00 F. 
Lectcur Unidisk 3.5 avcc carte & 
manuel, Mouscdcsk 3.5, 3 000,00 F. 

Alain Ctiane To Hing - 95, route 
de St Franqois - 97400 St Denis - 
Reunion © 30 09 54 



Recherche pour Apple //e carte 
interface pour disque dur Profile. 

Vends scrvcur Minitcl : Apple 
//e> Appletel, Profile 5 Mo, carte 
CP/M, imprimante, 15 000,00 F a 
dcbaltre. 

Patrick Bonnot - 4, Cour du Cinkgo 
75072 Paris (1) 4.3 40 4.9 74 de 
20h A 22h. 



Vends Apple //c avcc moniteur 
monochrome, souris, 2 joysticks, 
nombreux livrcs, lecteur extenie, 
5 000,00 F. 

Armani Peyrct-Forcadc - 8, rue 
Bernard Palissy - 92800 Puteaux 
<D(1)47 78 75 79 apres 19h. 



(Petites 
annonces 

Vends Apple IIGS couleurs l,2Mo, 
un lecteur 5,25', un lecteur 3,5', 
9 000,00 R 

Thomas Schmitt & (1) 49 86 55 88 
apres 19h. 



Recherche unc souris avec une 
interface pour Apple 7/e, en etat 
dc bon fonctionnement. 

Michel Barran 99 81 95 24 



Horizontalement 

1 - Affoles 

2 - Coequipier 

3 - Administrations 

4- Rogna - Stable 

5- FJaire - Premiers <Je Teditien 

6 - N'en finit pas de mettre en 

morceaux - Vit 

7 - En cours d'arrestation - Bossai 

8 - Lopin - Moindre 

9 - Voyelles - Organisme agricole 
10 - Situe - Subsists 

Verticalement 



Recherche explications : Pin 
Point Dialer, numcroteur auto- 
malique a parlir d'une base dc 
donnees AppleWorks, ne 
fonctionne pas en France sur le 
rcseau telephoniquc. 300,00 F de 
prime a celui qui trouve la 
solution ! 

Michel Sallat 045 62 52 68 



Recherche conseils pour fairc 
foncrionner une carte Time II sur un 
Apple / /e. 

Philippe Dormont (082 25 64 95 



Vends Apple //e 84, 5000,00 F. 
Guy UPeutrec 035 20 77 96 

























n 


G 


S 


1 


H 


T 


fl 


N 


T 


E 






R 


E 


T 


R 


ra 


U 


U 


ft 


1 


s 


— CO 




T 


R 


E 


M 


m 


L 


E 


R 


A 


s 


c 




D 


E 


P 


ft 


d 


fl| 


1 


R 


R 







E 


N 


P 1 




R 





M 




R 


a. 




U 


1 


El? 

mf 


m 


E 


R 


y 


i 




— c 




1 


T 


M 






1 




- W 





R 




R 


L 


1 E 


N 


E 


R 


R 






E 


S 


T 


E 


s ■ 


T 


R 


E 


3 
















\ 







1 - Adopterais 

2 - Recouvrirai 

3 - Preparers 

4 - Pour prendre Fair ! - Pot d'alchimiste 

5 - Arrivait - Fosse 

6 - Grains odorants - Choix 

7 - Panier perce - Base d'aperitif 

8 - Franchernent, non ! 

9 - Des ans - 12 3 4 ^ 6 7 8 910 

Apprendra ^ 

10 - Personnel - — — 

Detendis 2 

3 




Pom's n° 38 



il est dans la micro-inform atique 
Apple des noms maciques. Glen 
Bredon est de ceux-ci. Il est des 
programmes qui sim plifient l'lnfor- 
matique, qui offrent souplesse et 
l1berte. prosel est de ceux-ci. 




fr0sel est au5si un ensemble 
d'utilitaires. — Recherche de 
fichiers dans les dossiers — dump 
de tous fichiers fn ascii ou textf — 
Suppression logique de volumes 

ProDOS INUTII.ES A UMF APPLICATION 

— Execution programmee 
d' applications avec minutace des 
sequences de travail — 
Constitution d'une memoire-cache 

— Gestion des sauvecardes et 
restitutions de tout volume 
ProDOS (disques durs sur 
disqufttes) — Programme de copie 
universel et de manipulation de 
fichiers y compris recuperation de 
fichiers effaces — analyse de 
inoccupation dfs disques, arbre de 
catalogues, affectation des blocs 

reorganisation des disques — 

Recuperation de disques abimes — 
Protection d' applications par mot 
de passe — formateur pour les 
disquettes 3,5 pouces en DOS 3.3 — 



Sur les Apple, ProSel. 



La libfrtf est accessible : 500,00 F y 
COMPRIS DOCUMENTATION FRAN£AI5E, 

Port 20,00 t\ Tarif carte Joker : 
450,00 F — Editions MEV/ Pom's 
12, rue d'Anjou - 78000 Versailles 
© : (1) 39 51 24 43 - Commande par 
Minitel au : (1) 39 53 04 40 





TimeOut 
UltraMacros 

Version francaise Pom's 




Imprimer avec des dizaines de polices de 
caracteres (Pom's en propose deja plus de 
100) ? SuperFonts 
Exploiter lisiblement votre tableur a 1'aide de 
graphiques ? Avec toutes options de 
presentation ? Graph 
Vos tableaux imprimes horizontalement, en 

deux polices et huit tailles ? SideSpread 
Tout automatiser grSce k un un super-langage 
de programmarion dou6 d'lf Then Else, Peek, 
Poke, Call, variables chaines et num6riques ? 
UltraMacros 




SOFTWARE 



Les TimeOut 
et 

AppleWorks 1.4 



Des aujourd'hui 9 TimeOut • SuperFonts • Graph • SideSpread • UltraMacros 
Data Converter • Debug • Valcurs ASCII • File Status ■ AWP to TXT 

En francais, sur 1' AppleWorks 1.4 fr an^ais, avec manuels f rancais, grace a Pom's 

fiditions MEV - Pom's — 12, roe d'Anjou — 78000 Versailles — (1) 39 51 24 43 — Serveur Minilel (1) 39 53 04 40