Notifications
Clear all

Pack de développement basé sur CC65


didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

Bonjour, 

Avec Jérome et Jibé notamment, nous avons commencé à rassembler des éléments permettant de développer -sous windows- pour Oric (et toutes ses déclinaisons) basé sur CC65 (et permettant donc la programmation en c et assembleur).

On a prévu d'ajouter des utilitaires. Sont déjà intégrés OricExplorer, Orichir, Oricutron, Euphoric.

Avez vous des souhaits particuliers ?

🧐

Le repo GitHub sera ouvert a la prochaine ceo-meet. Vous pourrez alors proposer des améliorations si les idées ne sont pas encore partagées / intégrées.

Nota : Pour ceux qui ne connaissent pas, CC65 est un équivalent à OSDK. Au choix des développeurs d'utiliser l'un ou l'autre des kits. A ce jour, je pense que OSDK est préférable pour une implémentation limitée à l'Oric tandis que CC65 permet de réemployer son code pour d'autres plateformes 6502. A titre d'exemples récents : CC65-Chess et Ludo sont 2 programmes réalisés en multi-plateformes)


Quote
xahmol
(@xahmol)
Membre
Inscription: Il y a 8 mois
Posts: 12
 

Google Translate, désolé pour le mauvais français, original en anglais ci-dessous:

Super plan! Serait super!

Mes suggestions:

- inclure des outils OSDK comme TAP2DSK (ou créer / trouver des équivalents);

- bibliothèques standard pour le support du joystick et le support Sedoric inclus (comme https://github.com/iss000/oricOpenLibrary ou équivalent);

- inclure le lecteur MYM d'OSDK (ou l'adaptation 8Bit-Unity CC65 de celui-ci) ou un équivalent pour la lecture de musique;

