ugBASIC est arrivé sur Olivetti Prodest PC128!

Cette catégorie traite de développements récents pour 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

__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par __sam__ »

Both the parallel and the animation are very interesting in the scope of games :)
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
spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par spotlessmind1975 »

__sam__ a écrit : 01 nov. 2021 19:18 Both the parallel and the animation are very interesting in the scope of games :)
No doubt! :D

By the way, version 1.5 has just been released, and it contains several fixes to the problems you encountered. Also, as soon as you make the "pull request" I can try to integrate the code into the repository. In addition, ugBASIC now also supports the Commodore VIC-20, including colorful high-resolution graphics, thanks to "behind the scenes" character reprogramming. I don't know if this thing could also be useful to support the MO5 or other Thomson series computers: maybe, let me know.
spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par spotlessmind1975 »

ENGLISH FOLLOWS
:!: VERSION 1.6 PUBLIÉE

J'ai le plaisir d'annoncer que la version 1.6 d'ugBASIC vient de sortir. En plus de contenir de nombreuses corrections de bogues, il génère des compilations beaucoup plus économes en espace et en vitesse. Un résultat possible grâce au soutien des développeurs de la communauté Thomson / Olivetti Prodest (à la fois français et italiens), qui ont activement contribué non seulement au développement de leur plateforme et méthodologies pour générer des exécutables au format "K7" mais aussi, et surtout, à l'amélioration générale du langage et du compilateur.

Parmi les nouveautés de cette version nous avons le support au "flip" des images au moment de la compilation (FLIP X, FLIP Y), à la superposition (OVERLAYED) et à la transparence (TRANSPARENCE), la possibilité de sauvegarder des portions de l'écran (GET IMAGE ), les fonctions pour obtenir des couleurs et des nuances pour chaque mode graphique/textuel (surtout pour ceux qui ont une palette programmable), les opérateurs de multiplication et de division "en place" et, enfin, la fonction pour calculer le distance géométrique entre deux points (DISTANCE).

Le langage est enrichi de la construction SELECT CASE, qui permet de représenter des chaînes de contrôle complexes de manière lisible, et les fonctions/procédures peuvent désormais utiliser des images et des buffers comme paramètres.

Côté optimisation, on a la possibilité de définir le type de données de base comme "BYTE", réduisant l'occupation mémoire de 50% avec les mêmes sources, de définir le contenu des tableaux au moment de la compilation, de définir automatiquement des identifiants incrémentaux pour ressources graphiques, pour effectuer des divisions telles que des décalages implicites et la possibilité de réduire la file d'attente des tâches, pour économiser de précieux octets en cas de multitâche.

Voilà, je pense que c'est ça.
La version la plus récente peut être trouvée en cliquant ici :
https://ugbasic.iwashere.eu/

:!: VERSION 1.6 RELEASED

I am happy to announce that ugBASIC version 1.6 has just been released. In addition to containing many bug fixes, it generates much more space-efficient and speed-efficient executables. A result possible thanks to the support of the developers of the Thomson / Olivetti Prodest community (both French and Italian), which actively contributed not only to the development of their platform and methodologies for generating executables in "K7" format but also, and above all, to the general improvement of the language and the compiler.

Among the novelties of this version we have the support to the "flip" of the images at the time of compilation (FLIP X, FLIP Y), to the overlay (OVERLAYED) and to the transparency (TRANSPARENCY), the possibility to save portions of the screen (GET IMAGE ), the functions to obtain colors and shades for each graphic / textual mode (especially for those that have a programmable palette), the multiplication and division operators "in place" and, finally, the function to calculate the geometric distance between two points (DISTANCE).

The language is enriched by the SELECT CASE construct, which allows complex control chains to be represented in a readable way, and functions / procedures can now use images and buffers as parameters.

On the optimization side, we have the possibility to define the basic data type as "BYTE", reducing memory occupation by 50% with the same sources, to define the content of the arrays at the time of compilation, to automatically define incremental identifiers for graphic resources, to carry out divisions such as implicit shifts and the possibility to reduce the task queue, to save precious bytes in case of multitasking.

I think that's all.
The most updated version can be found by clicking here:
https://ugbasic.iwashere.eu/
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

Bonjour,

Pour débuter, j'ai compilé en ligne de commande et testé dans DCMOTO un petit exemple fourni qui dessine des cercles en random pour un MO5
cercle.jpg
cercle.jpg (225.77 Kio) Consulté 3316 fois
Existe-t-il actuellement un IDE avec la coloration syntaxique en lien ugBASIC ?

@Daniel, est-ce que DCMOTO peut être lancé en ligne de commande avec comme paramètre le fichier .k7 ? (dans l'idée de le lancer en automatique à partir d'un IDE aprés la compilation)

