-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathVersion.txt
2421 lines (1850 loc) · 116 KB
/
Version.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.6 ***
*** 00 Mars 2021 For public ***
= = = = = = = = = = = = = = = = = = = = = = =
#################
#### En bref ####
#################
--> 3 Ajouts de divers fonctionnalités.
--> 0 corrections importantes.
--> 0 optimisations.
--> 2 corrections et modifications mineures.
--> Gain de stabilité : +0%
--> Note de stabilité : 14/20
--> Gain de performances : +0%
--> Note de performances : 15/20
--> Probabilités de crash
Réseau : 10%
SHELL : 15%
GUI : 15%
3D : 1%
I/O : 10%
Win32 : 20%
GENERAL : 30%
#############################
##### Cpcdos OSx kernel #####
#############################
[AJOUTS]
- [CPCDOS] Ajout d'un encryption XOR simple pour les mots de passes en utilisant les égalités.
- [SYSTEME] Possibilité de charger et utiliser des polices d'écriture au format TTF. !!! INSTABLE !!!
- [Win32] Affichage de la coloration en mode console en respectant les critères suivante
A: Action
P: Pass
I: Information
T: Trace
L: Log
W: Warning
E: Error
[CORRECTIONS]
- [CPCDOS] Correction de l'oubli de la propriété ListBox lors de l'appel de la fonction getHandleType()
- [CPCDOSC+] Correction de la variable %exe_path_dir% qui affichait le path du fichier quand "/" était utilisé
dans la fin du path
[MODIFICATIONS]
#######################
##### CPinti Core #####
#######################
[CORRECTIONS]
[AJOUT]
- [Win32] Ajout d'une runtime externe format Win32 "TTF_GEN.EXE" permettant de convertir des fichiers TTF en PNG
[MODIFICATIONS]
- [XE-LOADER] Mise à jour et optimisation du code. @Maeiky
- [XE-LOADER] Ajustements pour coloration de la sortie console.
#######################
##### Bugs connus #####
#######################
0) SOURIS QUI S'AFFOLE : C'est un bug du driver dos qui partage le même buffer. La solution :
Re-provoquer l'erreur : En remplissant du buffer en faisant la même chose... mais plus exagéré.
--> Sur la GUI de Cpcdos, il faut rester appuyer sur une touche du clavier tel que "S" par exemple, et tenter de caller le mieux possible
la souris en bas a gauche pendant 1 à 3 secondes (ça dépend de la vitesse des timers de machines) , insistez 3, 4 fois et vous retrouvez la souris!
1) BUG Garbage collector. Les variables de niveau 1, 2, 3 qui ne se soumettent pas au garbage collector..
-> PROBLEME : Les variables / donnees restent en mémoire même après fermeture du processus.
Ce qui entraine des bugs dans les programmes après une longue utilisation du noyau
car le nombre de variables par niveau et par processus ont un nombre limité de 256.
!!! Cette limitation pour le développement est temporaire!!!
-> SOLUTION : Pour combler ce problème, un petit réflèxe du langage C, à avoir en attendant est de libérer manuellement
les ressources utilisées via la commande FIX/ ou SET/. Utilisez donc la commande "FIX/ /S MaVariable" ou "SET/ /S MaVariable"
à la fin de votre programme pour supprimer manuellement la variable et ses données en memoire.
2) Entracelage PNG non supporté.
3) Interface BIOS APM (Advanced Power Management) ne fonctionne qu'avec les version
v1.2 et plus. Il y a des BIOS qui n'embarquent plus ce système. Mais
fonctionne sur une interface APCI qui n'est pas encore pris en charge par Cpcdos.
Il est donc fort probable qu'après l'execution des commandes SYS/ /ARRETER
votre PC ne s'éteindra jamais. Et qu'avec SYS/ /VEILLE qu'il ne se mettra
jamais en veille/Mode economie.
La commande SYS/ /REDEMARRER ne fonctionne pas sur certain intel de 4eme génération et plus.
4) Le garbage Collector de BITMAPs ne met pas (encore) à jours le nombre de Mega octets
utilisés en haut de la console.
5) Plantage du systeme au changement de bit de couleurs en console avec un OS ayant 1 fenêtre ou plus.
6) Plantage du système si l'utilisateur exécute une instance d'OpenGL / GZE en 16 ou 24 bits.
TEMPORAIREMENT, il faut impérativement utiliser le 32 bits de couleurs en cas de rendu 3D.
Ceci est causé par le blittage RGBA du buffer provenant du moteur qu'il faut convertir a chaud
si ce dernier ne crée par de buffer 16 ou 24 bits.
7) Freeze avec une image rectangulaire au niveau du curseur lors du retour sur la GUI.
8) Satistiques du trafic réseau non actualisées
9) Quelques bugs d'exécution des commandes copier/, supprimer/, renommer/, dossier/
10) L'ecriture d'une machine a Cpcdos en debug RS232 (Port com) ne fonctionne qu'en lecture
SYS/ /DEBUG /COM1 = 2
-----------------------------------------------------------------------------------------------------------
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.5 ***
*** 15 aout 2021 For public ***
= = = = = = = = = = = = = = = = = = = = = = =
#################
#### En bref ####
#################
--> 25 Ajouts de divers fonctionnalités.
--> 9 corrections importantes.
--> 3 optimisations.
--> 12 corrections et modifications mineures.
--> Gain de stabilité : +10%
--> Note de stabilité : 14/20
--> Gain de performances : +40% (Fenetres)
--> Note de performances : 15/20
--> Probabilités de crash
Réseau : 10%
SHELL : 15%
GUI : 15%
3D : 1%
I/O : 10%
Win32 : 20%
GENERAL : 30%
#############################
##### Cpcdos OSx kernel #####
#############################
[AJOUTS]
- [Win32] Premiere version du support chargeur fichiers .ELF (Prototype ! Pas fiable !)
- [Win32] Ajout du support multi-threading des fichiers exécutables Win32.
- [SCI / SYSTEME] Ajout de la personnalisation du curseur (Icone, vitesse, inertie ...)
- [SCI] Ajout du redimentionnement manuel des fenêtre en bas à droite des fenêtres + curseur personnalisable.
- [SCI] Ajout de l'objet ListBox, qui permet d'afficher une liste d'élements selectionnable avec évènement.
- [SCI] Ajout de l'effet de flou pour les objets graphiques. Parametre a ajouter " (1 --> 5)
- [SCI] Ajout de l'effet de flou lors du déplacement des fenêtres.
- [SCI] Ajout du menu contextuel (Menu clic droit personnalisable depuis CONTEXT.CPC + evenements)
- [SCI] Ajout de la fonction de screenshot (CTRL+PrntScr) dont le path du dossier d'enregistrement est la variable %SCR_SAVE%
- [SCI] Ajout du ALT+F4 pour fermer les fenetres focus ! :-)
Fenetre non fermables via le parametre CLOSE:0
- [SCI] Ajout de la première version du copier / coller dans le menu contextuel du Textbox (Copie brute)
- [SCI] Ajout du module de gestion des collision des fenêtres aux abords de l'écran avec les coordonnees programmables.
- [CPCDOSC+] Ajout de la premiere version du gestionnaire de tâches. SYS/ /TASKMGR ou CTRL+SUPPR
- [CPCDOSC+] Ajout de l'évènement .ResizeEnd() quand l'utilisateur a finit de redimentionner manuellement la fenêtre.
- [CPCDOSC+] Ajout des propriétés des fenêtres MINSIZ_X, MINSIZ_Y, MAXSIZ_X, MAXSIZ_Y pour définir la taille
maximale et minimale d'une fenetre
- [CPCDOSC+] Ajout du parametre pour focus un textbox
Textbox/ /focus My_Textbox
- [CPCDOSC+] Ajout du parametre pour obtenir l'index ou le nom de l'item selectionné dans le ListBox
- Listbox/ /selected_index MaListeBox
- Listbox/ /selected_name MaListeBox
- [CPCDOSC+] Ajout des commandes Windows/
- Windows/ /SizeUp MyWindow - Agrandir une fenetre
- Windows/ /SizeDown MyWindow - Reduire une fenetre
- Windows/ /Reduct MyWindow - Reduire une fenetre
- Windows/ /Restaure MyWindow - Restaurer une fenetre
- [CPCDOSC+] Ajout du parametre du menu contextuel "CTX" pour les objets GUI
- CTX:0 --> desactivé (par defaut, sauf fenetre, textbox et explorer)
- CTX:1 --> activé (Profile par défaut)
- CTX:2 --> activé (Profile personnalisé)
- [CPCDOSC+] Ajout des parametres dans sys/ /process pour lister les processus & thread
- /list --> Lister les processus
- /listb --> Adapte pour les listbox avec ";" comme separateur
- /nameonly --> Nom seulement
- /icon --> Lister les icones par processus
- /index --> Numero index seulement
- /array variable --> Stocker dans un taleau CpcdosC+
- [CPCDOSC+] Ajout du parametre SYS/ /SCREEN /LISTB compatible pour les listbox
Ce qui permet de lister les resolutions d'écran avec ";" comme separateur.
- [CPCDOSC+] Ajout du parametre des fenetres "COLLISION" 0=Desactivé 1=Activé
Par défaut activé pour toutes les fenêtres, ce qui permet aux fenêtres d'être soumise
aux rebords limites autour de l'écran (Configurable depuis WIN_SCR.CPC)
[CORRECTIONS]
- [BITMAP] Correction du problème de transparence lors ce que le canal RGB est egale a zero.
- [SCI] Correction du problème d'affichage 32 bits des PNG. (Effet escaliers)
- [SCI] Correction du textbox apparant durant le déplacement d'une fenêtre
- [SCI] Amelioration de la prise en charge du canal ALPHA des fichiers PNG.
- [SCI] Correction de l'ouverture d'un dossier sur le bureau qui n'ouvrait pas au bon path
- [SCI] Correction de la visibilité des objets graphique après réduction de la fenêtre.
- [SCI] Correction d'un probleme de redimentionnement de l'image de la barre de titre.
- [GUI] Correction des problèmes d'evenements du Textblock.
- [GUI] Correction de clignottements intempestifs du curseur graphique personnalisé.
- [GUI] Correction du problème de sensibilité/inertie du curseur. voir KRNL/CONFIG/ENV_GUI/CURSOR.CPC
- [KERNEL] Correction d'un crash lors de la creation d'une fenetre en hors zone graphique.
- [CPCDOSC+] Correction de la commande CMD/ /PID: qui n'accomplissait pas correctement sa tâche.
- [CPCDOSC+] Remplacement des caracteres interdits dans le nom de processus et limité a 16 caracteres.
- [CPCDOSC+] Remplacement du nom de variable %CPC_GUI.LOAD_IMG% par %CPC_GUI.CURSOR_LOAD_IMG%.
- [CPCDOSC+] L'evenement ResizeEnd() est desormais exécuté après l'évènement Resize() du bouton des fenêtres.
[MODIFICATIONS]
- [SCI] REFONTE TOTALE de la fenêtre graphique. Possibilité de la personnaliser depuis WIN_DGN.CPC (+Optimisation)
- [SCI] REFONTE TOTALE du MessageBox() (+Optimisation)
- [SCI] Amélioration de la précision du curseur. (+Optimisation)
- [SHELL] La commande START/ fait désormais un switch automatique sur l'OS en question (SYS/ /OS)
Ce qui corrige la console graphique F9 et bien plus !
- [SCI] Possibilité de REDEFINIR une fonction déjà déclarée avec à nouveau "declare/"
- [CPCDOSC+] Modification de la variable _EXE_PATH_F_ en _EXE_PATH_DIR_
- [CPCDOSC+] Modification des variables dans WIN_SCR.CPC au sujet du mot anglais "colision" en "collision"
- [SCI] Propriété .OPACITY d'un picturebox varie entre 1 et 255. Si OPACITY = "0" alors le mode ALPHA est désactivé.
Idéale pour afficher les rendu visuels dans un picturebox depuis un moteur de rendu dynamique. (3D, html etc...)
#######################
##### CPinti Core #####
#######################
[CORRECTIONS]
- [Win32] Correction d'un problème execution des fichiers .EXE et .ELF
- [CORE] Récupération du nom processus désormais impossible si le processus est fermé.
[AJOUT]
- [Win32] Prise en charge du multi-threading des applications Win32 sous CPinti Core.
- [Win32] ajout de la fonction cpc_eval() qui permet d'exécuter une commande CpcdosC+ avec un retour.
- [Win32] Ajout du support des evenements de la souris et clavier.
Etat de la souris : cpc_mouse_state_lck(0) --> 0:clic 1:X 2:Y
Definir souris : cpc_set_mouse_lck(x, y, visible)
Obtenir touche : cpc_get_key_lck()
[MODIFICATIONS]
- [XE-LOADER] Mise à jour et optimisation du code. @Maeiky
#######################
##### Bugs connus #####
#######################
0) SOURIS QUI S'AFFOLE : C'est un bug du driver dos qui partage le même buffer. La solution :
Re-provoquer l'erreur : En remplissant du buffer en faisant la même chose... mais plus exagéré.
--> Sur la GUI de Cpcdos, il faut rester appuyer sur une touche du clavier tel que "S" par exemple, et tenter de caller le mieux possible
la souris en bas a gauche pendant 1 à 3 secondes (ça dépend de la vitesse des timers de machines) , insistez 3, 4 fois et vous retrouvez la souris!
1) BUG Garbage collector. Les variables de niveau 1, 2, 3 qui ne se soumettent pas au garbage collector..
-> PROBLEME : Les variables / donnees restent en mémoire même après fermeture du processus.
Ce qui entraine des bugs dans les programmes après une longue utilisation du noyau
car le nombre de variables par niveau et par processus ont un nombre limité de 256.
!!! Cette limitation pour le développement est temporaire!!!
-> SOLUTION : Pour combler ce problème, un petit réflèxe du langage C, à avoir en attendant est de libérer manuellement
les ressources utilisées via la commande FIX/ ou SET/. Utilisez donc la commande "FIX/ /S MaVariable" ou "SET/ /S MaVariable"
à la fin de votre programme pour supprimer manuellement la variable et ses données en memoire.
2) Entracelage PNG non supporté.
3) Interface BIOS APM (Advanced Power Management) ne fonctionne qu'avec les version
v1.2 et plus. Il y a des BIOS qui n'embarquent plus ce système. Mais
fonctionne sur une interface APCI qui n'est pas encore pris en charge par Cpcdos.
Il est donc fort probable qu'après l'execution des commandes SYS/ /ARRETER
votre PC ne s'éteindra jamais. Et qu'avec SYS/ /VEILLE qu'il ne se mettra
jamais en veille/Mode economie.
La commande SYS/ /REDEMARRER ne fonctionne pas sur certain intel de 4eme génération et plus.
4) Le garbage Collector de BITMAPs ne met pas (encore) à jours le nombre de Mega octets
utilisés en haut de la console.
5) Plantage du systeme au changement de bit de couleurs en console avec un OS ayant 1 fenêtre ou plus.
6) Plantage du système si l'utilisateur exécute une instance d'OpenGL / GZE en 16 ou 24 bits.
TEMPORAIREMENT, il faut impérativement utiliser le 32 bits de couleurs en cas de rendu 3D.
Ceci est causé par le blittage RGBA du buffer provenant du moteur qu'il faut convertir a chaud
si ce dernier ne crée par de buffer 16 ou 24 bits.
7) Freeze avec une image rectangulaire au niveau du curseur lors du retour sur la GUI.
8) Satistiques du trafic réseau non actualisées
9) Quelques bugs d'exécution des commandes copier/, supprimer/, renommer/, dossier/
10) L'ecriture d'une machine a Cpcdos en debug RS232 (Port com) ne fonctionne qu'en lecture
SYS/ /DEBUG /COM1 = 2
-----------------------------------------------------------------------------------------------------------
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.4 ***
*** 7 Mars 2021 For public ***
= = = = = = = = = = = = = = = = = = = = = = =
---> FULLY CLEANED FOR PUBLIC CODE SOURCE
Anciens fichiers prototypes non utilisés (GDT, boot, multicore, network experimentations...)
#################
#### En bref ####
#################
--> 14 Ajouts de divers fonctionnalités.
--> 9 corrections importantes.
--> 1 optimisations.
--> 8 corrections et modifications mineures.
--> Gain de stabilité : +10%
--> Note de stabilité : 14/20
--> Gain de performances : +2%
--> Note de performances : 13/20
--> Probabilités de crash
Réseau : 10%
SHELL : 15%
GUI : 20%
3D : 1%
I/O : 10%
Win32 : 20%
GENERAL : 30%
#############################
##### Cpcdos OSx kernel #####
#############################
[AJOUTS]
- [GUI] Ajout de la première version de l'objet Explorer. ( Mode Liste & Icones )
Qui permet de naviguer dans les dossiers et ouvrir des fichiers et programmes graphiquement depuis votre souris ;)
+ Association graphique des extentions + programmes associés modifiable.
- [GUI] Ajout de la fonction CpcdosC+ init_desktop() qui permet de créer un bureau d'icones. Attribuable depuis la propriete fenetre "DESKTOPMODE:1"
- [GUI] Ajout de la barre des taches. Attribuable depuis la propriete fenetre "TASKBAR:1" (horizontale) ou "TASKBAR:2" (Verticale)
- [GUI] Ajout de la possibilité de desactiver le multithreading d'un picturebox quand la fenêtre parent n'est pas focus.
--> %CPC_GUI.PICTUREBOX.MULTITHREAD.NOFOCUS%
- [SYSTEME] Ajout du support de lecture de fichiers .INI
- [SYSTEME] Ajout de la gestion des extensions de fichiers.
Il est possible de personnaliser les formats de fichiers .CPC .EXE .PNG .DLL etc... avec
un programme associé, description et une icône pour l'objet graphique Explorateur
- [CPCDOSC+] Ajout de la commande "SYS/ /fileformat-update" qui permet de mettre a jour la liste des formats de fichiers
depuis KRNL\CONFIG\FORMATS.INI
ou "SYS/ /Fileformat-update MonFichier.ini" pour choisir son propre profile de format.
- [CPCDOSC+] Ajout de la commande "SYS/ /file-format-gui-load" qui permet de charger graphiquement les icônes associés
aux formats des fichier. (Taille minimale et maximale).
- [CPCDOSC+] Ajout de la fonction CPC.EXECUTION() permettant en interne, d'exécuter des fichiers .CPC avec des arguments
- [CPCDOSC+] Ajout de l'argument \#SAMEID pour EXE/ qui permet de conserver l'ID et ne pas le regénérer.
- [CPCDOSC+] Ajout d'un avertissement lors de l'utilisation de la syntaxe française.
- [CPCDOSC+] Ajout des variables d'état du network :
%CPC.SYS.NET.INST% --> Network Installé ? (Pilote réseau OK)
%CPC.SYS.NET.LOCAL% --> Réseau local répondant (Ping vers une quelconque machine)
%CPC.SYS.NET.GATEWAY% --> Réseau avec passerelle uniquement
%CPC.SYS.NET.INTERNET% --> Accès au réseau internet
%CPC.SYS.NET.INTERNET_DNS% --> Accès au réseau internet + DNS !
[CORRECTIONS]
- [GUI] Correction incohérences de la capacitée maximale des checkbox confondues avec les checkbox
- [GUI] Correction d'une resolution de creation de contexte qui était écrit en dur.
- [MEMORY] Correction de crash provoqués lors ce qu'un bitmap NULL est copié dans un bitmap non-null
- [MEMORY] Correction d'un crash dans Modifier_BITMAP_texte() si l'ID est négatif.
- [MEMORY] GROSSES corrections préventives de probables crachs + amélioration tracage debug.
- [GUI] Correction d'une mauvaise gestion de modification des boutons.
- [GUI] Correction de la commande REFRESH/ qui ne fonctionnait absolument pas.
- [SCI] Correction d'un freeze provoqué par une section critique ouverte mais non fermée. (IMG_Changer_taille)
- [SCI] Correction de l'impossibilité de fermer le desktop et taskbar depuis son Handle ID.
- [CPCDOSC+] Correction d'un conflit de syntaxe avec les propriétés graphiques et les nom de fichiers.
- [CPCDOSC+] Correction de la commande DIR/ qui ne fonctionnait pas correctement.
[MODIFICATIONS]
- [SYSTEME] Remplace désormais les //, /// et //// par \ pour les opérations de lecture de bas niveaux
- [SYSTEME] Affiche désormais le répertoire ".." dans du listing d'un répertoire.
- [SYSTEME] Nouveau logo ASCII-ART de boot - Chrapati
- [SCI] Optimisation lors du chargement des elements graphiques d'une fenetre. Tous les elements commun tels que
les boutons fermeture, agrandissement, barre titre etc.. seront chargés qu'une seule fois dans une mémoire partagée.
- [SCI] Amélioration de la tracabilité du debug lors de la création des elements graphiques.
#######################
##### CPinti Core #####
#######################
[CORRECTIONS]
- [NETWORK] Correction de problèmes d'actualisation des statistiques de téléchargement.
[AJOUT]
[MODIFICATIONS]
- [Exeloader] Intégration de la nouvelle mise à jour permettant l'exécution native de programmes
OpenGL mesa LLVM pipe avec emulation des shaders GPU sur CPU et plus...
#######################
##### Bugs connus #####
#######################
0) SOURIS QUI S'AFFOLE : C'est un bug du driver dos qui partage le même buffer. La solution :
Re-provoquer l'erreur : En remplissant du buffer en faisant la même chose... mais plus exagéré.
--> Sur la GUI de Cpcdos, il faut rester appuyer sur une touche du clavier tel que "S" par exemple, et tenter de caller le mieux possible
la souris en bas a gauche pendant 1 à 3 secondes (ça dépend de la vitesse des timers de machines) , insistez 3, 4 fois et vous retrouvez la souris!
1) BUG Garbage collector. Les variables de niveau 1, 2, 3 qui ne se soumettent pas au garbage collector..
-> PROBLEME : Les variables / donnees restent en mémoire même après fermeture du processus.
Ce qui entraine des bugs dans les programmes après une longue utilisation du noyau
car le nombre de variables par niveau et par processus ont un nombre limité de 256.
!!! Cette limitation pour le développement est temporaire!!!
-> SOLUTION : Pour combler ce problème, un petit réflèxe du langage C, à avoir en attendant est de libérer manuellement
les ressources utilisées via la commande FIX/ ou SET/. Utilisez donc la commande "FIX/ /S MaVariable" ou "SET/ /S MaVariable"
à la fin de votre programme pour supprimer manuellement la variable et ses données en memoire.
2) Entracelage PNG non supporté.
3) Interface BIOS APM (Advanced Power Management) ne fonctionne qu'avec les version
v1.2 et plus. Il y a des BIOS qui n'embarquent plus ce système. Mais
fonctionne sur une interface APCI qui n'est pas encore pris en charge par Cpcdos.
Il est donc fort probable qu'après l'execution des commandes SYS/ /ARRETER
votre PC ne s'éteindra jamais. Et qu'avec SYS/ /VEILLE qu'il ne se mettra
jamais en veille/Mode economie.
La commande SYS/ /REDEMARRER ne fonctionne pas sur certain intel de 4eme génération et plus.
4) Le garbage Collector de BITMAPs ne met pas (encore) à jours le nombre de Mega octets
utilisés en haut de la console.
5) Plantage du systeme au changement de bit de couleurs en console avec un OS ayant 1 fenêtre ou plus.
6) Plantage du système si l'utilisateur exécute une instance d'OpenGL / GZE en 16 ou 24 bits.
TEMPORAIREMENT, il faut impérativement utiliser le 32 bits de couleurs en cas de rendu 3D.
Ceci est causé par le blittage RGBA du buffer provenant du moteur qu'il faut convertir a chaud
si ce dernier ne crée par de buffer 16 ou 24 bits.
7) Freeze avec une image rectangulaire au niveau du curseur lors du retour sur la GUI.
8) Satistiques du trafic réseau non actualisées
9) Quelques bugs d'exécution des commandes copier/, supprimer/, renommer/, dossier/
10) L'ecriture d'une machine a Cpcdos en debug RS232 (Port com) ne fonctionne qu'en lecture
SYS/ /DEBUG /COM1 = 2
-----------------------------------------------------------------------------------------------------------
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.3 ***
*** 01 Novembre 2020 For public ***
= = = = = = = = = = = = = = = = = = = = = = =
#################
#### En bref ####
#################
--> 21 Ajouts de divers fonctionnalités.
--> 15 corrections importantes.
--> 4 optimisations.
--> 12 corrections et modifications mineures.
--> Gain de stabilité : +2%
--> Note de stabilité : 13/20
--> Gain de performances : +2%
--> Note de performances : 13/20
--> Probabilités de crash
Réseau : 10% (Plus stable!)
SHELL : 12%
GUI : 8%
3D : 2%
I/O : 28%
Win32 : 30%
GENERAL : 30%
#############################
##### Cpcdos OSx kernel #####
#############################
[AJOUTS]
- [NOYAU] Ajout de l'utilitaire de mise a jour du kernel à distance depuis notre serveur de depot officiel cpcdos.net
+ Ce qui permet de mettre à jour le noyau depuis la console. Et participer aux version Hot-Releases. (+ Ajout des statistiques)
- [NOYAU] Ajout du module de décompression des fichiers .ZIP
- [GUI] Ajout de la console graphique. Utilisable depuis GUI/ /CONSOLE+ ou GUI/ /LC+
+ Vous pouvez creer votre propre console. Voir KRNL/CONFIG/GUI_ENV/CONSOLE.CPC et la variable CPC_GUI.CONSOLE dans GUI_STD.CPC --> A modifier DANS VOTRE OS !
- [GUI] Ajout des controlbox d'agrandissement et rétrécissement des fenêtres.
- [GUI] Ajout du rétrécissement lors d'un déplacement d'une fenêtre agrandie.
- [GUI] Ajout de l'updater d'objets. (Qui sert à actualiser périotiquement l'heure, cpu, ram etc...)
- [CPCDOSC+] Ajout du support des fichiers compressés format ZIP. Via la commande decompresser/ ou decompress/
- [CPCDOSC+] Ajout des commande de mises a jours
SYS/ /UPDATE pour verifier l'existence d'une nouvelle mise a jour.
SYS/ /UPDATE-NEWS pour afficher les dernières nouveautés
SYS/ /UPDATE-GET pour obtenir la derniere mise a jour (Package)
SYS/ /UPDATE-INSTALL pour installer le package téléchargé.
SYS/ /UPDATE-GET-INSTALL pour télécharger ET installer la derniere mise à jour.
- [CPCDOSC+] Ajout de la commande qui permet d'afficher ou d'identifier votre machine lors de mises a jours ou crashs.
SYS/ /NETID {votre pseudo}
- [CPCDOSC+] Ajout de l'évenements "resize(valeur)". Lors ce que l'utilisateur clique sur agrandir/retrecir la fenêtre
L'argument %valeur% si true = la fenetre s'agrandie. false = la fenêtre est retrecie
- [CPCDOSC+] Ajout de l'evenement "KeyEnter(texte)" Lors ce que l'utilisateur presse la touche ENTRER
- [CPCDOSC+] Ajout de la commande SYS/ /VERSION pour afficher la version "Build" actuelle.
- [CPCDOSC+] Ajout du support de la GUI pour la commande de recuperation et positionnement du curseur POS/ ou LOC/
- [CPCDOSC+] Ajout des proprietes des fenetres :
--> "MOVE:0" ou "MOVE:1" si la fenêtre est déplacable ou non.
--> "SIZ:1" ou "SIZ:0" si la fenetre est sizable manuellement
--> "SIZBTN:1" ou "SIZBTN:0" si la fenetre comporte le bouton d'angrandisseement et retrecissement
--> "REDUC:1" ou "REDUC:0" si a fenetre est reductable dans la barre des taches ou non
--> "CLOSE:1" ou "CLOSE:0" si la fenetre est fermable ou non
- [CPCDOSC+] Ajout de la propriete des boutons "BORD:0" et "BORD:1"
- [CPCDOSC+] Possibilité de créer un tableau dimensionné avec comme syntaxe ".."
Exemple : set/ MyArray[0..12] = Hello
- [CPCDOSC+] Ajout des variables pour les touches fonction mappés
F1, F2, F3, F4, F5, F6, F7, F8, F9, F11, F12.
F10 etant temporairement réservée pour la console.
- [CPCDOSC+] Ajout des operateur d'incrementation ++ et de decrementation --
Exemple : set/ MyValue++
- [CPCDOSC+] Ajout du mode 2 CCP/ /OPTIMISATION = 2
ce qui permet de gagner x2 des performances du CpcdosC+ en temporisant
le fichier .CPC. Attention cela peut generer des micro-freezes a long terme sur la GUI.
- [CPCDOSC+] Ajout du parametre qui permet de reset la black list des fonction d'evenements graphique introuvables
gui/ /reset-blacklist-events
- [CPCDOSC+] Ajout du parametre qui permet d'afficher la liste des fonctions graphiques introuvables et bloques!
gui/ /display-blacklist-events
- [CPCDOSC+] Ajout de la fonction CPC.STR(chr,count) qui permet de répliquer x fois un caractere
Exemple : txt/ /f:CPC.STR(A,8)
Affiche : AAAAAAAA
- [CPCDOSC+] Ajout des parametres GUI/ /CONSOLE+ ou /LC+ pour executer une console en mode GUI.
- [BOOTSCREEN] Ajout des parametres suivants :
- Degradé sombre
cpc_sys.boot.bootscreen.darkening (0:Désactivé, 1:Au début seulement, 2:A la fin seulement, 3:Les deux)
- Opacité des frames
cpc_sys.boot.bootscreen.frames_opacity (64 --> 255)
- [ERREUR] Ajout de l'avertissement AVT_83 (Voir manuel)
[CORRECTIONS]
- [KERNEL] Correction d'un bug lors de l'utilisation de la commande CMD/ /THREAD /F:VotreFonction(). Qui utilisais le thread parent pour s'exécuter.
- [KERNEL] Ajout du KRNL_ID lors de la création d'un thread (Absent depuis 3 ans!.. Miracle!)
- [KERNEL] Correction de petit "freeze" de l'affichage des secondes due a une mauvaise periode de
rafraichissement du RTC. (Nombre d'accès à l'interruption BIOS 0x70).
- [KERNEL] Suppression des referencements de memoire du shell pouvant faire crasher hasardeusement le systeme.
- [KERNEL] Correction d'un crash provoqué par la lecture de fichier vides.
- [KERNEL] Correction des crashs provoques par la demande de creation de repertoires au-delas de 255 caracteres.
- [MEMORY] Corrections des bugs (x4) dans le gestionnaire des bitmaps. Lors ce qu'un bitmap fait l'objet d'une erreur, il retourne NULL & -1
Mais les routines continuent leur exécution alors que le pointeur est NULL et finir par crasher bien plus tard.
- [MEMORY] Correction d'un crash dans le duplicat de la bitmap causé par un excès d'ID. (Meaxy 18-OCT-202)
- [SHELL] Correction d'une boucle infinie provoqué lors de l'optimisation du code CpcdosC+ et qu'il n'y avait absolument rien à optimisé
l'optimiseur était bloqué dans une boucle à atteindre la fin du fichier. Bug trouvé par Jordan le 12-AVRL-2020
- [GUI] Correction du textbox qui affiche un "-1" quand il n'y a pas de caractères.
- [GUI] (UT) Amélioration de l'updater d'objets (UPD:1) pour l'affchage de l'heure et autres elements.
+ Correction d'interference OS ID.
- [GUI] Correction du clic en arrière plan suite à un clic sur une fenêtre (focus) qui disparait.
- [CPCDOSC+] Correction d'un bug lors d'un ping/ ou download/ si vous définissez l'OS ID via SYS/ /OS:OSname
- [CPCDOSC+] Correction de la commande 'Write/' & 'Ecrire/'.
- [CPCDOSC+] Correction des plantages hasardeux de CCP/ /Optimization = 1
- [CPCDOSC+] Correction d'un crash pouvant etre provoqué lors de la mise a jour du systeme avec un ancien fichier temporaire
pouvant faire interférence. (Solution : Suppression du fichier temporaire avant update)
[MODIFICATIONS]
- [NOYAU] Modification du nom de variable CPC_GUI.WINDOW.TITLE_TY par CPC_GUI.WINDOW.TITLE_SY
+ Modification du nom de variable dans KRNL/CONFIG/ENV_GUI/WIN_TITL.CPC
- [GUI] Refonte du MESSAGEBOX.
- [GUI] Textebox : Le curseur paraitra blanc quand la couleur du fond sera foncée
- [GUI] Optimisation : Desormais, tous les objets graphiques où leur fonctions d'evenements est introuvable, l'appel de fonction sera
mise dans une black list. Ce dernier permet d'augmenter la réactivité des interactions graphiques, et évite de chercher et tenter
d'appeler des fonctions évènements qui n'existent pas. Afin de reset la black list il suffit d'utiliser la commande
gui/ /reset-blacklist-events
et afficher la liste des evenements bloques
gui/ /display-blacklist-events
- [DEBUG] Bloquage des interruptions lors de l'ecriture du log sur support physique.
--> Optimisation du temps d'écriture (+10%)
--> Suppression d'un crash
- [DEBUG] Suppression du message "Cette version ne peut interpreter les fonction. Pour le moment ;-)"
Provoqué par un retour de fonction en console.
- [CPCDOSC+] Desactivation du parametre /APPBIN de la commande ecrire/ et Write/
--> Attente refonte module I/O
#######################
##### CPinti Core #####
#######################
[CORRECTIONS]
- [CORE] Bloquage du sheduler des threads zombies qui ne repondent plus.
- [CORE] Correction d'un crash hasardeux lors de l'arret du noyau.
- [CORE] Correction d'un bug qui considirait le dernier thread en vie (lors d'un shutdown) comme etant un thread zombie
et était automatiquement banni du scheduler, et donc le système n'avait le temps de shutdown. Et restait bloqué comme un con...
- [IO] Correction des crashs provoqués par un path de fichier incluant des caractères interdits. (Desormais controlés et reformalisés par Cpcdos)
- [NETWORK] Correction d'un crash due au a une mauvaise gestion de telechargement de fichiers par bloc TCP.
- [NETWORK] Correction d'un bug de téléchargement de fichiers binaires. (qui avaient la taille de 10 octets)
[AJOUT]
[MODIFICATIONS]
- [NETWORK] Optimisation de la vitesse de téléchargement. Avant bloqué à 200Ko/s, maintenant 800Ko/s pour cette version. Augmentation de la limitation pour la prochaine update.
- [DEBUG] OPTIMISATION Bloquage de l'appel de fonction des informations de debugage si non activée.
- [CORE] Affichage des informations de la pile d'appel (stack trace -3) lors d'un crash identifiable.
#######################
##### Bugs connus #####
#######################
0) SOURIS QUI S'AFFOLE : C'est un bug du driver dos qui partage le même buffer. La solution :
Re-provoquer l'erreur : En remplissant du buffer en faisant la même chose... mais plus exagéré.
--> Sur la GUI de Cpcdos, il faut rester appuyer sur une touche du clavier tel que "S" par exemple, et tenter de caller le mieux possible
la souris en bas a gauche pendant 1 à 3 secondes (ça dépend de la vitesse des timers de machines) , insistez 3, 4 fois et vous retrouvez la souris!
1) BUG Garbage collector. Les variables de niveau 1, 2, 3 qui ne se soumettent pas au garbage collector..
-> PROBLEME : Les variables / donnees restent en mémoire même après fermeture du processus.
Ce qui entraine des bugs dans les programmes après une longue utilisation du noyau
car le nombre de variables par niveau et par processus ont un nombre limité de 256.
!!! Cette limitation pour le développement est temporaire!!!
-> SOLUTION : Pour combler ce problème, un petit réflèxe du langage C, à avoir en attendant la prochaine
update, est de libérer manuellement les ressources utilisées via la commande FIX/ ou SET/.
Utilisez donc la commande "FIX/ /S MaVariable" ou "SET/ /S MaVariable" à la fin de votre programme
pour supprimer manuellement la variable et ses données en memoire.
2) Entracelage PNG non supporté.
3) Interface BIOS APM (Advanced Power Management) ne fonctionne qu'avec les version
v1.2 et plus. Il y a des BIOS qui n'embarquent plus ce système. Mais
fonctionne sur une interface APCI qui n'est pas encore pris en charge par Cpcdos.
Il est donc fort probable qu'après l'execution des commandes SYS/ /ARRETER
votre PC ne s'éteindra jamais. Et qu'avec SYS/ /VEILLE qu'il ne se mettra
jamais en veille/Mode economie.
La commande SYS/ /REDEMARRER ne fonctionne pas sur certain intel de 4eme génération et plus.
4) Le garbage Collector de BITMAPs ne met pas (encore) à jours le nombre de Mega octets
utilisés en haut de la console.
5) Plantage du systeme au changement de bit de couleurs en console avec un OS ayant 1 fenêtre ou plus.
6) Plantage du système si l'utilisateur exécute une instance d'OpenGL / GZE en 16 ou 24 bits.
TEMPORAIREMENT, il faut impérativement utiliser le 32 bits de couleurs en cas de rendu 3D.
Ceci est causé par le blittage RGBA du buffer provenant du moteur qu'il faut convertir a chaud
si ce dernier ne crée par de buffer 16 ou 24 bits.
7) Freeze avec une image rectangulaire au niveau du curseur lors du retour sur la GUI.
8) Satistiques du trafic réseau non actualisées
9) Quelques bugs d'exécution des commandes copier/, supprimer/, renommer/, dossier/
10) L'ecriture d'une machine a Cpcdos en debug RS232 (Port com) ne fonctionne qu'en lecture
SYS/ /DEBUG /COM1 = 2
-----------------------------------------------------------------------------------------------------------
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.2 ***
*** 08 Avril 20 For public ***
= = = = = = = = = = = = = = = = = = = = = = =
#################
#### En bref ####
#################
--> 7 Ajouts de divers fonctionnalités.
--> 10 corrections importantes.
--> 2 optimisations.
--> 10 corrections et modifications mineures.
--> Gain de stabilité : +2%
--> Note de stabilité : 13/20
--> Gain de performances : +0%
--> Note de performances : 13/20
--> Probabilités de crash
Réseau : 6%
SHELL : 15%
GUI : 8%
3D : 2%
I/O : 28%
GENERAL : 30%
#############################
##### Cpcdos OSx kernel #####
#############################
[CORRECTIONS]
- [RESEAU] Correction des corruptions des fichiers binaire télechargés.
- [RESEAU] Correction du serveur par defaut. Qui sera le serveur passif TCP avec deux buffers (Input/Output)
- [RESEAU] CORRECTION BUG CONNU N°8 : Syntaxe de variables Cpcdos confondues avec le code Java-Script/PHP lors du téléchargement des pages WEB.
- [TELNET] Correction du mode serveur TELNET, désormais utilisable depuis.
- [TELNET] CORRECTION BUG CONNU N°6 : Plantage du système a l'utilisation de la commande "demarrer/" "start/ depuis une instance TELNEL (Putty...)
- [TELNET] CORRECTION BUG CONNU N°13 : Crash lors de l'arret de l'OS + noyau avec une commande TELNET. (Putty...)
- [CPCDOSC+] Correction du mode serveur CCP.
- [CPCDOSC+] Correction de la commande 'COPIER/' 'COPY/'. Désormais fonctionnel et multi-threaded.
- [CPCDOSC+] Correction des crashs provoqués lors de l'écriture d'un fichier dans un dossier inexistant. Notament avec la commande 'ecrire/' & 'write/'.
- [SYSTEME] Correction des crashs si on ouvre un fichier alors qu'il s'agit le nom d'un dossier.
- [SYSTEME] Ajustation de l'utilisation du CPU (En amelioration!)
- [SYSTEME] Correction d'une corruption de memoire aléatoire durant l'allocation des chaines de caracteres. L'octet '0' en fin de chaine
était hors mémoire.
- [GUI] Correction d'un bug d'interaction utilisateur qui donnait FOCUS à la précédente fenêtre (à l'arrière plan)
en cliqant simplement sur la barre de titre de la fenêtre focus.
- [GUI] Amélioration du textebox.
* Typing curseur clignotant lors d'attente d'édition. (Typing cursor --> Curseur de texte)
* Placer et déplacer le typing curseur à l'aide des touches directionnelles du clavier ou de la souris.
!! C'est pas encore parfait pour la souris !!
* Ecrire du texte en multi-ligne.
* Supprimer depuis la touche backspace
* Bouton FIN et DEBUT pour deplacer le typing cursor..
[AJOUTS]
- [WIN32] Ajout du support d'allocation mémoire TLS par thread.
--> TlsAlloc(), TlsGetValue() et TlsSetValue().
- [CPCDOSC+] Ajout des l'évenements lors ce que la fenêtre est fermé par l'utilisateur ou le système.
--> .WindowClosing et .WindowClosed
- [CPCDOSC+] Ajout de la commande 'Actualiser/' et 'Refresh/' en anglais.
Cette commande permet d'actualiser graphiquement un objet, une fenetre, l'arriere plan ou absolument tout!
Utile afin de combler volontairement d'eventuels artefacts ou defauts graphiques de vos OS.
- [CPCDOSC+] Ajout de la possbilité d'actualiser les elements graphiques des objets via le parametre 'UPD:1' puis ${VARIABLE} dans la propriété '.text'
BUG VISUEL CONNU -> Pas de back&front-buffer, donc écrasement des pixels sur empilations graphiques.
- [CPCDOSC+] Ajout des variables dynamiques CPC.SECONDS et CPC.SECONDES
- [CPCDOSC+] OUVRIR/ & OPEN/
* Ajout du paramètre "/LIGNE:" "/LINE:" pour récupérer le contenu d'un fichier à une ligne précise.
* Ajout du paramètre "/TEXTE:" "/TEXT:" pour récupérer le contenu d'un fichier à une ligne précise qui contient la séquences de caractères.
[MODIFICATIONS]
- [RESEAU] OPTIMISATION : Ecriture flux réseau en téléchargement dans une fichier est géré par le module réseau.
- [GUI] Correction du bloc gris dans les msgbox.
- [GUI] Proprieté "COL:1" appliqué par defaut sur les objets.
- [SHELL] Modification des messages d'informations a propos de la commande GUI/.
#######################
##### CPinti Core #####
#######################
[CORRECTIONS]
- [IO] Correction du module de copie de fichier + corruption memoire hasardeuse.
- [IO] Correction crash d'ouverture de dossier en mode fichier.
Le testeur de presence fichiers renvoyait la valeure TRUE, même sur les dossiers.
- [SERVEUR] Correction des modules réseau pour le support TELNET et CCP.
- [SERVEUR] Correction du flux de caractees ASCII random envoyés en trop.
- [CLIENT] Correction des problèmes de buffer overflow lors de la 1ere séquence de caracteres ASCII envoyé.
- [WIN32] Correction des fuites de mémoires dans le loader.
[AJOUT]
- [CLIENT] Support des fichiers binaires HTTP.
- [WIN32] Ajout des fonctionnalités suivantes :
- Fonction TlsFree()
- LeakChecker
- ManagedAlloc
- [SERVEUR] Notification de coupure du serveur aux client connectés.
+ Déconexion de tous les clients connectés.
[MODIFICATIONS]
- [LLVM] Clang/LLVM réactivé pour cette version.
- [WIN32] Nettoyage du code phase 1
- [RESEAU] OPTIMISATION : Support d'ecriture du flux reseau dans un fichier temporaire.
#######################
##### Bugs connus #####
#######################
0) SOURIS QUI S'AFFOLE : C'est un bug du driver dos qui partage le même buffer. La solution :
Provoquer le remplissement du buffer en faisant la même chose... mais plus exagéré.
--> Sur la GUI de Cpcdos, il faut rester appuyer sur une touche du clavier tel que "S" par exempl, et tenter de caller le mieux possible
la souris en bas a gauche pendant 1 à 3 secondes (ça dépend de la vitesse des timers de machines) et le problème est résolu!
1) BUG Garbage collector. Les variables de niveau 1, 2, 3 qui ne se soumettent pas au garbage collector..
-> PROBLEME : Les variables / donnees restent en mémoire même après fermeture du processus.
Ce qui entraine des bugs dans les programmes après une longue utilisation du noyau
car le nombre de variables par niveau et par processus ont un nombre limité de 256.
!!! Cette limitation pour le développement est temporaire!!!
-> SOLUTION : Pour combler ce problème, un petit réflèxe du langage C, à avoir en attendant la prochaine
update, est de libérer manuellement les ressources utilisées via la commande FIX/ ou SET/.
Utilisez donc la commande "FIX/ /S MaVariable" ou "SET/ /S MaVariable" à la fin de votre programme
pour supprimer manuellement la variable et ses données en memoire.
2) BUGS de l'entracelage PNG au format BITMAP brute (+Canal alpha retenu) décallé par la
composante des dernires bits du RGBA 24 & 32 bits.
En mode j'ai rien compris TRADUCTION : Image PNG 24 & 32 bits avec entracelage
est affiché tout en décallé, comme s'il y avait des pixels en plus. VOILA ;-)
3) Interface BIOS APM (Advanced Power Management) ne fonctionne qu'avec les version
v1.2 et plus. Il y a des BIOS qui n'embarquent plus ce système. Mais
fonctionne sur une interface APCI qui n'est pas encore pris en charge par Cpcdos.
Il est donc fort probable qu'après l'execution des commandes SYS/ /ARRETER
votre PC ne s'éteindra jamais. Et qu'avec SYS/ /VEILLE qu'il ne se mettra
jamais en veille/Mode economie.
La commande SYS/ /REDEMARRER ne fonctionne pas sur certain intel de 4eme génération et plus.
4) Le garbage Collector de BITMAPs ne met pas (encore) à jours le nombre de Mega octets
utilisés en haut de la console.
5) Plantage du systeme au changement de bit de couleurs en console avec un OS ayant 1 fenêtre ou plus.
6) Plantage du système si l'utilisateur exécute une instance d'OpenGL / GZE en 16 ou 24 bits.
TEMPORAIREMENT, il faut impérativement utiliser le 32 bits de couleurs en cas de rendu 3D.
Ceci est causé par le blittage RGBA du buffer provenant du moteur qu'il faut convertir a chaud
si ce dernier ne crée par de buffer 16 ou 24 bits.
7) Freeze avec une image rectangulaire au niveau du curseur lors du retour sur la GUI.
8) Satistiques du trafic réseau non actualisées
9) Quelques bugs d'exécution des commandes copier/, supprimer/, renommer/, dossier/
10) L'ecriture d'une machine a Cpcdos en debug RS232 (Port com) ne fonctionne qu'en lecture
SYS/ /DEBUG /COM1 = 2
-----------------------------------------------------------------------------------------------------------
= = = = = = = = = = = = = = = = = = = = = = =
*** Cpcdos OS2.1 BETA 1.1 ***
*** 25 Juillet 2019 For Ultima testers ***
= = = = = = = = = = = = = = = = = = = = = = =
#################
#### En bref ####
#################
--> 10 Ajouts de divers fonctionnalités.
--> 29 corrections importantes.
--> 4 optimisations. (Refonte non comptabilisé)
--> 10 corrections et modifications mineures.
--> Gain de stabilité : +40%
--> Note de stabilité : 14/20
--> Gain de performances : +35%
--> Note de performances : 13/20
--> Probabilités de crash
Réseau : 5%
SHELL : 12%
GUI : 5%
3D : 1%
I/O : 30%
GENERAL : 15%
#############################
##### Cpcdos OSx kernel #####
#############################
[CORRECTIONS]
- [CPCDOSC+] Correction des crashs lors de l'execution d'une fonction dans un nouveau thread depuis
la commande "CMD/".
- [CPCDOSC+] Correction d'un crash du shell lors de la lecture de la ligne "FIN/ BarreProgression".
- [CPCDOSC+] Correction d'un crash provoqué par ce qu'on indique un mauvais nom d'OS
- [DEBUG] Correction des problemes d'affichage des lignes "surbrillantes" en mode d'ecran superieur a 0.
- [SHELL] Correction du problème de chargement du 2eme et 3eme OS due a un OSid qui etait egale
a '0' durant le chargement de l'OS.
- [SHELL] Correction sur le OSid qui etait fixé sur le bank-kernel (OSid:8) après avoir créer un thread à la console.
- [GUI] Correction du problème d'affichage vidéo lors de la restauration d'un OS en exécution arrière plan.
Le bug etait présent pour la plus part des intel avec le GPU intégré, la vidéo s'affichait uniquement
sous le curseur graphique. La solution était de fermer le processus SCI (Et ses threads) de l'OS courant dés
que ce dernier est mis en arrière plan. Et puis re-créer le processus SCI et les threads dés la restauration de l'OS.
- [GUI] Correction des crashs provoqués par l'absence du pointeur bitmap du fond d'ecran.
- [GUI] Correction des crashs provoqués par l'absence du pointeur bitmap de la barre de titre.
- [GUI] Correction des crashs provoqués par l'absence du pointeur buffer bitmap de la barre de titre.
- [GUI] Correction des crashs provoqués par l'absence du pointeur bitmap de survole de boutons.
- [GUI] Correction de crashs lors de l'initialisation de la GUI durant un PING.
La solution est de bloquer le scheduler durant ce moment d'initialisation.
- [GUI] Correction des problemes d'interferences des proprietes entre le checkbox et la progressbar.
- [GUI] Correction des crashs provoqués lors du changement des bits de couleur. Ceci était la cause du gestionnaire de mémoire
qui ne rechargeait plus automatiquement les ressources graphiques comme prévu.
- [GUI] Correction plantage dessin en console, bloquage des routines de dessins et fermeture des threads vidéos lors ce que la GUI se ferme.
- [GUI] Correction plantage du thread de la GUI lors de l'arret du PC.
- [GUI] Correction de l'impossibilité d'interagir avec le premier objet graphique indexé dans une fenêtre.
- [NOYAU] CORRECTION BUG CONNU N°6
"ISR du moniteur bloqué malgré le signal irq(0) lorsque vous utiliser une commande réseau (Client/, Serveur/, Ping/) et un scren mode supérieur à 0
--> Conseillé, exécuter au moins 1 fois une commande réseau en utilisant le mode d'affichage 0
SYS/ /SCREEN 0
ping/ 127.0.0.1"
- [NOYAU] Correction crash du gestionnaire de memoire lors du rechargement des ressources graphiques après le changement
du bit de couleurs.
- [WIN32] Correction des bugs provoqués par la fonction C 'fgets()'
[AJOUTS]
- [SYSTEME] Support OpenGL / GZE (Avancement 30%).
Full compatible VirtualBox, Intel Pentium 4, Celeron, i3, i5, i7, AMD A5, A6, A7, A8.
Il est possible d'executer une infinité d'instance d'OpenGL ou GZE.
Les performances reste donc à l'égard du PC hôte.
- [DEBUG] Ajout du numero de thread (TID) dans les lignes de debuggage ayant la date.
- [NETWORK] Ajout de l'argument /NONET ou /NONETWORK qui permet de desactiver les modules reseaux
- [BOOT] Ajout du module boot screen animé. Il est possible d'inclure une sequence d'images PNG, JPG, BMP
avec un nombre de frames et un bouclage. Ce module est indépendant du module SCI, donc aucune
initialisation des objets graphiques.
+ Ajout (obligatoire) du fichier "OS/{Votre OS}/BOOT/config.cpc"
+ Ajout (optionnel) des images sequentielles de boot
- [GUI] Ajout du sablier qui indique la charge du CPU du module Shell/CpcdosC+ (Le plus gourmand)
- [GUI] Ajout des fonctionnalités de blittage dynamique multi-threaded depuis un tableau de pixels (bitmap).
- [CPCDOSC+] Ajout des fonctions Before_DOS() After_DOS() afin de gerer l'avant et l'apres execution
des programmes dépendant DOS via la commande "DOS/", t-elle que la résolution d'écran.
--> voir KRNL/INIT/DOS.CPC
- [CPCDOSC+] Nouvelle option pour la propriété ".image" du picturebox. Il est possible de définir une adresse
mémoire avec "@0xMonAdress" MAIS maintenant il est aussi possible de préciser un numéro ID bitmap
en mémoire RAM avec "#NumeroBitmap". Cette option réduit les possibilités de crashs. En effet, il est
possible de préiser n'importe quoi comme adresse mémoire et augmenter les probabilités de crashs, alors
qu'un numéro de bitmap, est déjà une image structuré validé. Un message d'erreur apparait si le numéro n'existe pas.
Il est donc conseillé d'utiliser les #BitmapID plutôt d'une @dresse mémoire.
- [CPCDOSC+] SYS/ /BITMAP --> Ajout des parametres
- /GET /PtrByHandle --> Permet d'obtenir le pointeur bitmap depuis son numéro d'handle.
- /GET /IDbyHandle --> Permet d'obtenir l'ID bitmap depuis son numéro d'handle.
- [CPCDOSC+] EXE/ --> Ajout de l'argument /Win32 {programme.exe} qui a le même effet que /PE {programme.exe}..
- [CPCDOSC+] SYS/ --> Ajout de l'argument /Listvar qui permet de lister toutes les variables aux niveau choisis.
- [WIN32] Support de fonctions standard
memcmp(), stricmp(), _stricmp, memmove(), fgets(), fputs(), rand(), setbuf(), fseek(), ftell(), fflush(),
fprintf(), sprintf(), strcat(), strchr(), strcpy(), strncmp(), strtok(), strtol(), time()
trrchr(), srand(), strrchr(), exit(), cexit(), (Onexit() et atexit() [PARTIELLEMENT])
+ Fonctions kernel
EnterCriticalSection(), LeaveCriticalSection(), DeleteCriticalSection(), InitializeCriticalSection()
setjmp(), longjmp()