[Le projet OS-9] Serveur NR sous OS9

Cette catégorie traite de développements récents destinés à nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par jb_jb_fr »

Bonjour à tous

Bien que cela ne soit pas encore fini, je me permets tout de même de faire une annonce car je suis trop content:

J'ai un Serveur Nano Reseau qui tourne sur un MO5 et sous OS9! :D :D

C'est un projet qui me trotte dans la tête depuis un sacré bout de temps et je me suis lancé dedans depuis un an.
J'ai stoppé les dev car je n’avançais pas et je ne comprenais pas ce qui se passait.

Sur le conseil avisé de Foolduplex, j'ai investie dans une petit analyseur logique, et je me suis aperçu que le NanoReseau est, dans certains cas, très critique quant au timing!
J'ai donc optimisé au maximum la fonction de transmission de trame, et grace à ça j'ai pu recommencer mes devs.

Et depuis a peine 10', je suis capable d'envoyer à un autre MO5, la page du menu principale.
Et tout ca sous OS9. Donc en ayant la chance d'avoir un OS qui gère les fichiers.

Je n'en suis qu'au début. Maintenant que le Menu principal est chargé sur le MO5 client, j'ai d'autre soucis (mon server est repartie dans un état de transmission de fichier :( .

Mais bon, je suis un homme heureux. Je fais du NanoReseau avec uniquement 2 MO5.
Je n'ai pas de PC, ce qui était le but.


J'ai donc le squelette du Serveur.
Il n'est sans doute pas optimisé, mais ça on verra plus tard.

Et donc voila à quoi sera destiné le TO9+, que j'ai nouvellement acquis.
Car il faut que le serveur soit capable de gérer 32 postes. Donc il faudra de la mémoire pour stocker tous les contextes de chaque poste.

Je vous tiendrais au courant de mes avancées.

Jacques
Dernière modification par jb_jb_fr le 07 mars 2015 18:54, modifié 1 fois.
Avatar de l’utilisateur
petitjd
Messages : 2007
Inscription : 23 oct. 2007 11:50

[Le projet OS-9] Serveur NR sous OS9

Message par petitjd »

Bravo! Très fort!
Tu as les accès au site nanoreseau.net, n'hesite pas à en parler dessus si tu le souhaites!
PetitJD
Tortue Jeulin: www.tortue-jeulin.com
Nanoreseau: www.nanoreseau.net
Proteus III: www.proteus-international.fr
Daniel
Messages : 17418
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par Daniel »

C'est fou ce que l'on peut faire avec un MO5. Mais un serveur nanoréseau, je ne l'avais même pas imaginé, tellement c'est incroyable. Comme quoi, avec de la persévérance, on peut faire des miracles. Bravo pour cet exploit !

Nos attendons la suite avec impatience, et tous les éléments permettant de tester seront les bienvenus.
:idea: Il faudrait créer une page sur internet pour diffuser largement les informations, les schémas et les programmes...
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7983
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

[Le projet OS-9] Serveur NR sous OS9

Message par __sam__ »

Bravo!

Est-ce que utiliser l'interface SD sur un serveur MO5 aurait du sens?
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Memphis
Messages : 536
Inscription : 25 janv. 2015 18:16
Localisation : Pont à Mousson (54)

[Le projet OS-9] Serveur NR sous OS9

Message par Memphis »

C'est super Jacques :D . Une très bonne idée. Un TO9+ qui sera transformé en TO9+ NR. Il fallait y penser. Bonne continuation pour ton projet. Le nanoréseau , c'est génial. Beaucoup d'entre nous l'on vu arriver à l'école. :wink:
Jérôme
Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par jb_jb_fr »

Bonsoir
__sam__ a écrit :Est-ce que utiliser l'interface SD sur un serveur MO5 aurait du sens?
Oui, tout à fait ça aurait du sens.
Il faudrait écrire le driver OS9 pour ça.
C'est un peut lent par rapport au ROM disque que j'utilise mais ça marcherait.

Surtout que dans le serveur que j'ai écrit les lectures disque ne sont pas dans des parties critiques.
Au moment de la lecture disque on a tout le temps que l'on veut.
Ce qui est critique c'est l'envoie d'une trame au client avec la trame écho, et la réception de l’acquittement.
Après, on a tout le temps qu'on veut pour préparer la trame suivante.

Jacques
Avatar de l’utilisateur
6502man
Messages : 12326
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par 6502man »

Félicitations :D
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.
Daniel
Messages : 17418
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par Daniel »

Peut-on voir quelque chose ? une vidéo ? un bout de programme ? le contenu de la rom ? le schéma de l'interface ? une copie d'écran ?

J'ai été sur nanoreseau.net, mais le site ne semble pas évoluer :|

Pareil pour OS/9, j'aimerais le faire tourner sur mes machines Thomson mais je ne trouve rien nulle part :|
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par jb_jb_fr »

Bonjour

Avant de répondre à Daniel, je vais vous donner un état des lieux :
- La connexion du MO5 client au serveur marche à tous les coups (C'est déjà un bon point)
- Une fois connecté, le menu principal est envoyé sur le MO5 client.
- L'utilisateur tape alors 'A' pour télécharger le Basic
- le téléchargement du Basic commence sur le MO5 client
- et.... plus rien :(

En effet, je n'arrive pas à comprendre pourquoi la téléchargement du Basic echoue à chaque fois. Il y a un blocage que je n'ai toujours pas identifié.
- L'automate est pourtant dans le bon état.
- Les No de trame sont cohérents
- Je n'ai pas décelé de messages d'erreurs (pourtant j'ai pas mal de check)

Donc voila ou j'en suis pour le serveur

Pour ce qui est des question de Daniel :
- Il va en effet que je vous envoi des copie d'écran. Ce sera de la copie de console VT100. Car je bosse en téléchargement. En effet, a chaque fois que je boot le MO5, il se met en téléchargement XMODEM. Donc j'envoie, dans la 1ere page de l'extension 64Ko des modules OS9 (donc entre B000-EFFF). Une fois le téléchargement fini, j'active la page 0 de la cartouche et je donne la main à OS9, qui boot, en chargeant en mémoire tous les modules systèmes.
Puis j'arrive sur le Shell OS9. La j'ai la main pour lancer les commandes que je veux. Et donc je lance le programme serveur qui a été téléchargé précédemment.

Pour ce qui est de la config, c'est bêttement un MO5 qui possède une ROM OS9 de boot, un contrôleur série pour la communication avec mon Mac, et une cartouche NanoReseaux.
Donc a part le fait de devoir changer la ROM, c'est du matériel Thomson standard

Voila un exemple de téléchargement du menu XMENU.MO5

Code : Tout sélectionner

Download os9
### Send (x) _rom_mo5: 16384 bytes, 0:17 elapsed, 926 cps, 48%
OS-9/6809 Level 1 V2.0.1
Thomson computer
COPR. 1980 BY MOTOROLA INC. AND
MICROWARE SYSTEMS CORP. Thomson MO5 version by J. BRIGAUD & E. FORLER (2002)


OS-9/6809 Level 1 V2.0.1 on the Thomson computer  2014/04/06 00:12:14


User name?:

Process #03 logged on   2014/04/06 00:12:15
Welcome!
+-----------------------------+
|  Welcome to OS-9 Level One  |
|           \\\|///           |
|         \\  - -  //         |
|          (  0 0  )          |
+-------oOOo--(_)--oOOo-------+

Type 'HELP' to have more informations
about the OS-9 commands.

ShellLite

OS9:servernr -f
Reg (D,X,Y,U) =  0003,2BFD,2C00,2900
Reg (D,X,Y,U) =  660D,2BFF,2C00,2900
Reg (D,X,Y,U) =  0032,2C00,29C6,2900
Server NanoReseau
Version 1.2 (2015/03/10)
AMA
29C6  00 A1 06 00 00 00 00 00 00 00 01 00 41 00 FF 20  ............A..
29D6  3D 4C 01 60 20 3C 4F 01 05 20 3F 9C 19 25 03 11  =L.` <O.. ?..%..
CHBIN : 00
/R1/NR35/XMENU.MO5Check Header
A1060000000000000001000600002F52312F4E5233352F584D454E552E4D4FB50000000000000000000000000000000000000000000000000000000000000000030000000000
00000000000000000000020000D0060055051B640B09002AD500000000000000000000000000
CHBIN : 01
SendAddressChgBank
Send_Consigne
06D40006010000FF00320050000100C600F7A7CB3900
CHBIN : 020602
0682000602007E53740542415349430000000000000000000000000000000000000000000000000000000142415349432020204D4F354C4F
CHBIN : 020603
068300060300474F00000000000000000000000000000000000000000000000000000000014C4F474F202020204D4F354C53450000000000
CHBIN : 020604
068400060400000000000000000000000000000000000000000000000000014C534520202020204D4F354E52444F53000000000000000000
CHBIN : 020605
068500060500000000000000000000000000000000000000014E52444F532020204D4F35446F737369657200000000000000000000000000
CHBIN : 020606
06860006060000000000000000000000000001444F5353494552204D4F350000000000000000000000000000000000000000000000000000
CHBIN : 020607
0687000607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020608
0680000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020609
0681000601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060A
0682000602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060B
0683000603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060C
0684000604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060D
0685000605000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060E
0686000606000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 02060F
0687000607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020610
0680000600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020611
0681000601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020612
0682000602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CHBIN : 020613
068300060300000000000000000000000000000000000000000000000000000000000000000000001AFF860CB7A7CB8E538ABFEFFEBCEFFE
CHBIN : 020614
06840006040026046E9FFFFE7FA7CB8E5590BD54CB1AFF8E21006F808C500325F98E561E6F808CA00025F910CE22008EA041BF2064B6A7D8
CHBIN : 020615
068500060500841FB72052BDA02BF6A7C0CA01F7A7C08E5374BF1FFE8E560CBF1FF48E54E3BF1FFA8E559EBD54CBF6A7D8C41F4FBD55568E
CHBIN : 020616
06860006060055C5BD54CBC618F05003542706BD54D55A26FA7F558E108E5003E6A034041F214FE68027034C20F9812023028620B1558E23
CHBIN : 020617
06870006070003B7558E31A82C6AE426E135048627B0558E800444B7558F108E5003A6A03402BD54BA308D019DBD54CB1F21BD54CB31A82C
CHBIN : 020618
068000060000BD54D56C8D018B6AE426E335048E55E3BD54CBBD549EBD54AD1F98C141252DC041F15003242634041F89BD54B83504862C3D
CHBIN : 020619
0681000601008E5024308B860C108E55FFE680E7A04A26F98E55F4BDA02520FEBD54E47E545FE68C0B27046F8C06393F0A27FC3900C16125
CHBIN : 02061A
06820006020006C17A2202C020393F823406B6558F2708C620BD54B84A26F83586E680260139BD54B820F63405C60DBD54B8C60ABD54B835
CHBIN : 02061B
0683000603008539CC0008FD203EC624F7203CC605F7203AC603F7203DC6313F9E3440338C4F20053440338C3D3406A6C0A76135028D2426
CHBIN : 02061C
0684000604000C6AE426F8C630E78020168D163404E684CB30C1392302CB07E78035046AE426EA35C26F84A3C425046C8420F8E3C16D8439
CHBIN : 02061D
06850006050005271003E80064000A000104000100104F8D14301E16FF6D8D0D301B16FF668D06308C1E16FF5E308C188D926F8439308C10
CHBIN : 02061E
068600060600341017FF806F84351016FF472020202000000000000000001F20201F12141B441B561B660C00114E414E4F52455345415520
CHBIN : 02061F
0687000607002020202020202020202020202020202020202020706F7374652000202020202020202020202020202020201B734D454E551B
CHBIN : 020620
068000060000700041202D20001F584D566F7472652063686F6978203A201800093700000000000000000000000000000000000000000800
CHBIN : 020621
0681000601000000000000000000000000000000000063686F6978203A201800093700000000000000000000000000000000000000000800
CHBIN : 010622
JumpAddressExec
Send_Consigne
06D50006020082FF0032005000010012121212127E5000000000
CHBIN : 030622
RecOk : E00622
Jacques
Avatar de l’utilisateur
jb_jb_fr
Messages : 391
Inscription : 29 mars 2010 10:36
Localisation : Essonne (91)
Contact :

[Le projet OS-9] Serveur NR sous OS9

Message par jb_jb_fr »

La bonne nouvelle du jour

J'arrive enfin à télécharger le Basic NanoReseau.
Je viens même de découvrire que au démarrage le Basic tente de télécharger le programme : DEPART.BAS
Je suppose que c'est un peu comme un autoexec.bat sous dos?

Mais c'est pas sans difficulté!
Ce qui n'est pas facile c'est que j'ai deux machines qui vont exactement à la même vitesse, et que le serveur doit en plus gerer un OS multitache :(

Et qui dit multitache dit interuption.
Mon probleme était que apres l'attente de l'echo du client, l'OS entrait en jeux. Et donc 39ms plus tard il me rendait la mains pour que j'emette la trame de données.
Mais le Client était déjà parti en TimeOut :(
J'ai donc pour l'instant bloqué les IT temporairement mais c'est une méthode qui me plait moyen.
Il faut que je relise la/les doc NR pour voir s'il est possible de renvoyer une trame si celle ci n'a pas été acquitté.

affaire à suivre...
Jacques
Fool-DupleX
Messages : 2363
Inscription : 06 avr. 2009 12:07

[Le projet OS-9] Serveur NR sous OS9

Message par Fool-DupleX »

Oui Jacques !

C'est grâce au fichier depart.bas que les applications NR ecrites en basic sont lancées automatiquement. c'est la même chose qu'AUTO.BAT finalement.

similairement, sous LOGO, c'est le fichier depart.log qui est cherché. Son absence provoque un message qui m'a toujours amusé étant gamin :

RAMENE N'AIME PAS DEPART.LOG
? _
Fool-DupleX
Messages : 2363
Inscription : 06 avr. 2009 12:07

[Le projet OS-9] Serveur NR sous OS9

Message par Fool-DupleX »

@Daniel : pour faire tourner OS-9 sur un MO5, MO5E et tres bientot aussi sur MO5NR et MO6 (je crois d'ailleurs, Jacques me détrompera, qu'il a une version fonctionnelle), il suffit de changer la ROM de 16 Ko. C'est tout. Nous avons posé comme contrainte de base que ca doit tourner sans modification du hardware. Pour le serveur NR sur MO5, nous n'avons rien modifié : c'est le controleur NR standard du mo5 qui est utilisé. Je rappelle aussi que nous avons un driver os9 (grace a prehisto) qui permet d'utiliser des disquettes 3"1/2 au format os-9, d'une capacité de 760 Ko (au lieu de 640 en standard). En fait, il y a enormement de choses qu'on peut faire bien mieux que l'original sur thomson, juste en ameliorant le soft.

Nous avançons tres lentement, car nous avons tres peu de temps et nous ne sommes plus que 2 a vraiment developper (et encore, jacques bosse plus que moi). Mais il est tellement fou de joie avec le NR que maintenant il veut porter os-9 sur to9+. Si il y arrive, ca ouvrira automatiquement la porte du to8/8d qui est presque la même machine.

Ce qui est interessant avec le portage sur to9+, c'est que tous les drivers pour les peripheriques externes déjà ecrits sur mo5 fonctionneront sans modification, par exemple le lecteur de disquette ou le port serie. Pour ce qui est de la memoire et de l'ecran, c'est a peu pres la même chose que le mo6, donc on a déjà du code presque finalisé. il ne reste que le clavier et le noyau temps reel sur lesquels il faudra vraiment travailler. Mais le clavier utilise un ACIA déjà connu dans le monde d'os-9, sur TRS notamment. Donc a nouveau une bonne base de code existant. Au final, le seul ecueil c'est le 6846 pour le timer.
__sam__
Messages : 7983
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

[Le projet OS-9] Serveur NR sous OS9

Message par __sam__ »

Sur MO5 le temps partagé est basé sur l'interruption VBL. Sur TO9+ ca serait basé sur l'interruption timer je présume?

A noter: L'avantage du MO6/TO8/TO9/+ est qu'il y a déjà un mode 80 colonnes sans avoir besoin l'émuler en 320x200.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Fool-DupleX
Messages : 2363
Inscription : 06 avr. 2009 12:07

[Le projet OS-9] Serveur NR sous OS9

Message par Fool-DupleX »

Tu présumes juste. D'ailleurs je crois que tu connais très bien le 6846, tu pourrais peut-être aider Jacques ? Car c'est le seul truc vraiment difficile dans le portage.

Et encore juste pour le mode 80 colonnes, qui est déjà implémenté sur la version mo6 d'os-9.
__sam__
Messages : 7983
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

[Le projet OS-9] Serveur NR sous OS9

Message par __sam__ »

S'il faut de l'aide pour le timer, je suis là. Il suffira de demander (je ne maitrise pas toutes les fonctions du 6846, mais celles dont j'ai eu besoin, à savoir principalement le changement de la fréquence).

Sinon la police 4x8 serait marrante sur MO6 80 colonnes ==> Une console de 160x25, idéale pour de l'ascii-art :lol:
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Répondre