:----------------------------------------------------------------------: | ---:--- :---- : :---- /--- /\ /---\ ---:--- :---- /--- | | | |____ | |____ | / \ |___| | |____ \ | | | | | | | /____\ | \ | | \ | | | |____ |___ |____ \___ / \ | \ | |____ ___/ | |______________________________________________________________________| chapitre II ( eh voui ze revien ;o) ) par bLoRP ^^^^^ Salut amis de l'underground francais !!!!!!!!!!! eh bein voala, bLoRp revient dans NOROUTE IV (eheh vive DsT!) vous embetter avec ses telecartes, bon c'est vrai que mon dernier art etait poa top, mais bon, avec toute les difficult‚s qu'ya'eu ces derniers temps, c'est deja bien que ca ai pu sortir ;o) De toute facon, en gros c'etait comprehensible, et cette foa ci apres m'etre bien pris la tete sur le pascal, j'vous propose un ptit prog d'emulation assez sympa, mais j'vous previens tout de suite, je l'ai poa test‚ :(:(:(:( Alors, la vous allez m'dire ke c con de diffuser un prog k'on a pas teste, eh bein la j'suis d'accord avec vous, mais le prob c ke j'ai pas de protable (bein voui, j'retape alors mon papa et ma maman y zon pas voulu m'en offrir un :( ) Ces considerations purement materielles derrieres nous, je dit kan meme que j'ai verifi‚ que les impulsion sur le port // etaient OK et ke tout marchais a peu pres bien ( vous en avez de la chance hein !!) donc si vous avez un portable mettez moa un ptit mail et on diskutera des resultat de ce magnifike bidouillage !!. 1\ the principe of ze realisation: --------------------------------- Le principe et classique, en fait on va se servir d'un contacteur en plaque epoxy reli‚ au port parralele d'un pc, sur cette plaque epoxy il y' aura des pistes et des contacts comme sur une telecarte pour recuperer les des signaux a la cabine. Le tout sera reli‚ par un naple au pc, c'est sur que c'est pas tres discret, mais bon de toute gacon y vous faudrat forcement un portable pour vous amuser une fois que ce sera du 0.00frs/min ;o) 2\ quelques precisions sur les telecartes : ------------------------------------------ Bon j'en entend deja dire que j'radote et que j'ai deja racont‚ pleins de trucs sur le fonctionnement de ces bebetes dans le dernier numero de noroute, et bein en fait y s'avere que certaines personne mon appel‚es pour me dire qu'elle avaient rien a faire de la convention iso inverss‚e et qu'elle aurait prefer‚ une petite explication toute simple sur le fonctionnement de la carte: Donc une telecarte ca sert a payer dans une cabine publique (ehehehe vous etes impressionez la hein ???) On peu acheter une telecartes dans les agences france telecoms ou dans les byreau de tabacs: donc vous allez me dire qu'y'a poa besoin d'en faire des fausses puiske on peut les avoir dans le commerce !!!! ----> et bien non vous avez tord, parcequ'il faut les ACHETER, alors vous qui etes bein sur totalement anarchiste et contre le payment de koa ke soi, vous vous dite et bein on va ecouter bLoRp qui va nous expliker comment en faire une pour poa un rond !!!!!!!! donc apres ces courtes mais o combien importantes explications, j'men vais vous expliquer le cycle de lecture ecriture dans la memoire d'une telecarte, en fait il est assez simple sur le principe, mais d'abord examinons le brochage de la carte: (uniquement l'iso) haut /---------------------------------------------------------------------- - - - ( ^ |<------------------------------>: | distance b | distance c : | | : v | +------------+-------+-------+------------+ | | | | | | a (1) | e (5) | | | | | broche: | |____________ | ____________ | | | \ | / | a: alim (ttl) | | b (2) +-----+ | f (6) | b: | | | | | c: | |--------------| |--------------| d: |<--------->| | | | e: |distance d | c (3) |___________| g (7) | f: | |_____________/ | \_____________| g: | | | | h: | | | | | | d (4) | h (8) | | | | | | |____________________I____________________| | ^ | | | | distance a | | ( | \__________________________________________________v__________________ _ _ _ bas Pour imiter les contacts, vous prenez pas la tete a reproduire le dessin des contacts sur votre typon, vous faites justes 4 plots en cuivre: =1= =5= =2= =6= =3= =7= =4= =8= la position de ces plots est: ( en mm ) +-----------------+-------+-------+-------+-------+ | bornes\distance | A | B | C | D | +-----------------+-------+-------+-------+-------+ | 1 | XX | 19 | XX | 10.25 | | 2 | XX | 21.5 | XX | 10.25 | | 3 | XX | 24 | XX | 10.25 | | 4 | 24.97 | 27 | XX | 10.25 | | 5 | XX | 19 | 17.87 | XX | | 6 | XX | 21.5 | 17.97 | XX | | 7 | XX | 27 | 17.97 | XX | | 8 | 24.97 | XX | 17.97 | XX | +-----------------+-------+-------+-------+-------+ Quellques specifications mecaniques: les bornes mettaliques doivent avoirs au moins 2 sur 1.7 millimettres de long, sinon il y aura des problemes de contacts, quand a la position des contacts, regardez le fichier .gif fourni avec le mag, c'est le typon du du connecteur a mettre a la place de la carte, si vous avez des problemes avec les nouvelles schlumberger a cause des detecteurs de metaux, reliez le plans de masse sur le dessus du CI a la carroserie de la cabine par ou a n'importe quel truc mettalique qui trainera. je vais maintenant detailler la maniere dont se passe la lecture et l'ecriture dans la memoire de la carte, le chronogramme qui suis et un peu rebarbatif a premiere vue, mais j'ai essaye de dettailler un petit peu comment ca marchais en dessous et vous ne devriez poa avoir de probleme pour comprendre comment ca marche. Ce diagramme est tire de l'artcile de SB " what you need to know about electronics telecards", je l'ai detaill‚ le plus possible, mais bon y faut quelques lecture avant d'avoir tout pig‚ :-) . +21V _____________ +5V ____________________________________| |_________________ Vpp : : +5V ___________________:_____________:_________________ Reset 0V ________________| : : : : : +5V ____ : ____ : ______:______ 0V ___| |_______:_____| |________:______| : |__________ Clock : : : : : : : : : +5V : : : : : :______:______: : _ 0V ___:____:_______:_____:____:________| : |______:__________ R/W : : : : : : : : : +5V : : :_____: :________: : : :__________ 0V indetermineindete_____indetr________indetermineindetermine__________ Out : : : : : :<-----><---->: : : : : : : :10 to 10 to : : : : : : :50 ms 50ms : Reset Bit 1 Bit2 Bit 3 card reading reading Bit2 writing to 1 reading Bon en fait c'est assez simple, d'abord, la procedure de reset, le reset a lieu lorsque la broche reset est mise a 0V, donc en temps normal, cette broche doit se trouver a 5V, en fait, nous n'avons pas grand chose a faire de cette broche, les reset sont tres rares et ils n'interviennent presques jamais lors d'une utilisation normale, sauf a l'initialisation bien sur. Pour la broche clk (clock) c'est un peu plus compliqu‚, en fait c'est cette broche qui sert a determiner quelle adresse dans la memoire de la telecarte devra etre lue ou ecrite. Elle est associee a la broche R/W pour effectuer ce travail. A chaque impulsion sur la broche clk, le pointeur d'adresse de la telecarte sera increment‚ a la fin de l'impultion (milieu du front descendant) La broche R/W est celle dont le fonctionement est le moins evident, elle sert en fait a empecher l'incrementation du compteur d'adresse par l'horloge clk, c'est a dire que lorsque cette broche est a 5V, on sait que la cabine effectue l'ecriture d'un bit. C'est le seule usage de cette broche, elle est tout le temps activee en meme temps que vpp, ce qui n'est guere etonnant ! La broche vpp est elle la plus simple de toute, c'est par elle que sont ammen‚ les 21 Volts necessairent a l'ecriture d'un bit dans la memoire. La broche i/o n'est elle aussi pas tres mysterieuse, c'est par elle que la cabine connait l'etat du bit point‚ par le compteur, en fait, a chaque foi que l'impulsion sur la broche clk est termin‚, cette broche renvoie l'etat du bit en question, +5V ou 0V en fonction de son etat logique. La deuxieme fonction interresante de cette broche est aussi le fait que c'est elle qui indique si l'ecriture d'un bit s'est bien pass‚e, en fait apres chaque ecriture, la broche passe a l'etat haut pour dire a la cabine que tout c'est bien pass‚, c'est en fait la principame broche que devra simuler notre programme. Les seules broches qui reste sont l'alim, mais la je crois que j'ai pas besoin de detailler ;)) . 3\ le programme d'emulation: -------------------------- Eh bein d'abord je precise qu'il est en pascal (eheh fuck C) mais que ca devrait pas poser trop de probleme de le porter sur un compilateur C, etant donn‚ que les parties les plus importantes sont en asm ;) Le principe de ce programme est simple, en fait, on va creer un tableau, qui contiendra la replique exacte des informations presentent sur la telecarte a sa sortie d'usine, ces information, serront editee par vous dans un fichier texte qui sera charger dans le tableau, apres en fonction des infos recuper‚s sur le port, enverra ces bit sur la broche correspondant a la borne i/o de votre connecteur. tout d'abord, un ptit organigramme: notre programme doit donc renvoyer sur la broche i/o l'etat d'un bit stokee dans un tableau, l'emulation doit commencer apres la periode de reset, et le nombre d'impulsion sur la broche clk doit etre comptabilis‚ dans une variable qui nous servira de pointeur sur le tableau.On va aussi devoir faire reagir la broche i/o en fonction de l'etat de R/W, la broche vpp elle sera mise en l'air, puisque de toute facon elle varie en meme temps que R/W !! Donc si on compte bien,ca fait qu'il nous faut quatres ligne d'entree sortie donc, le port parralle nous sera largement suffisent pour faire ce travail ;) enfin l'organigramme tant attendu: +-------------+ | DEBUT | |_____________| |_______________ V | +------------------+ | ; attention lorsque la | la broche | | ; broche reset passe a l'etat | RESET est elle | | ; haut, cela veut dire que le | a 5V ???? |_____| ; RESET est termin‚ et pas |__________________| non ; l'inverse | oui | V +------------------+ ; cette phase d'initialisation | initialisation du| ; comporte aussi la saisie du | programme, notem-| ; nom du fichier contenant les | chargement du ta-| ; octets devant etre simule (le | bleau avec les | ; miroir de la memoire d'une | bonnes valeures. | ; vraie telecarte ) |__________________| ; +initialisation port et variable | ; diverses |<---------------+ V | +------------------+ | | la broche clk | | +-------->| est elle passe a | non | | |l'etat haut ???? |______| | |__________________| | | oui | | | | | V | +-------------------+ +----------------+ | | la broche R/W et | oui | executer la pro| | | elle a 1 ?? |-------->|sedure ecriture | | |___________________| |________________| | | | | non | | | V | +-------------------+ | | incrementation | ; cette variable sera | | d'une variable | ; l'equivalent du pointeur de la | | compteur | ; telecarte, sauf qu'ici elle | |___________________| ; pointera sur un tableau. | | | | | V | +-------------------+ ; cette boucle servirais a atendre | | eventuelement | ; le milieu du front descendant de | | precense d'une | ; l'horloge ( fin de l'impulsion | | boucle de tempo | ; sur la broche clk). | |___________________| | | | | | V | +-------------------+ | | recuperation dans | | | le tableau du bit | ; juste un truc du genre array[] !! | | pointe par la | | | variable compteur | | |___________________| | | | | | | | V | +--------------------+ | | envoi du bit sur | | | le port du pc | | |____________________| ; si toute cette partie c'est | | ; bien passe, alors on peut | | ; retourner attendre la prochaine | | ; impulsion sur clk.sauf si une | V ; ecriture va avoir lieue : | +-------------------+ +----------------+ | | la broche R/W et | oui | executer la pro| | | elle a 1 ?? |-------->|sedure ecriture | | |___________________| |________________| | | | | non | | +--------<---------+ procedure d'ecriture: -------------------- +-----------------+ | debut | |_________________| | | V +-----------------+ ; c'est le temp d'ecriture de la | tempo de 1/10 | ; dans la pseudo memoire de la carte | de seconde | ; je n'ai pas generer ce delai avec |_________________| ; le 9253 du pc, c'est seulement une | ; boucle, donc prevoyez une variable | ; pour les essais. | V +-------------------+ | la broche i/o | | est mise a 1 | |___________________| | | V +-------------------+ | retour prog | | principal | |___________________| ThE CoDe: ---------------------- cut here --------------------------- program telekart; uses crt; var pointeur : word ; { c'est le pointeur d'adresse } increp : word ; { on sais jamais peut etr + de 256 } tempovar : word ; { ce sont les } tempova2 : word ; { variables de tempo } fich : string ; { variable necessairent a l'ouverture du } handle : text ; { fichier binaire de la memoire } bit : array[1..256] of byte ; { le fameux tableau simulant la memoire} { de la telecarte. } {--------------------------------------------------------------} { les choses serieuse commencent ici ;o) } {--------------------------------------------------------------} begin asm xor ax,ax { un ptit mode texte} mov ax,3h int 10h end; clrscr; {tout d'abord on initialise les differentes variables} pointeur := 1 ; increp := 1 ; {maintenant on initialise le tableau de bit} writeln('fichier binaire a lire a lire: '); {on ouvre le fichier} gotoxy(23,2); {contenant l'image de la} readln(fich); {memoire de la vraie telecarte} Assign(handle , fich); reset(handle); for increp := 1 to 256 do { on rempli le tableau avec les valeures} begin { lues dans le fichier memoire } read(handle,bit(increp)); end; { voala, le tableau est rempli de saintes} { informations. ;o)} --------------------- cut here ---------------------------- 4\ utilisation du soft: Eh bein la, c'est pas tres compliqu‚ !!, en fait, votre seul travail est de confectionner la toute petite interface decrite au paragraphe suivant et de connecter le tout au port parrallele de votre PC, ensuite, apres avoir fait demarrer le soft, vous choisisez la bonne valeure pour les variables de tempo, la je peu pas vous aider, elle seront differente en fonction de la cpu de votre ordinateur (si vous etes interress‚, programmer le 8253 pour generer des intervals de temps fixe), une fois cette manipulation effectu‚, le systeme est pres a fonctionner, il n'y a plus qu'a introduire le connecteur dans l'emplacement habituel de la telecarte, et normalement vous pouvez vous amuser pour pas un rond !!!!!!!!!!!!!!! Vous devez aussi specifier quel fichier binaire utiliser pour l'emulation, le plus simple est d'en creer un avec un editeur de texte, en fait c'est pas vraiment un fichier binaire, mais un fichier asci qui contient des 0 et des 1. Pour en faire un, vous avez qu'a regarder la carte de la memoire que j'ai do- nner au dessus, tout est detaill‚ ;)). Il faut quand meme preciser que le programme lit dans le fichier tout les caracteres d'une ligne, donc ne mettez qu'UN seul 0 ou 1 par ligne sinon, ca va m‚chamment planter votre machine :( -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= LeS GrEeTs: eH BeIn ToUt Ie GrOuPe DsT: NeurO buzybee mac^mahon StraumA Sarace et puis bein HoTcOdE aussi tient !! eT pUiS Je GrEeT AuSSi: [idHack], DeelighT, jump4, leader2, c6 (bein voui y font tous partis du lyon 2600 ;o) ), kickers, mos-fet, ukm5, crifalo sAnS OuBLieR MeS CoMpAgNoNs de DaLnEt: aaah, vagabon mon papa et ma mamam !! voila si vous voulez voar le bLoRp: allez sur: http://www.mygale.org/09/blorp et sur #phreakfr (dalnet) et #banane ----------------------------------------------------------------------