Encore merci à Marco et aux contributeurs pour cet outil plein de perspective.
Jean-Luc
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par Daniel »

ZamZam a écrit : 29 nov. 2021 17:25 @Daniel, est-ce que DCMOTO peut être lancé en ligne de commande avec comme paramètre le fichier .k7 ?
Ce n'est pas possible actuellement et ce n'est pas envisagé.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par __sam__ »

ZamZam a écrit : 29 nov. 2021 17:25 Existe-t-il actuellement un IDE avec la coloration syntaxique en lien ugBASIC ?
Moi j'utilise NotePad++ pour l'édition. Ca colorie un peu, et comme il est customisable il y aurait moyen d'avoir un truc très joli qui appelle le compilo (je ne l'ai pas encore fait).
Sans titre.png
Sans titre.png (68.44 Kio) Consulté 3278 fois
Pour l'execution +/- automatique dans DCMoto je génère toujours le même fichier K7 et lorsque je relance DCMoto ou que je redémarre le MO6 émulé avec un démarrage à froid (touche Arrêt Défil), DCMoto réouvre le fichier K7, donc repart sur le dernier fichier compilé.
Sans titre.png
Sans titre.png (22.96 Kio) Consulté 3278 fois
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
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

Merci _Sam_

Il faut installer l'extension NPPExec

nppexec_1.jpg
nppexec_1.jpg (117.39 Kio) Consulté 3267 fois

En lancant Execute NppExec Script et en tapant les commandes suivantes (j'ai modifié un peu le nom de l'exe de compilation)

nppexec_2.jpg
nppexec_2.jpg (37.63 Kio) Consulté 3267 fois

En utilisant Npp Advanced Options on peut ajouter la macro créée dans le menu Macro

nppexec_3.jpg
nppexec_3.jpg (116.26 Kio) Consulté 3267 fois

Macro personnalisée dans le menu Macro

nppexec_4.jpg
nppexec_4.jpg (39 Kio) Consulté 3267 fois

Lorsque que l'on clique sur cette option du menu alors cela lance la compilation comme visible dans la console

nppexec_5.jpg
nppexec_5.jpg (37.74 Kio) Consulté 3267 fois

Pour la coloration syntaxique, je vais regarder
Jean-Luc
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par __sam__ »

Et avec ctrl-F6 tu peux relancer le script d'avant, dont recompiler le programme sans aller dans les menus.

Pour aller plus loin, je suppose que des outils comme AutoIT pourraient piloter DCmoto pour qu'il reboot sur le fichier K7 nouveau.

Bref, il y a très probablement pas mal de possibilités avec tous ces outils.
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
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

J'ai installé AutoIt et dans un fichier AutoIt nommé dcmoto.au3, j'ai mis

Code : Tout sélectionner

Run("C:\emulateur\dcmoto_20211030\dcmoto_20211030.exe")
et dans le script NppExec j'ai mis

Code : Tout sélectionner

npp_save
CD $(CURRENT_DIRECTORY)
ugbcmo5.exe $(FILE_NAME) -o tst.k7
CD C:\emulateur\dcmoto_20211030\
C:\Program Files (x86)\AutoIt3\AutoIt3.exe D:\dcmoto.au3
cela lance bien DCMOTO à partir de NotePad++ mais pour l'instant je n'arrive par à simuler la saisie au clavier pour le LOADM pour lancer le programme dans DCMOTO
Jean-Luc
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par __sam__ »

Avec AutoIt tu dois pouvoir appeler le menu "Simuler le clavier" de DCMoto et ainsi faire exécuter ce que tu veux à DCMoto je pense.
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
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

En créant un fichier simultext.txt avec le contenu suivant :

Code : Tout sélectionner

LOADM"",,R
et en modifiant le script AutoIt dcmoto.au3 avec le contenu suivant :

Code : Tout sélectionner

Run("C:\emulateur\dcmoto_20211030\dcmoto_20211030.exe")
Sleep(500)
; Permet de lancer la fenetre Simuler le clavier
WinMenuSelectItem("[active]", "", "&Fichier", "Simuler le clavier...")
; Permet d'ouvrir la fenetre du choix du fichier de simulation clavier
Opt('SendKeyDelay',500)
Send("{TAB}")
Send("{ENTER}")
Send("D:\simultext.txt")
Send("{TAB}")
Send("{TAB}")
Send("{ENTER}")
; Permet de lancer la simulation du clavier et de faire un LOADM"",,R
Send("{TAB}")
Send("{ENTER}")
WinClose("[active]")
cela permet de lancer le programme compilé dans DCMOTO de façon automatiser lorsqu'on lance la compilation dans NotePad++
Jean-Luc
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par __sam__ »

