1

Voila l'algo de link haut niveau que je compte faire opour pedrom.
; Machine State
; Toujours abortable par BREAK ou Timer expired (ResetLink dans ce cas la)
; ReadPacket :
; Read Header (4 bytes) in global var !
; If data et cid != CTS, ACK, RDY, SCR, CMD, EOT
; Ou cid = VAR, XDP, REQ, ou RTS
; Alloc Handle (en global) and read data
; Read CheckSum
; CalcCheckSum ?
; No => ResetLink / SendPacket(CID_ERR, 0, NULL) / Redo ReadPacket
; CID == ERR => SendPacket(LAST_CID, LAST_LEN, LAST_PTR) / Redo ReadPacket
; CID != ACK => SendPacket(CID_ACK, 0, NULL)
; If time out / Break, throw an error

; SendPacket(Cid, Len, ptr)
; If Cid != ACK
; LastCid = Cid / LastLen = Len / LastPtr = ptr
; MakeHeader(MID, CID, ByteReverse(len))
; SendData(Header, 4)
; if (ptr)
; SendData(ptr, len)
; Calculate CheckSum
; SendData(CheckSum, 2)

; OSLinkCmd() :
; TRY
; ReadPacket()
; Translate Packet
; If ACK or EOT or ERR or RDY
; Exit
; If XDP (Data but we don't what to do with them)
; FreeHandle(PACKET_DATA_HD)
; If VAR or RTS (Send Variable)
; Copy Name in temp global (?) buffer.
; Check if name already exists (Variable type bof sad)
; Yes ? SendPacket(CID_SKIP,0,NULL) / Exit
; FreeHandle(PACKET_DATA_HD)
; SendPacket(CID_CTS, 0, NULL)
; If (ReadPacket() != ACK)
; Redo Translate packet
; ReadPacket() != XDP ?
; No => Redo translate Packet
; Add file with the current file name, and use as handle PACKET_DATA_HD
; Exit (No wait for EOT)
; If REQ (Request variable)
; If it is a variable request (Check Variable Type PACKET_DATA_HD != 19, 1A, 1B, 1D, 1F)
; Search for the name in the VAT (in PACKET_DATA_HD)
; Not found ? SendPacket(CID_SKIP,0,NULL) / Exit (It seems it isn't the way AMS does, but I think it should work)
; Create the VAR Header
; SendPacket(CID_VAR, sizeof(VarHeader), &VarHeader)
; If (ReadPacket() != ACK)
; Redo Translate packet
; ReadPacket() == CTS ?
; No => Redo translate Packet
; SendPacket(CID_XDP, *((short *) VarPtr), VarPtr)
; If (ReadPacket() != ACK)
; Redo Translate packet
; SendPacket(CID_EOT, 0, NULL)
; If it is a directory request
; Not implemented yet tongue
; If SCR
; SendPacket(CID_XDP, 3840, LCD_MEM)
; We don't check the ACK. It doesn't matter in my opinion
; Default:
; ResetLink
; ONERR
; if (Break)
; ERD_dialog(BREAK_KEY)
; else ERD_dialog(LINK_Transmission)
; OSClearBreak
; OSResetLink
; ENDTRY

Qu'en pensez-vous ? Des remarques ?

PS: Faut connaitre le protocle Ti avant de poster.



2

Personne ? Sniff sad

3

connais pas le protocole TI.
j'aurai pas posté si t'avais "snif"
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

4

Moi aussi j'aimerai bien t'aider, mais j'avoue ne pas avoir les connaissances requises sad
(même remarque que Squale92)
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

5

Idem pour moi.
Essaye de demander sur le forum de la TICT, il y a des personnes ayant travaillés sur le link (par exemple Greg Dietsche) qui peuvent peut-être t'aider.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

Et comment on peut faire pour avoir des connaissances sur le link ?

7

Une des premières doc que j'ai eue sur les TIs (Merci ExtendeD smile)

Est-elle toujours valable pour les 92+/89/v200? je sais pas, mais ça donne toujours une idée...

http://membres.lycos.fr/ximoon/divers/ti-prot.txt

(et je ne sais pas si ça a un rapport avec le topic, dsl)
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

8

Attention, c'est pour 92 ça, je suis pas sûr que ce soit exactement pareil pour 89/92+, doit y'avoie quelques différences.

PpHd : à première vu ça devrait aller, mais peut être que y'a quelques cas particuliers qui font tout coincer.

9

pphd> ce sera koa exactement pedrom? grin

10

baaa, demande directement à Roms, la reponse viendra plus rapidement smile

11

Nerick> Pedantic ROM, je crois
un projet que PpHd a d'écrire une ROM pour nos TI, qui serait bien plus optimisée que celle existante (mais pas forcément aussi compléte)
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

12

excellent smile
depuis le temps qu'on fantasmait là-dessus... grin

13

tiens le nom a changé grin
et à part afficher du texte, elle a quoi comme fonctionnalités de programmées ?
faut absolument rendre standard les nvg mais ça je t'apprend rien wink
avatar
納 豆パワー!
I becamed a natto!!!1!one!

15

Dans ton send_packet, il faut prendre en compte le fait que le checksum n'est pas systématique !!!


je regarde le reste, mais c'est peu lisible...


n'hésites pas à me contacter surtout si tu connais VB, j'ai les sources du dialogue PC-TI commenté, fonctionnel avec 92 92+ 89 à peu de modif près...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

16

Desole, le forum a detruit toute mes belles tabulations.
Envoie moi ta source a ppelissi@caramail.com, merci.

>et à part afficher du texte, elle a quoi comme fonctionnalités de programmées ?
Tu es mauvaise langue. Pour punition, tu auras pas la beta tongue

17

C'est mieux là smile :

Voila l'algo de link haut niveau que je compte faire opour pedrom.
	; Machine State
	; Toujours abortable par BREAK ou Timer expired (ResetLink dans ce cas la)
		; ReadPacket :
		; 	Read Header (4 bytes) in global var !
		; 	If data et cid != CTS, ACK, RDY, SCR, CMD, EOT
		;		Ou cid = VAR, XDP, REQ, ou RTS
		;		Alloc Handle (en global) and read data 
		; 		Read CheckSum
		; 		CalcCheckSum ?
		;		No => ResetLink / SendPacket(CID_ERR, 0, NULL) / Redo ReadPacket
		;	CID == ERR => SendPacket(LAST_CID, LAST_LEN, LAST_PTR) / Redo ReadPacket
		;	CID != ACK => SendPacket(CID_ACK, 0, NULL)
		;	If time out / Break, throw an error
		
		; SendPacket(Cid, Len, ptr)
		;	If Cid != ACK
		;		LastCid = Cid / LastLen = Len / LastPtr = ptr
		;	MakeHeader(MID, CID, ByteReverse(len))
		;	SendData(Header, 4)
		;	if (ptr)
		;		SendData(ptr, len)
		;		Calculate CheckSum
		;		SendData(CheckSum, 2)

; OSLinkCmd() :
	; TRY
	; ReadPacket()
	; Translate Packet
	;	If ACK or EOT or ERR or RDY
	;		Exit
	;	If XDP	(Data but we don't what to do with them)
	;		FreeHandle(PACKET_DATA_HD)
	;	If VAR or RTS	(Send Variable)
	;		Copy Name in temp global (?) buffer.
	;		Check if name already exists (Variable type bof :()
	;			Yes ? SendPacket(CID_SKIP,0,NULL) / Exit
	;		FreeHandle(PACKET_DATA_HD)
	;		SendPacket(CID_CTS, 0, NULL)
	;		If (ReadPacket() != ACK)
	;			Redo Translate packet
	;		ReadPacket() != XDP ?
	;			No => Redo translate Packet
	;		Add file with the current file name, and use as handle PACKET_DATA_HD
	;		Exit (No wait for EOT)
	;	If REQ		(Request variable)
	;		If it is a variable request (Check Variable Type PACKET_DATA_HD != 19, 1A, 1B, 1D, 1F)
	;			Search for the name in the VAT (in PACKET_DATA_HD)
	;			Not found ? SendPacket(CID_SKIP,0,NULL) / Exit (It seems it isn't the way AMS does, but I think it should work)
	;			Create the VAR Header
	;			SendPacket(CID_VAR, sizeof(VarHeader), &VarHeader)
	;			If (ReadPacket() != ACK)
	;				Redo Translate packet
	;			ReadPacket() == CTS ?
	;				No => Redo translate Packet
	;			SendPacket(CID_XDP, *((short *) VarPtr), VarPtr)
	;			If (ReadPacket() != ACK)
	;				Redo Translate packet
	;			SendPacket(CID_EOT, 0, NULL)
	;		If it is a directory request
	;			Not implemented yet :p
	;	If SCR
	;		SendPacket(CID_XDP, 3840, LCD_MEM)
	;		We don't check the ACK. It doesn't matter in my opinion
	;	Default:
	;		ResetLink
	; ONERR
	;	if (Break)
	;		ERD_dialog(BREAK_KEY)
	;	else	ERD_dialog(LINK_Transmission)
	;	OSClearBreak
	;	OSResetLink
	; ENDTRY

Qu'en pensez-vous ? Des remarques ?

PS: Faut connaitre le protocle Ti avant de poster.

18

PpHd a écrit :
Desole, le forum a detruit toute mes belles tabulations.
Envoie moi ta source a ppelissi@caramail.com, merci.

>et à part afficher du texte, elle a quoi comme fonctionnalités de programmées ?
Tu es mauvaise langue. Pour punition, tu auras pas la beta tongue



bon bah c fait mais le source est pas complet...

enfin c déjà ça...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

19

Vince> tu peut faire voir tes sources stp : godzil@free.fr

Sa m'interesserait aussi
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

20

ces sources ne sont pas libres, je ne compte pas les distribuer à tout va désolé...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca