Cpcdos c'est simple pratique innovant

Cpcdos OSx est un co-noyau monolithique modulaire multitâche à ordonnancement préemptif pour systèmes x86.
Ce projet gratuit a pour but de faciliter la création d'un système d'exploitation 32bit en console, mais tout en privilégiant l'interface graphique.
Il permet l'exécution de fichiers Windows (.EXE), d'exécuter plusieurs OS en parallèle. Il inclut son propre langage CpcdosC+ pour simplifier la programmation, mais d'autres langages sont possible comme le C/C++, (html/css lua, Python à venir), il permet d'exécuter des fichier Clang/LLVM, et aussi des rendu 3D avec OpenGL / GZE.
Surprit ? Allez voir la FAQ : OpenGL c'est vrai ?.

Aucune connaissances particulière est exigée, Cpcdos est ouvert à tous, que vous soyez débutants ou programmeur régulier.
De la méthodologie logique, une petite base mathématique, quelques termes informatique, et de la patience vous suffira amplement !

Alors, ça vous tente ? N'hésitez pas à consulter la rubrique Télécharger pour vous le procurer et jetez un œil à la Documentation.


Voici deux exemples du nouveau langage CpcdosC+ v3.0
Vous pouvez avoir un aperçu de la syntaxe anglaise en choisissant Anglais en haut a droite

Création d'une fenêtre transparente, d'un bouton qui affiche un message

Syntaxe Française

fenetre/ Ma_Fenetre
    .titre          = "Ma premiere application"
    .px             = "100"
    .py             = "20"
    .tx             = "250"
    .ty             = "150"
    .Opacite        = "200"
    .Parametres     = ""
    .CouleurFenetre = "050,050,250"
    .CouleurTitre   = "055,055,255"
    .CouleurFond    = "050,050,250"
    .event          = ""
    @#Handle_Fenetre creer/
Fin/ fenetre

bouton/ Mon_Bouton
    .Handle         = "%Handle_Fenetre%"
    .Parametres     = "IMGAUTO:2"
    .PX             = "20"
    .PY             = "20"
    .tx             = "100"
    .ty             = "30"
    .opacite        = "255"
    .texte          = "Clic moi!"
    .Image          = "%OS_GUI%/Buttons/BTN_BLUE.png"
    .event      = "%_EXE_PATH_%"
    creer/
Fin/ Bouton

Fonction/ Mon_Bouton.MouseClic()

    msgbox/ Hello ! :-)

Fin/ Fonction

Connexion, envoi, réception, et fermeture d'un serveur tcp

// On se connecte, et on récupère le numéro de handle du client
@#Handle_Serveur client/ 192.168.1.4:1234

si/ "%Handle_Serveur%" > "0" alors:

    // Demander à l'utilisateur de taper un message (q:Question)
    Txt/ Please enter the message :
    fix/ /q Mon_Message

    // Envoyer le message grâce au numero de handle connecté
    client/ /envoyer:%Handle_Serveur% %Mon_Message%

    // Réceptionner le message reçu via le numero de handle connecté
    @#Reception client/ /recevoir:%Handle_Serveur% /Attendre
    txt/ %Reception%

    // Fermer la connexion
    client/ /stop:%Handle_Serveur%

Sinon:

    // Ici, le numero de handle est inférieur à 1, on affiche alors un message d'erreur
    txt/ !!! Erreur lors de la connexion au serveur !!!

fin/ si

Si vous connaissez le langage C/C++ vous savez qu'il faudrait plus de lignes pour effectuer cette même opération.
Pour en savoir plus sur les possibilités et caractéristiques de Cpcdos, n'hésitez pas à consulter la rubrique Qu'est ce que Cpcdos?.