C'est cool :)
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
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

Pour le Commodore 64 avec l'émulateur VICE
J'ai fait le code suivant dans NotePad++ :

Code : Tout sélectionner

npp_save
CD $(CURRENT_DIRECTORY)
ugbcc64.exe $(FILE_NAME) -o tst.tap
CD C:\emulateur\GTK3VICE-3.5-win64\bin\
C:\Program Files (x86)\AutoIt3\AutoIt3.exe D:\vice.au3
et le fichier de lancement de l'émulateur est réduit car on peut le lancer en ligne de commande avec le fichier compilé et en autostart

Code : Tout sélectionner

Run("C:\emulateur\GTK3VICE-3.5-win64\bin\x64sc.exe -autostart D:\tst.tap")
Comme pour le MO5, il faut adapter ces scripts avec la configuration de son poste

J'ai essayé le compilateur pour ZxSpectrum mais il génère une erreur à la compilation
Jean-Luc
Avatar de l’utilisateur
ZamZam
Messages : 195
Inscription : 09 nov. 2020 16:10
Localisation : TOUL (54200) Meurthe & Moselle

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par ZamZam »

Pour l'Atari 800XL et l'émulateur Altirra
Le code pour NotePad++

Code : Tout sélectionner

npp_save
CD $(CURRENT_DIRECTORY)
ugbcatarixl.exe $(FILE_NAME) -o tst.xex
CD C:\emulateur\Altirra-4.00\
C:\Program Files (x86)\AutoIt3\AutoIt3.exe D:\atarixl.au3
Le code pour le script AutoIt, comme pour l'émulateur Vice, on peut le lancer en ligne de commande le fichier compilé dans l'émulateur Altirra

Code : Tout sélectionner

Run("C:\emulateur\Altirra-4.00\Altirra64.exe /RUN D:\tst.xex")
Avant de continuer sur les autres, il faudrait "organiser" les répertoires de travail, les compilations et les appels des émulateurs pour avoir un tout cohérent.
Jean-Luc
spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

Re: ugBASIC est arrivé sur Olivetti Prodest PC128!

Message par spotlessmind1975 »

[english follows]

Tout d'abord, merci à tous pour l'enthousiasme avec lequel vous utilisez ugBASIC. Vous aussi, comme moi, cherchez un moyen de le rendre productif. Les idées que j'ai lues dans les différents échanges sont vraiment intéressantes et innovantes ! :D

J'en profite pour signaler que ce soir j'ai sorti la première version d'un outil qui devrait faciliter le développement avec ugBASIC. Il s'agit d'ugBASIC IDE, un software sous Windows qui il simplifie le download et l'installation des différents software nécessaires au développement d'un ou plusieurs rétrocalculateurs, y compris les éventuelles mises à jour, le tout à portée de clic. En plus d'offrir une mise en évidence syntaxique, plusieurs fenêtres, un historique des fichiers, une aide en ligne et une intégration pour le diagnostic des erreurs, vous pouvez exécuter votre programme directement sur l'un des émulateurs pris en charge.

Concernant l'intégration avec DC MOTO, comme vous pouvez le voir, je rencontre les mêmes obstacles que vous rencontrez. Mais je suis heureux qu'au moins vous, vous ayez réussi à aller de l'avant avec l'intégration d'AutoIt. Pour le moment, je l'ai inséré mais désactivé, car je n'ai pas encore pu créer dynamiquement un script qui fonctionne quelle que soit la langue.

Vous pouvez trouver le nouvel IDE en cliquant ici :
https://spotlessmind1975.itch.io/ugbasic-ide

First of all, thank you all for the enthusiasm with which you are using ugBASIC. You too, like me, are looking for a way to make it productive. The ideas that I have read in the various exchanges are really interesting and innovative! :D

I take this opportunity to report that this evening I released the first version of a tool that should facilitate development with ugBASIC. This is ugBASIC IDE, a software under Windows that simplifies the download and installation of the various software necessary for the development of one or more retrocomputers, including any updates, all just a click away. In addition to offering syntactic highlighting, multiple windows, file history, online help, and an integration for error diagnostics, you can have your program run directly on one of the supported emulators.

Regarding the integration with DC MOTO, as you can see, I am encountering the same obstacles that you are encountering. But I am glad that, at least you, you have managed to move forward with the integration of autoIt. At the moment, I have inserted it but it is disabled, as I have not yet been able to dynamically build a script that works regardless of the language.

You can find the new IDE by clicking here:
https://spotlessmind1975.itch.io/ugbasic-ide
Répondre