- regardez également ce que fait 8Bit-Unity ( https://github.com/8bit-Dude/8bit-Unity);

- des outils comme OricExploer et Orichir seraient excellents, un outil Windows pour concevoir des écrans de texte / des cartes comme CharPad pour C64 ou le CD2 de Twilighte natif sur l'Oric, comprend un éditeur de jeux de caractères comme https://forum.defence-force.org/viewtopic. php? t = 1695

- Les scripts d'intégration VSCode seraient bien.

- Ce serait également génial s'il était facile de basculer entre les cibles Atmos et Telestrat (pour la carte Twilighte).

Une correction: mon jeu Ludo en version C n'est pas encore multiplateforme 😉 J'ai des plans là-bas, mais l'original Commodore est BASIC, pas C.

 

Original in English:

Great plan! Would be super!

My suggestions:

- include OSDK tools like TAP2DSK (or create/find equivalents);

- standard libs for joystick support and Sedoric support included (like https://github.com/iss000/oricOpenLibrary or equivalent);

- include MYM player from OSDK (or the 8Bit-Unity CC65 adaption from it) or an equivalent for music playing;

- also have a look on what 8Bit-Unity is doing ( https://github.com/8bit-Dude/8bit-Unity );

- tools like OricExploer and Orichir would be excellent, a Windows tool for designing text screens / maps like CharPad for C64 or Twilighte's CD2 native on the Oric, include a charset editor like https://forum.defence-force.org/viewtopic.php?t=1695

- VSCode integration scripts would be nice.

- Would also be great if it would be easy to switch between Atmos and Telestrat (for the Twilighte board) targets.

One correction: my Ludo game in the C version is not cross platform yet 😉 Have plans there, but the Commodore original is BASIC, not C.

 

 


RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

@xahmol : Thanks for your contribution.

+ I think we'll put some tap/dsk tools, may be not at the launch. Same for MYM players, there're some without any license

+ It's planned to add specific libraries in the devpak so produce a code for several platforms should be easy

- VSCode integration : yes, very good concept, i'm using VSCode but i didn't succedeed in the past in understanding the system of addons. May be some user will provide a .vscode integration tool 

- I saw there're sometimes constraints to use some source codes as both have "GNU General Public License v3.0". Even if this licence is quite cool, I think it's better to remove any constraint linked to use of the pack.

- I know the charset editor but it suffers from using vb6 dll. I hope we'll be able to provide some tools like charpad. it's a very good tool. It's a good idea for some c# programmers.

 

et en francais :

+ Je pense que nous allons mettre des outils tap / dsk, peut-être pas au lancement. Idem pour les lecteurs MYM, il y en a sans licence déjà réalisés

+ Il est prévu d'ajouter des bibliothèques spécifiques dans le devpak, donc produire un code pour plusieurs plates-formes devrait être facile

- Intégration VSCode: oui, très bonne idée, j'utilise VSCode mais je n'ai pas réussi dans le passé à comprendre le système d'addons. Peut-être qu'un utilisateur fournira un outil d'intégration .vscode mais cela ne sera pas réalisé au lancement

- J'ai vu qu'il y avait parfois des contraintes pour utiliser certains codes sources car les deux ont "GNU General Public License v3.0". Même si cette licence est plutôt cool, je pense qu'il vaut mieux supprimer toute contrainte liée à l'utilisation du pack.

- Je connais l'éditeur de charset mais il souffre de l'utilisation de la DLL vb6. J'espère que nous serons en mesure de fournir des outils comme charpad. c'est un très bon outil. C'est une bonne idée pour certains programmeurs c #.

 


RépondreQuote
xahmol
(@xahmol)
Membre
Inscription: Il y a 8 mois
Posts: 12
 
Posté par: @didier_v

- I saw there're sometimes constraints to use some source codes as both have "GNU General Public License v3.0". Even if this licence is quite cool, I think it's better to remove any constraint linked to use of the pack.

Maybe a suggestion to ask the authors like Iss if they would mind removing the license constraint, obviously with a mention from them in the credits? Can not speak for them of course, but I think there is certainly a good chance they would agree 'for the greater good'.

On the constraints on the other tools: while I indeed see their limitations, already that character editor together with CD2 was very valuable to converting my Commodore screens and charsets to the Oric. Obviously I would love those tool to be even better, but as I can not write them myself I can hardly complain. And would be a shame that nobody would know of them just because they are not perfect.

Actually, for converting Commodore screens and charsets to Oric I now basically retrieved everything from the Commodore 128 original with Dirmaster (which is like OricExplorer for the Commodore, but with a lot more functionality) and Charpad on the Commodore side, and did recreate them by hand in that Oric character editor and CD2. Mostly because any attempts to do it in a more automated way proved to be not giving great results, mainly because of the difference between 8 pixels wide chars on the Commodore and 6 pixel wide on the Oric.

En francais:

Peut-être une suggestion pour demander aux auteurs comme Iss s'ils voudraient supprimer la contrainte de licence, évidemment avec une mention d'eux dans le générique? Je ne peux pas parler pour eux bien sûr, mais je pense qu'il y a certainement de bonnes chances qu'ils soient d'accord «pour le plus grand bien».

Sur les contraintes des autres outils: bien que je vois effectivement leurs limites, déjà cet éditeur de caractères avec CD2 était très utile pour convertir mes écrans et jeux de caractères Commodore en Oric. Évidemment, j'aimerais que ces outils soient encore meilleurs, mais comme je ne peux pas les écrire moi-même, je peux difficilement me plaindre. Et ce serait dommage que personne ne les connaisse simplement parce qu'ils ne sont pas parfaits.

En fait, pour convertir les écrans et les jeux de caractères Commodore en Oric, j'ai maintenant essentiellement tout récupéré de l'original Commodore 128 avec Dirmaster (qui est comme OricExplorer pour le Commodore, mais avec beaucoup plus de fonctionnalités) et Charpad du côté Commodore, et je les ai recréés par remettre cet éditeur de personnage Oric et CD2. Surtout parce que toute tentative de le faire de manière plus automatisée s'est avérée ne pas donner d'excellents résultats, principalement à cause de la différence entre les caractères de 8 pixels de large sur le Commodore et 6 pixels de large sur l'Oric.


RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

Bonjour

Je cherche un ami qui pourrait me donner quelques conseils pour éxecuter un makefile. Pour comprendre, je prends le projet CC65-chess et en lisant à gauche et à droite, je comprends que pour executer le makefile intégré, il faut poser quelque part le programme make de gnuwin32 et associer un path.

Ai je bien compris ?

Qui a déjà fait et lancé un makefile ?

Didier


RépondreQuote
xahmol
(@xahmol)
Membre
Inscription: Il y a 8 mois
Posts: 12
 

I run both CC65 and Make under Linux using Windows Subsystem for Linux, never tried a Windows Make implementation.


RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

Thanks Xahmol. Yesterday with JiBe, we succeeded in launching a make process under windows.

Now, we've to finalize pack with a standard makefile profile and writing some documentation.


RépondreQuote
xahmol
(@xahmol)
Membre
Inscription: Il y a 8 mois
Posts: 12
 

Great Didier!
One of the reasons I work under Windows Subsystem for Linux for CC65 is that I could not get Make to work under Windows on my original Commodore 128 project where the base I used was using Make extensively. But of course using Linux for CC65 and Windows for all OSDK and other tools is not ideal.

So your project sound like something that I really was searching for but did not have the time for to do myself. Looking forward to use it.

This post was modified Il y a 1 mois by xahmol

RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

Hello,

Vendredi, j'ai découvert que le pack cc65 pour atmos donnait un résultat infame, inutilisable sans son propre cfg. J'ai pris un peu de retard et entend modifier la librairie de compilation en vue d'obtenir un process plus souple et intégré dans la lib d'origine de cc65. Cet am, j'ai déjà corrigé la lib avec le bon nombre d'octets de synchro. Ca charge dans Euphoric  ;).

A +

 

I wish i'd been able to produce a pack for ceo-meet. Of course, i'm late and i've to modify atmos.lib in order to be able to produce a correct tap file. It seems that in 2016, greg king purpose some modifications and tap header isn't correct (3 sync byte instead of 4), is including a basic launch ...

I'm working on a modified lib i intend to purpose to cc65 org with :

- a good tape header (done)

- choice of start adress (done in cfg file, working on another option with some parameters)

- choice of name file to load (done in cfg file, working on another option with some parameters)

- without any basic instruction like it is at launch (done)

This post was modified Il y a 1 mois 2 times by didier_v

RépondreQuote
Dbug
 Dbug
(@dbug)
Eminent Member Adhérent
Inscription: Il y a 1 an
Posts: 20
 
Posté par: @didier_v

+ Je pense que nous allons mettre des outils tap / dsk, peut-être pas au lancement. Idem pour les lecteurs MYM, il y en a sans licence déjà réalisés

Je ne suis pas l'auteur de Tap2Dsk, c'est Fabrice, comme indiqué sur la page Copyright.

Pour ce qui est du lecteur de MYM, a ma connaissance le seul qui existe sur Oric est le mien, il y a des versions portées sur CC65, comme celle du 8bit guy qui a rajouté sa licence par dessus le fichier:

;
; Copyright (c) 2019 Anthony Beaucamp.  <- NOPE, YOU HAVE ZERO COPYRIGHT DUDE
;
; This software is provided 'as-is', without any express or implied warranty.
; In no event will the authors be held liable for any damages arising from
; the use of this software.
;
; Permission is granted to anyone to use this software for any purpose,
; including commercial applications, and to alter it and redistribute it
; freely, subject to the following restrictions:
;
; 1. The origin of this software must not be misrepresented; you must not
; claim that you wrote the original software. If you use this software in a
; product, an acknowledgment in the product documentation would be
; appreciated but is not required.
;
; 2. Altered source versions must be plainly marked as such, and must not
; be misrepresented as being the original software.
;
; 3. This notice may not be removed or altered from any distribution.
;
; 4. The names of this software and/or it's copyright holders may not be
; used to endorse or promote products derived from this software without
; specific prior written permission.
;
; Original code from OSDK, adapted to CC65 assembler by Anthony Beaucamp
;

l'outil Ym2Mym lui est dérivé du boulot de Marq/Lieves!Tuore & Fit, les modifs sont sur la page de l'outil.

En gros la licence du OSDK est simple, c'est meme sur la page du début en gros tous les morceaux peuvent être utilisé, en partie ou complètement, y compris le code source, a partir du moment ou les auteurs originaux sont cités.

Et c'est la même chose pour les sites web, la documentation, etc... c'est libre d'usage, mais on redonne a César ce qui revient a césar.

Donc voila, si vous voulez vous pouvez prendre n'importe quel morceaux du OSDK, mais vérifiez bien que tout ce que vous mettez dans votre kit de dev CC65 est bien crédité.


RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

@dbug : on n'en est pas là. je suis loin d'avoir une version exploitable. 

J'ai l'habitude de rendre à César ce qui lui appartient, et si besoin de demander l'autorisation avant d'utiliser des trucs, tout est crédité dans le draft en cours (sauf si j'ai fait une erreur, ça peut arriver car je n'ai pas ton niveau de connaissance ni ta rigueur pointilliste)

Le pack est en privé dans le git tant qu'il n'est pas utilisable. c'est pas la peine de crier au loup.

J'ai l'intention de ne rien mettre qui contienne des droits trop compliqués à lire (et il y en a de plus en plus). Si je me casse les pieds à faire un pack (et me fait aider de la collectivité dans mon projet), à le rendre public, ce n'est pas pour ma gloriole ou pour passer du temps à me demander si je vais froisser quelqu'un mais pour aider d'autres personnes. J'ai passé l'âge et vais pas me générer des problèmes relationnels avec Pierre, Paul ou Jacques. Autant changer de crèmerie.

This post was modified Il y a 2 semaines by didier_v

RépondreQuote
Dbug
 Dbug
(@dbug)
Eminent Member Adhérent
Inscription: Il y a 1 an
Posts: 20
 

@didier_v Je ne criait pas au loup, je disais juste que y'avait zéro problème pour utiliser les morceaux du OSDK a condition que les auteurs étaient crédités correctement.

Je ne parlais du 8bit Dude que parce que c'est un exemple récent de truc a ne pas faire.


RépondreQuote
didier_v
(@didier_v)
Estimable Member Redacteur en Chef
Inscription: Il y a 2 ans
Posts: 151
Topic starter  

Je ne parlais du 8bit Dude que parce que c'est un exemple récent de truc a ne pas faire.

A ne pas faire ... je ne sais pas mais j'ai trouvé ses conditions inappropriées. Ce n'est pas ma logique. Et puis ... ces conditions d'utilisations, c'est un peu comme nos attestations de déplacement. C'est long, incompréhensible et au final, ...


RépondreQuote
Dbug
 Dbug
(@dbug)
Eminent Member Adhérent
Inscription: Il y a 1 an
Posts: 20
 
Posté par: @didier_v

je ne sais pas mais j'ai trouvé ses conditions inappropriées. Ce n'est pas ma logique. Et puis ... ces conditions d'utilisations, c'est un peu comme nos attestations de déplacement. C'est long, incompréhensible et au final, .

A priori c'est juste une licence GNU version 3

GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007

https://tldrlegal.com/license/gnu-general-public-license-v3-(gpl-3)

Résumé rapide:
Vous pouvez copier, distribuer et modifier le logiciel, tant que vous indiquez les changements et dates dans les fichiers source et ne modifiez pas les termes de la licence.
Les modifications du code doivent aussi être disponibles et utilisables.

Ca ne me semble pas très contraignant pour le genre de trucs que l'on fait sur Oric, évidement ca rend difficile l'utilisation a titre commercial, mais c'est rarement le but chez nous 🙂

Le OSDK est pas sous licence GPL parce que c'est fait de morceaux disparates qui pour certain avaient déjà leur propre licence d'utilisation 🙂

Le but des licence, ca n'est pas d'emmerder tout le monde, c'est juste pour éviter que le boulot fait par certain soit repiqués par d'autres sans que ca ne bénéficie à la communauté.

 


RépondreQuote
Share: