introduction
L'architecture des ordinateurs
ZX Spectrum est un ordinateur 8 bits basé sur le processeur Z80. Il diffère des autres ordinateurs similaires en ce que, au lieu d'un contrôleur vidéo spécialisé, il n'a qu'une combinaison de compteurs et de multiplexeurs (assemblés à l'origine en BMK , mais facilement traduits en «lâches» - petits microcircuits logiques). Pour cette raison, l'ordinateur a d'abord remporté la course aux prix et est devenu la voiture par défaut pour la "programmation de chambre à coucher", puis a facilement échappé au fabricant d'origine et a gagné une place importante dans l'informatisation de nombreux pays du monde. Y compris - les pays qui faisaient partie de l'URSS, où les voitures compatibles Spectrum ont été produites à environ un million d'exemplaires (en tout cas, plus que les BC, DVK et UKNT réunis).
Une liste étonnante de clones célèbres - ici... L '"ouverture" de l'architecture (du point de vue d'un fer à souder - et sans fer à souder, nos clones étaient même problématiques pour se connecter à un téléviseur) a fait du ZX Spectrum une plateforme très sophistiquée, avec des atypiques pour les autres plateformes 8 bits (qui sont déjà mortes ou à base d'alcool) mégaoctets, mégahertz, disques durs et les cartes réseau.
ZX Spectrum fonctionne toujours comme une plate-forme pour les jeux indépendants (voir la bataille de jeux rétro Yandex en cours et les concours Your Game 6 , dont la date limite a été prolongée jusqu'au 1er décembre ), mais le développement se produit rarement dans le format d'origine, car e. sur le spectre lui-même. Cela est dû, entre autres, au fait que les environnements de développement natifs écrits sous TR-DOS dans les années 90 et 2000, ils étaient à la traîne de la vie et rien de nouveau n'est venu les remplacer.
La nécessité d'un système d'exploitation
Les systèmes d'exploitation pour le Spectrum sont écrits depuis longtemps. Le système d'exploitation, qui se trouve dans la ROM, vous permet d'écrire en BASIC et de bricoler avec une bande magnétique. Systèmes d'exploitation disque TR-DOS, GDOS, + 3DOS, etc. ajout de commandes pour travailler avec une disquette en BASIC, mais seul TR-DOS a acquis des utilitaires sérieux, et non pas en raison d'une interface BASIC plutôt maladroite, mais en raison des points d'entrée documentés (et pas du tout) dans la ROM TR-DOS.
Hormis plusieurs versions de CP / M (qui n'a pas été initialement écrite pour le Spectrum et n'utilise pas ses capacités à sa juste valeur), le premier système d'exploitation Spectrum sérieux était un iS-DOS monotâche ( un , deux , trois , archive), développé à Saint-Pétersbourg au tout début des années 90. Il "prêt à l'emploi" fournissait un commandant et un système de fichiers avec des sous-répertoires (incompatibles avec tout), un éditeur de texte de taille arbitraire, de nombreux disques utilitaires et la possibilité de s'étendre avec ses résidents. Malheureusement, les extensions ne se trouvent que dans la fenêtre de 48 Ko de RAM. Les premières versions d'iS-DOS se contentaient de 41K pour l'ensemble du système, des résidents et du programme utilisateur, le reste de l'espace RAM était occupé par un écran de 6912 octets.
iS-DOS dans l'habitat naturel
Les dernières versions, toujours publiées sous le nom TASiS ( un , deux ) et affûtées sous le clone ATM-Turbo 2+, vous permettent d'étendre à l'ensemble de l'espace d'adressage 64K, de supprimer l'écran de la mémoire et de changer de page RAM, mais le noyau du système reste toujours dans l'espace d'adressage. (Il en va de même pour CP / M - dans toutes les versions connues, le système occupe les premières adresses et est indestructible.)
D'autres tentatives ont été faites pour écrire un OS. Malheureusement, aucun de ces systèmes d'exploitation n'a reçu de distribution notable, et beaucoup n'étaient pas du tout terminés.
L'iS-DOS déjà mentionné s'est répandu à Saint-Pétersbourg et à Moscou. Un analogue fonctionnel approximatif d'iS-DOS sur un disque TR-DOS - X-DOS - est resté à Kirov.
X-DOS et sa ligne de commande Le
système multi-fenêtres DOMEN OS / Pink Floyd , également de Saint-Pétersbourg, n'était pas à la hauteur d'un état utilisable. En particulier, il ne prend pas en charge les disques durs et ne contient aucun outil de développement.
OS DOMAIN et sa documentation en HTML Le
système Kharkiv DNA OS , principalement affûté pour la copie de fichiers, a apporté certains avantages aux propriétaires de «vis», mais «logiciel pour vis» n'y figurait pas.
DNA OS et son gestionnaire de fichiers
Moscou NK-DOS , ses frères NeOS , Grodno DOORS \ AQUA et Saransk ZX-OS / ZXRTK n'ont pas vécu pour voir des versions viables . Parmi les systèmes d'exploitation multitâches, les plus proches de l'utilisateur sont MythOS (Dnepropetrovsk) et ChaOS (Taganrog), mais ils ont également mis fin à leur vie à la source - également sans prise en charge des disques durs et sans outils de développement.
MythOS et sa console
ChaOS et son chaos
Pourquoi y a-t-il eu tant d'Ă©checs?
Configuration matérielle requise pour un système d'exploitation multitâche
Le problème avec tous les premiers systèmes d'exploitation du Spectrum était que les développeurs essayaient d'assurer une compatibilité maximale de leur création. Par exemple, sur iS-DOS - avec des machines à partir de ZX Spectrum 48K (avec un lecteur de disquette ou un disque dur), et sur la plupart des systèmes ultérieurs - avec ZX Spectrum 128K. Cela a laissé une marque indélébile sur l'allocation de mémoire.
Le fait est que sur les machines 48K, l'espace d'adressage Z80 total de 65536 octets a été divisé en 2 parties: 48K de RAM (dont 6912 octets ont été consommés par l'écran, ce qui a laissé 41 kilo-octets pour tout le reste) et 16K de ROM BASIC, ce qui est un réel avantage pour l'OS non. Les choses se sont mieux comportées à 128K, mais pas beaucoup. L'écran de l'espace d'adressage Z80 peut y être supprimé (en sélectionnant le deuxième tampon vidéo), mais vous ne pouvez changer de page RAM que dans le quart supérieur (à partir de l'adresse 0xc000) de l'espace d'adressage. Les 32 Ko restants de RAM ne sont pas commutables. Et les 16K inférieurs contiennent toujours une ROM inutile pour le système d'exploitation. Bien sûr, le 128K propriétaire permet aux périphériques externes (tels que l' extension de mémoire LEC , DISCiPLE / + D , MB-02) remplacent les 16K inférieurs, et ses descendants, à partir de +3 , ont généralement l'un ou l'autre port intégré pour cela (le plus souvent, une seule page de RAM y est disponible), mais la moitié de la mémoire adressable ne peut toujours pas changer avec le changement de tâche.
Imaginez que vous écrivez un éditeur de texte ou graphique pour le système d'exploitation du ZX Spectrum 128K. Evidemment, le 16K supérieur est trop petit pour le texte ou les illustrations (nous ne parlons pas des "écrans" standard de 6912 octets), et il faut soit charger constamment le fichier à partir du disque (ce qui est lent et peu pratique), soit disperser le document sur les pages. Où, dans ce cas, se trouveront le code de l'éditeur lui-même, ses variables et sa pile? Pas dans les 16 Ko de RAM, car c'est là que se trouve le document. Pas dans les 16K inférieurs, car il y a probablement une ROM. Il s'avère que toutes les tâches devront partager un bloc commun de 32 Ko de RAM. Les résidents relocalisés, divisés, disons, 256 octets chacun, les procédures d'appel de la RAM supérieure, les tampons d'appel des résidents séparés pour travailler avec des données, la pile est également limitée à 256 octets ...Ceci est très gênant pour les développeurs. Résultat: seuls les auteurs eux-mêmes ont écrit pour de tels systèmes, et ils n'ont eu assez de fusible que pendant un an ou deux, ce qui n'est même pas suffisant pour créer un environnement de développement.
Ainsi, pour un système multitâche pratique sur le Spectrum, il est vital d'avoir des pages de RAM commutables dans chacun des quartiers (le choix des quartiers 16K est traditionnel pour le Speccy) de l'espace d'adressage du Z80. Il y a peu de circuits Spectrum qui peuvent faire cela: il s'agit du "ZX-MMU" peu connu de fk0 (2000) et du plus ou moins courant ATM-Turbo 2 (+) (1992, 1993):
De la documentation. Le bit 6 active le contrôle via le port # 7ffd (la ROM TR-DOS remplace automatiquement la ROM 48 BASIC lors de l'exécution du code dans # 3dxx), sinon le bit 7 active simplement la page ROM spécifiée. "ROM2" est le bit 4 du port # 7ffd, il fonctionne toujours.
De nombreux auteurs de systèmes d'exploitation pensaient que cette exigence d'un sous-système de mémoire pour pouvoir tout basculer limiterait considérablement le nombre d'utilisateurs et ne l'ont pas acceptée. En conséquence, ils ont eu environ 0 utilisateurs - en raison du manque de logiciel.
DĂ©veloppement de
Contexte; qu'est-ce que NedoPC
En 2002-2003, le mouvement NedoPC est né sur les étendues de trois continents, ce qui peut être brièvement décrit comme ... euh ... le développement des ordinateurs à partir de moyens improvisés. Et NedoPC a commencé avec ce que les autres avaient terminé à ce moment-là - produire Spectrum et des appareils pour eux. Et comme Spectrum, ils ont pris le même Turbo 2+ (1993) - un descendant d'ATM-Turbo 2 (1992), qui est un descendant d'ATM-Turbo (1991), qui est un descendant du Pentagone 128 (1990), connu dans les cercles étroits sous le nom d'ATM 128 (histoire de la lutte les entreprises des années 90 fringantes peuvent être trouvées dans la description du Honey Commander'y). À un moment donné, Turbo 2+ (auquel la désignation ATM était déjà automatiquement collée, comme dans les versions précédentes) avait presque l'intention de remplacer le PC IBM des premières configurations - avec un disque dur (plus tard un CD-ROM), un analogue d'un EGA, un clavier XT (plus tard AT), un port COM, un DAC, un ADC (qui jouait aussi le rôle d'un modem) et les jeux "Prince of Persia" et " Gobliiins ", qui étaient absolument corrects à partir de la version PC (je ne mentionne pas tous les logiciels, il y en a beaucoup). Mais une partie de l'ingénieux schéma était caché dans le PLM, c'est pourquoi très peu de gens pouvaient le copier. Dans l'immensité de l'Ukraine, des rumeurs ont été entendues sur le remplacement du PLM par la ROM et sur la copie d'un contrôleur de disque dur séparé, mais en général, un ordinateur dans les années 90 était beaucoup moins courant que le Pentagone. Heureusement, plus tard, les développeurs de Turbo 2+ - la société MicroART - ont fait don de toute la documentation pour une utilisation gratuite.
Presque immédiatement, plusieurs développeurs de logiciels ont été attirés dans l'orbite de NedoPC et ils ont parlé de systèmes d'exploitation. Sinon, la réponse à la question «où devons-nous naviguer» n'a pas fonctionné. Le premier fruit d'une réflexion approfondie en 2005 a été le système TASiS déjà mentionné, pour lequel le code source d'iS-DOS a été acquis.
En parallèle, en 2007, l'un des auteurs de cet article a créé un personnage virtuel SMAN, qui développait un système d'exploitation multitâche. Et oui, elle est également passée par la phase Resident in Lower RAM. Cette étape a traîné pendant des années, en 2016-2017, un compilateur pour un langage de type C NedoLang a été écrit , qui s'intègre dans 48K (compile également pour ARM Thumb). Le nœud gordien n'a été coupé qu'avec l'apparition de l'éditeur graphique Scratch (2018).
Scratch et son menu
Le choix en 2018 était déjà facile: la compatibilité avec ATM-Turbo 2+ était disponible pour tous les utilisateurs - sinon sur le matériel d'origine et pas sur les ZX Evo et Pentagon 2.666LE du NedoPC, puis sur l'ATM3 de Zorel ou au moins dans un émulateur (Unreal Speccy, Xpeccy, ZXMAK2, Es.pectrum, etc.).
Turbo 2+ (1993, mais la planche est clairement plus récente)
Pentagon 2.666LE (2009), une voiture très rare
ZX Evolution (2009), peut être acheté dans n'importe quelle boulangerie
ATM3 (2017), vous ne pouvez l'obtenir que par connaissance ou le faire vous- mĂŞme.Ă€
partir de ce moment, le système a été nommé NedoOS et a commencé à se développer de manière explosive.
Il est à noter que pour freiner les fantasmes au stade initial de cette explosion, le système a été construit principalement sur des commandes compatibles avec CP / M et MSX-DOS. Jusqu'à présent, la liste des commandes est divisée en trois sections: compatible avec CP / M (maintenant il y en a 13, leur utilisation n'est pas recommandée en raison du système FCB peu pratique), compatible avec MSX-DOS (il y en a 11, là le nom du fichier est déjà en texte, et à la place Les structures FCB utilisent des nombres - des descripteurs) et incompatibles (la plupart ne sont pas des fichiers, il y en a 48 maintenant, mais certains devraient être supprimés).
Système de développement en ce moment
Le code source de NedoOS n'est toujours pas adapté aux compilateurs disponibles sur le système (NedoLang et son assembleur NedoAsm, Turbo Pascal et BDS C). Jusqu'à présent, seuls 5 utilitaires sont compilés en interne. Et la partie principale du package est construite sur un PC utilisant SjASMPlus (code principal) et Z80 IAR C (système de fichiers FatFs et quelques utilitaires).
Les fichiers sont hébergés sur un serveur SVN dédié et se composent de sources, d'une version binaire et d'une collection d'outils pour construire sur un PC.
Le système est assemblé avec un bouton (fichier de commandes ou Makefile - deux systèmes de construction). Vous pouvez également collecter séparément l'une des cibles (pour disque dur, carte SD, etc.) avec un bouton et démarrer immédiatement l'émulateur. Vous pouvez collecter séparément chaque utilitaire avec une chemise de corps de niveau inférieur. Les deux systèmes de construction se sont produits parce que certains des développeurs NedoOS sont sous Windows et d'autres sous Linux.
En plus des compilateurs, il existe également un processeur de commandes cmd.com (peut exécuter * .bat) et un interpréteur NedoBasic écrit à partir de zéro avec des capacités graphiques.
NedoLang se compile
Architecture du système
Périphérique de noyau
La partie de NedoOS visible par le programme utilisateur est une série d'appels dans la zone mémoire 0x0000..0x0038, ce qu'on appelle le noyau. Le dernier de ces appels est un gestionnaire d'interruption à 50 Hz, suivi d'une ligne de commande avec des paramètres pour le programme avec 0x0080. Le périphérique noyau est toujours compatible avec CP / M (appel via 0x0005), mais nous nous en éloignons lentement (les appels CP / M ne sont utilisés que dans 4 programmes sur 58). Tous les appels système sont organisés sous forme de macros (les programmes utilisent le module /src/_sdk/sys_h.asm avec ces macros et constantes) et peuvent être considérablement modifiés à mesure que le système d'exploitation évolue. La conséquence en est la nécessité de reconstruire l'ensemble du système et du logiciel d'application en cas de modification de ces macros - mais, comme nous l'avons vu, cela se fait avec un seul bouton.
L'intérieur de NedoOS est caché dans des pages de RAM et contient:
- ;
- ();
- , , — , , «» (. ), ;
- (BDOS), call 0x0005, CP/M MSX-DOS;
- (SD- Z-Controller, SD- NeoGS, IDE HDD, , USB flash ZXNetUSB);
- ( 40- PS/2- ZX Evo);
- (Kempston mouse );
- ( Mr. Gluk), 50- ;
- (Wiznet W5300 ZXNetUSB);
- FatFs FAT-16 FAT-32;
- TRDOSFS TR-DOS RAM-;
- ;
- FatFs, TR-DOS ();
- .
Tous les pilotes sont compilés dans le noyau, il y a donc plusieurs "cibles" différentes pour construire le système ( ATM2 , ATM2 + HDD , ATM3 , ZX Evo , Pentagon 2.666LE ).
Le gestionnaire d'interruptions, situé dans l'espace utilisateur, ressemble à ceci:
push af
push bc
push de
user_fdvalue6=$+1
ld a,fd_system ;
out (0xfd),a ; ( ),
;---------
; :
;bc=memport0000
;d=pgmain
out (c),d ;may switch this code page
curpg16k=$+1
ld a,0
ld b,memport4000/256
out (c),a
curpg32klow=$+1
ld a,0
ld b,memport8000/256
out (c),a
curpg32khigh=$+1
ld a,0
ld b,memportc000/256
out (c),a
pop de
pop bc
pop af
ei
ret
Le changement de tâche se produit dans un cercle (les tâches figées sont ignorées), il n'y a pas encore de priorités. Mais la tâche inactive n'est exécutée que lorsque tout le monde est soit gelé, soit dans la trame actuelle, ils ont eux-mêmes appelé YIELD (la macro système YIELD - pour donner du temps au système jusqu'à la prochaine interruption, la macro système YIELDKEEP - pour donner du temps au système avec la possibilité de retourner le contrôle à tout moment).
La tâche peut changer le gestionnaire d'interruption, c'est possible avec un retour et du code arbitraire après. Il existe certaines recommandations et exemples à ce sujet.
Système terminal
Les tâches sont divisées en trois types:
- ceux qui n'ont pas du tout besoin d'Ă©cran,
- ceux pour lesquels un terminal texte suffit,
- graphique - avec son propre écran de la résolution requise et sa propre palette.
Dans NedoOS, outre le concept de tâche en cours, il existe un concept de "focus" (accès au clavier, souris et écran). Le focus entre les tâches est commuté manuellement (par une combinaison de Symbol Shift + Enter) ou automatiquement (lorsque vous activez des graphiques, désactivez des graphiques ou fermez une tâche).
Les tâches comme (1) ne sont jamais focalisées. De plus, les tâches de type (2) ne reçoivent pas non plus le focus; à la place, le focus est sur le terminal de texte auquel elles sont attachées. Et ils sont liés par les flux stdin et stdout, le long desquels les lettres, les chiffres, les gribouillis et les codes du terminal VT-100 marchent avec quelques ajouts. Stdin et stdout sont implémentés via la bibliothèque stdio.asm sous forme de files d'attente (tubes). Dans le noyau, la file d'attente a un tampon de 255 octets. Les fonctions d'écriture et de lecture de la file d'attente retournent la quantité réellement lue ou écrite (comme pour les fichiers) et si la file d'attente est fermée à l'autre extrémité. Ces courants sont hérités de père en fils. Mais à la fin, tout est affiché par le terminal term.com, qui peut être défilé et même copié et collé. Il existe également un serveur réseau Telnet netterm.com. Ce netterm.com n'a pas besoin d'être démarré, mais term.com démarre automatiquement au démarrage du système.
Nedovigator dans le terminal, et le terminal fait défiler avec la molette de la souris
Pour des tâches comme (3), bien sûr, il n'est pas question de dessiner des pixels à travers le système - il n'y a pas assez de Z80 mégahertz pour cela (la plupart des utilisateurs n'en ont que 14). Par conséquent, il est nécessaire de dessiner à travers la mémoire. Et comme il n'y a que deux zones d'écran sur ATM (comme sur 128K), une seule tâche peut avoir ses propres pages d'écran. Les pages de l'écran sont interceptées lorsque le focus est changé, et à la place d'elles, la tâche perdante reçoit un faux numéro de page - une page qui peut simplement être gâchée. Lorsqu'une tâche reçoit le focus, elle reçoit un message séparé à son sujet, comme si elle venait du clavier, mais ne correspond à aucun bouton réel. Cela permet à la tâche de restaurer l'écran à temps. Une autre tâche peut activer le mode lorsque le système lui-même stocke l'écran pour cela et le restaure.
Ligne de commande
Les fonctions de ligne de commande sont implémentées par l'utilitaire cmd, qui est automatiquement lancé au démarrage du système. Plus précisément, la première tâche inactive exécute term avec les paramètres cmd.com autoexec.bat. Cela signifie que cmd exécutera le fichier de commandes spécifié. Les commandes qui y sont écrites sont exécutées dans l'ordre. Par défaut, les commandes sont exécutées en attendant la fin, mais si la commande est le début du programme, vous pouvez alors mettre start devant elle - le programme fonctionnera en arrière-plan (seulement cela n'est pas compatible avec le concept d'héritage de stdin et stdout - les données dans les files d'attente peuvent être mélangées).
Après la fin de l'opération spécifiée dans le paramètre (s'il y avait un paramètre), cmd se ferme généralement. Une exception est laissée uniquement pour autoexec.bat, de sorte qu'après la fin, vous ne serez pas laissé avec un creux cassé. Cependant, dans ce cas, idle attend que C + M + D soit pressé simultanément et peut redémarrer term avec cmd.
La ligne de commande est similaire à MS-DOS. Vous pouvez rediriger la sortie d'une opération en cours vers un fichier (par exemple, dir> nom de fichier) ou vers un autre programme (par exemple, dir | more.com), vous pouvez rediriger l'entrée (par exemple, more.com <nom de fichier). Mais le chaînage n'est pas encore pris en charge.
Pour un travail plus pratique avec les fichiers, le Nedovigator commander (nv.com) est utilisé.
Kitty, parce que tu as déjà vu le Nedovigator
Placement du système
Il convient de préciser que chaque système de fichiers que nous avons est monté sur une lettre spécifique, de sorte que les chemins ressemblent à m: /bin/filename.txt. Les files d'attente ont une lettre de montage z :, mais jusqu'à présent, elles sont ouvertes sans nom - la connexion entre les tâches se fait en passant le numéro de file d'attente (handle).
Pour éviter les chargeurs de démarrage spécialisés comme GRUB, NedoOS espère que la ROM de l'ordinateur a la capacité de lancer le fichier de coffre (*. $ C) à partir du périphérique souhaité - par exemple, dans le ZX Evo avec un navigateur de fichiers ou en appuyant sur le bouton 5 dans le menu principal, et sur le Pentagone 2.666 LE - via le copieur intégré Fatall... Sinon, vous devrez démarrer le système d'exploitation à partir de disquettes TR-DOS. Les fichiers système sont situés dans le répertoire / bin du disque système, les jeux sont dans / nedogame. Les fichiers de jeu supplémentaires sont généralement situés dans un sous-répertoire du jeu du même nom: par exemple, un jeu de couleur NedoOS /nedogame/br.com ( Black Raven ) a également un répertoire / nedogame / br avec des graphiques, de la musique et des niveaux.
Corbeau coloré
Opportunités actuelles
Mémoire: jusqu'à 4 Mo de RAM sont pris en charge (configurable dans le système de construction), la mémoire est allouée aux tâches à la demande sur 16 Ko de pages, les tâches peuvent les renvoyer elles-mêmes au système. En raison du manque de protection de la mémoire dans le matériel, toute la mémoire peut être considérée comme partagée. Par défaut, les pages sont allouées à partir du début de la mémoire, sans compter quelques pages système. Le swap n'est pas pris en charge (il a été envisagé au début, mais nécessite une renumérotation des pages, ce qui réduira considérablement les performances des tâches courantes).
Multitâche:déplacement (par interruption de 50 Hz) et coopérative; jusqu'à 16 tâches peuvent être lancées simultanément (l'une d'elles est inactive, elle peut être supprimée, mais alors YIELD ne donne aucune garantie); vous pouvez remplacer votre lecteur de musique dans le gestionnaire d'interruption du système - il sera exécuté dans le contexte du noyau avec trois pages utilisateur (vous ne pouvez pas encore les changer à la volée). Les tâches peuvent être gelées (si elles viennent d'être créées, supprimées ou en attente d'un enfant). Vous pouvez afficher la liste des tâches en cmd, leur activité et la présence d'un mode graphique, retirer de l'exécution (cela libère leurs pages, les enregistrements de fichiers FatFs et les sockets réseau).
Des dossiers:jusqu'à 16 fichiers FAT, 8 fichiers TR-DOS et 8 files d'attente peuvent être ouverts simultanément. Vous pouvez lire et écrire plusieurs fichiers en même temps (important pour le compilateur) - même sur une disquette! Vous pouvez lire les paramètres du fichier, un pointeur vers la position actuelle, changer cette position, créer et renommer des répertoires. Les files d'attente supposent deux tâches utilisateur, elles doivent être ouvertes une fois (lors de la création), mais fermées deux fois. Les opérations sur les fichiers sont effectuées dans le contexte du noyau, à ce stade, le planificateur de tâches ne fonctionne pas, mais le processeur de musique du système est en cours d'exécution.
La mise en réseau:Protocoles ICMP, TCP, UDP, jusqu'à 8 sockets simultanément. Il y a ping, time, telnet, netterm (serveur Telnet), dmirc (client IRC), dmftp (client FTP), 3ws (serveur Web pour copier et lancer à distance des fichiers), NedoBrowser (navigateur de texte avec la possibilité de visualiser les images séparément jpg, gif, png, bmp et svg - les deux derniers formats avec restrictions; prend en charge les protocoles http et gopher, https via un proxy), wget (téléchargement de fichier d'arrière-plan, fonctionne à partir du navigateur, peut automatiquement commencer à afficher des graphiques et un lecteur de musique).
NedoBrowser cherche quelque chose sur Internet
Travailler avec des archives: .tar et .rar sont disponibles pour la lecture et l'écriture (ZXRar est un analogue dépouillé de Rar 2.x pour DOS - sans un certain nombre de codes, archives solides, format multimédia et cryptage, ZXUnRar prend en charge tous les codes et archives solides, mais ne prend pas en charge le multimédia et le chiffrement), .gz et .zip sont en lecture seule. Jusqu'à présent, tout se fait uniquement via des utilitaires de ligne de commande.
Types de documents: les associations de fichiers sont enregistrées pour le Nedovigator Commander intégré dans le fichier nv.ext. Maintenant, ce fichier ressemble à ceci:
bmp:scratch.com
bat:cmd.com
txt,new,ext,ini,nfo,diz:texted.com
gif,jpg,png,htm,svg:browser.com
tfc,pt2,pt3,mt3,m :player.com (pt3 Pro Tracker NedoOS)
bas:basic.com
zip,gz :pkunzip.com
trd,scl,fdi,tap:dmm.com ( TR-DOS — ZX Evo , , Magic; , , )
16c,scr,fnt,img,3 ,888,y ,+ ,- ,plc,mc ,mcx,grf,ch$,mg1,mg2,mg4,mg8,rm ,mlt:view.com
mod:modplay.com
tar:tar.com
sna,b ,z80:nmisvc.com
rar:unrar.com
Il existe également une douzaine de jeux disponibles, y compris un émulateur Super Mario (nécessite un vidage de cartouche pour fonctionner), un peint par Eric and the Floaters, un port partiel d'Endless Summer et un Snake en réseau.
Des plans
- Extension de la fonctionnalité des fichiers batch (les paramètres sont déjà en cours de transfert)
- IDE et auto-hébergement
- Calques dans l'Ă©diteur graphique
- ...
Conclusion
Pour le moment, NedoOS implémente toutes les fonctions nécessaires, donc si vous avez le matériel nécessaire, le système est plus pratique à utiliser qu'à ne pas utiliser.
Mais il reste encore beaucoup de travail à faire. Plus l'idéal est proche, plus les développeurs rejoignent le projet.
La plupart des développeurs NedoOS vivent dans le canal IRC #mhm sur irc.forestnet.org (également disponible sur http://chat.forestnet.org/ ). Il y a une chaîne Twitch en soirée (avec un miroir YouTube). Depuis le site Web de NedoOS, vous pouvez télécharger une version stable et de nouvelles sources .