Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » C.Basic Projets
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

C.Basic Projets

Posté le 30/04/2017 11:08

Hello, everyone.

I am Sentaro21, and I am developing C.Basic, a Basic interpreter that allows high-speed execution of Basic programs while maintaining compatibility with genuine Casio Basic.

Here is an English site, by Krtyski, about the C.Basic project (I helped him with the translation, but it's still unfinished) :
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html

The articles and various programs from this site served as a reference to evaluate the compatibility level of C.Basic. Results were not good every time I tested them, but compatibility increased over time.

These programs have been ported experimentally. Many thanks to their authors.

Block Tower (C.Basic version)
https://pm.matrix.jp/CB/CB_BlockTower.zip

Sudoku (C.Basic version)
https://pm.matrix.jp/CB/CB_Sudoku.zip

Maze Generator (C.Basic version)
https://pm.matrix.jp/CB/CB_MazeGene.zip

Graph 3D (C.Basic version)
https://pm.matrix.jp/CB/CB_Graph3D.zip

TokiTori (C.Basic version 25/11/2018)
https://pm.matrix.jp/CB/CB_Tokitori.zip
(added Save/Load feature)

Ice slider (C.Basic version 25/11/2018)
https://pm.matrix.jp/CB/CB_IceSlider.zip
(added Save/Load feature)

Clonelab (C.Basic version 25/11/2018)
https://pm.matrix.jp/CB/CB_Clonlab.zip
(added Save/Load feature)

Arkenstone (C.Basic version 25/11/2018)
https://pm.matrix.jp/CB/CB_Arkenstone.zip
(added Save/Load feature)

Aventura (C.Basic version 25/11/2018)
https://pm.matrix.jp/CB/CB_Aventura.zip
(added Save/Load feature)

Electricity (C.Basic version 10/2/2019)
https://pm.matrix.jp/CB/CB_Electric.zip
(added Save/Load feature)

Here are examples of programs that reach near-C performance :

BallGame (C.Basic version)
https://pm.matrix.jp/CB/CB_BallGame.zip

Asprin (C.Basic version)
https://pm.matrix.jp/CB/CB_Aspirin.zip


The C.Basic project is still yet to be completed, thus I would like to get your feedback.

This is the latest version of C.Basic 2.47 beta for Graph 35+USB/35+EII/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC247beta02.zip (updated 11/12/2023)

This is the latest version of C.BasicCG 1.47 beta for Graph90+E/fx-CG10/20/50:
https://pm.matrix.jp/CB/CBASICCG147beta02.zip (updated 11/12/2023)

C.Basic manuals
https://gitlab.com/sentaro21/cbasic

Currently C.Basic exists thanks to this site.
Thank you very much.


Précédente 1, 2, 3 ··· 9, 10, 11, 12, 13, 14, 15 ··· 20 ··· 30, 31, 32 Suivante
Shadow15510 Hors ligne Administrateur Points: 5499 Défis: 18 Message

Citer : Posté le 12/05/2019 09:52 | #


For the polygon, I don't understand, I would like to draw a green polygon, not a transparency polygon…
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 12/05/2019 10:13 | # | Fichier joint


@Shadow15510
Oh,sorry!
It is simple if there is no rotation.
Green _FillPolygon &Mat X,&Mat Y,vertices

Matrices can also be LIST.
Green _FillPolygon &List 1,&List 2,vertices


This is _FillPolygon sample program using one colors.
[Fichier joint]ML_Poly1.g3m

_FillPolygn seems to have a bug in the ML library.
It is not good at drawing polygons with many vertices.
It works well if it is less than the square.

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Shadow15510 Hors ligne Administrateur Points: 5499 Défis: 18 Message

Citer : Posté le 12/05/2019 10:17 | #


I use ML my polygon is a trapezium with 4 vertices

Thank you very much !
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 12/05/2019 10:23 | #


Ahhhh,very sorry!
Fixed _FillPolygon enbug.
Please download again.
https://pm.matrix.jp/CB/CBASICCG084.zip

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Shadow15510 Hors ligne Administrateur Points: 5499 Défis: 18 Message

Citer : Posté le 12/05/2019 10:25 | #


Yeah ! Thanks a lot !! You save my game !!
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 14/05/2019 15:14 | #


Here is new updated version.

for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC199beta.zip
-Fixed the bug that clear display after the Mat and List were paused.

-Changed specification of text conversion of "Disps" command to add [CR][LF] code.
(Previous = compatible with CG series) Disps
(New specification) Disps+[CR]+[LF]

-Added the key combination that easy to move between storage memory and main memory (Main Memory).
[SHIFT]-[F5] to change Strage/SD <-> main memory(Main Memory).
-Added the specification that up to 7 favorite files can be registered separately for storage memory and SD ans main memory (Main Memory).

-Fixed the bug that debug mode is not canceled when break and then edited. (bugs remaining.)

-Added Rotate&Zoom option of _Rectangle/_Polygon command.
(format)_Rectangle x1,y1,x2,y2, border_width, border_color, fill_color[,chance/brend%][,angle][,center_X][,center_Y][,zoom%]
(format)_Polygon *ary_x, *ary_y, vertices, color[,chance/brend%][,angle][,center_X][,center_Y][,zoom%]

If [center_X][center_Y] are omitted, The center of the drawn image is specified.

(example ) see "C.Basic_sample/ML_sample" folder.

-Changed "MCS" notation to "Main Memory".


for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG085.zip
-Fixed the bug that clear display after the Mat and List were paused.

-Added the specification that up to 7 favorite files can be registered separately for storage memory and Main Memory.

-Changed specification of text conversion of "Disps" command to add [CR][LF] code.
(Previous = compatible with CG series) Disps
(New specification) Disps+[CR]+[LF]

-Fixed the bug that debug mode is not canceled when break and then edited. (bugs remaining.)

-Changed "MCS" notation to "Main Memory".

-Added the key combination that easy to move between storage memory and Main Memory.
[SHIFT]-[F5] to change Strage <-> Main Memory).

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Disperseur Hors ligne Membre Points: 1830 Défis: 1 Message

Citer : Posté le 14/05/2019 20:46 | #


@Sentaro: What is the key association that allows you to enter the pressed key number ?
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 15/05/2019 13:03 | #


Is that about this?
[SHIFT]-[3]
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Disperseur Hors ligne Membre Points: 1830 Défis: 1 Message

Citer : Posté le 15/05/2019 17:47 | #


Yes It's that. Thanks
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 16/05/2019 06:31 | #


I'm sorry every time. A bug was found.
This is a fixed update.

1.99.3beta for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC199beta.zip (18/5/2019 updaed)
-Fixed the bug that debug mode is not canceled when break and then edited with Help On.
-Fixed the bug that exiting without go to editor when [AC]break stopping sub-program and press [EXIT](enbug in 1.98)
-Fixed the bug that was unable to switch favorites list when Max Mem Mode was ON.
-Changed specification that the favorites list display from the bottom when move Storage/SD from Main Memory.
-Fixed the bug that variable display after the Mat and List were paused.(enbug in 1.99)

0.85alpha for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG085.zip (19/5/2019 updaed)
-Fixed the bug that debug mode is not canceled when break and then edited with Help On.
-Fixed the bug that exiting without go to editor when [AC]break stopping sub-program and press [EXIT](enbug in 0.82)
-Fixed the bug that caused a system error due to lack of stack in pop-up display.
-Changed specification that the favorites list display from the bottom when move Storage/SD from Main Memory.
-Fixed the bug that variable display after the Mat and List were paused.(enbug in 0.85)

Ajouté le 19/05/2019 à 02:46 :
Since the bugs still remained, I 'm fixing it.
Please download again.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Disperseur Hors ligne Membre Points: 1830 Défis: 1 Message

Citer : Posté le 19/05/2019 08:48 | #


I'll do that
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 19/05/2019 14:24 | #


Thanks
There may still be bugs.
Please report if you find a bug.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Disperseur Hors ligne Membre Points: 1830 Défis: 1 Message

Citer : Posté le 25/05/2019 11:48 | #


Sorry Sentaro but I can't draw a filled polygon. What is the syntax that you'll use to do that ?
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 25/05/2019 14:33 | #


This is simple sample.
'// FillPolygon
[[60,75,70,50,45]]->Mat X.L  '// The matrix must be in integer (Long)
[[20,30,45,45,30]]->Mat Y.L  '// The matrix must be in integer (Long)
Screen.G
_ClrVram
_FillPolygon &Mat X,&Mat Y,5,1,30
_DispVram


Other sample program,
Please see in the zip archive.(CBCG085.zip)
g3m sample is
ML_sampleCG/ML_Poly.g3m
ML_sampleCG/ML_Poly5.g3m

g1m sample is
CBasic_sample/ML_sample/POLY.txt
CBasic_sample/ML_sample/MLPOLY1.g1m


Ajouté le 26/05/2019 à 14:21 :
Here is new updated.

1.99.4 beta for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC199beta.zip
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable.
-Added moved to the top of the folder list when pressing the [.]Key of the file list.

0.86 alpha for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG086.zip
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable.
-Added moved to the top of the folder list when pressing the [.]Key of the file list.
-Fixed the bug that the external font was disabled in the FX(6x8 font) option of the Text command.

Please see this folder
/CBasic_sample/GRAPHXY_sample/

Ajouté le 30/05/2019 à 06:52 :
Here is new updated.
If there is no problem with this update, I will change these to 2.00 and 1.00beta.

1.99.5 beta for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC199beta.zip
-Changed specification that move to the "~*.*" file name when pressing the [.]Key of the file list.
-Changed specification that move to the top of the folder list when pressing the [EXP(x10)]Key of the file list.

0.86 alpha for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG086.zip
-Fixed the fatal bug that caused a system error when startup overclocking is required for CG10/20.
This was enbug 0.85 (-Fixed the bug that caused a system error due to lack of stack in pop-up display.)

-Changed specification that move to the "~*.*" file name when pressing the [.]Key of the file list.
-Changed specification that move to the top of the folder list when pressing the [EXP(x10)]Key of the file list.
-Fixed the bug that the status area was displayed by ? command in full screen mode.

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Mactul Hors ligne Membre Points: 699 Défis: 0 Message

Citer : Posté le 03/06/2019 18:10 | #


Hi sentaro,
I have a problem with C-Basic,
I have created a big program: ≈10 000 bits
this program run good with C-Basic and with Basic Casio
I can upload it, with the editor of Basic Casio,
but in C-Basic, now I have always one error, when I upload it: "Memory full error"
I specify that I work in Main memory and I have 20 000 bits free

Ajouté le 03/06/2019 à 19:11 :
I have download the new version,
I have the impression that the problem has disappeared
with a bit of luck, it's really
Mes programmes
Cliquer pour enrouler

Venez me rejoindre sur mon nouveau serveur Discord dédié a la programmation sur toutes les plateformes
https://discord.gg/bzfymHQ

Venez vous instruire, dans ce magnifique cours sur les Intelligences Artificielles que j'ai créé:
http://reseaux-neurones-a--z.ml/
Faites apprendre des choses à une machine, faites reconnaître à un ordi des images...
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 04/06/2019 09:24 | #


The previous version had some problems.
It is good that the problem does not appear in the latest version.

Ajouté le 08/06/2019 à 09:46 :
A bug was found by Aventura@Drak.
and,
The bug in Getkey1 has been fixed thanks to @Lephenixnoir

1.99.6 beta for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC199beta.zip (re-uploaded)
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable.(fixed enbug.)
-Fixed the bug that Getkey1 command freeze on SH3.

0.86 alpha for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG086.zip (re-uploaded)
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable.(fixed enbug.)

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Mactul Hors ligne Membre Points: 699 Défis: 0 Message

Citer : Posté le 08/06/2019 12:24 | #


so far, it works

thank you Sentaro, your project is really good
Mes programmes
Cliquer pour enrouler

Venez me rejoindre sur mon nouveau serveur Discord dédié a la programmation sur toutes les plateformes
https://discord.gg/bzfymHQ

Venez vous instruire, dans ce magnifique cours sur les Intelligences Artificielles que j'ai créé:
http://reseaux-neurones-a--z.ml/
Faites apprendre des choses à une machine, faites reconnaître à un ordi des images...
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 08/06/2019 12:54 | #


Thanks very much.


Ajouté le 15/06/2019 à 08:10 :
Thanks very much to all users who use C.Basic.
Here are new updated version.

2.00 beta for Graph 35+USB/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC200beta.zip

1.00 beta for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG100beta.zip

-Added the exception handling commands Try-Except-TryEnd and eliminated IsError().
(Format) Try <program>
Except error code 1
<Processing for error1>
Except error code 2
<Processing for error2>
TryEnd
If there is no error in <program>, processing moves after TryEnd.
If error1 occurs, processing will move after TryEnd after executing <Process for error1>.
If error2 occurs, processing will move after TryEnd after executing <Process for error2>.
When Error3 occurs, an error pop-up appears because there is no corresponding Except.

(Format) Except
If there is no Except corresponding to an error, "Error" is executed because Except with no argument corresponds to all errors.

(Example) Try 3*4+
Except 1
"Syntax Error"
TryEnd
"Syntax Error" is executed, since SyntaxError error code is 1.

(Example) Try 3*4/0
Except 1
"Syntax Error"
Except 40
"Divide by Zero"
TryEnd
“Divide by Zero”is executed, since division by zero error code is 40.

(Example) Try 3*4/0
Except 1
"Syntax Error"
Except
"Error"
TryEnd
If there is no Except corresponding to an error, "Error" is executed because Except with no argument corresponds to all errors.

The sample program is in CBasic_sample/Try_Except.
Refer to ErrorCode_List.txt for the error code.


-Fixed the bug of conversion to text where the CR was omitted even if a code from 0x01 to 0x2F other than 0x0C (Disps).

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Krevo_ Hors ligne Maître du Puzzle Points: 412 Défis: 2 Message

Citer : Posté le 07/07/2019 16:43 | #


Just downloaded Tentacules, it's blazing fast !!!!
But i've got a little error with first instruction ViewWindow (so I had to remove this instruction), please see here

Casio Basic Web Interpreter, c'était le basic Casio dans votre navigateur web !
Sentaro21 Hors ligne Membre Points: 877 Défis: 0 Message

Citer : Posté le 20/07/2019 10:41 | #


Thanks Krevo_

Here are new updated version.
Newly supports Graph 35+E II.
Some abnormal behavior was seen in OS 3.00
No abnormal behavior is found in OS 3.10.
This update targets 3.10.

2.10 beta for Graph 35+USB/35+EII/75/85/95 (SD)
https://pm.matrix.jp/CB/CBASIC210beta.zip
-Added support Graph 35+E II.
However, hidden memory is halved from 256KB to 128KB. Other specifications are the same.

-Added specification that the initial root folder can be changed.
You can set the initial root folder to the root or current folder in setup.
(Note) Previous FX series are always root folder.

-Added support for folder renaming.
-Fixed the bug that could not be accessed by Save/Load command when the program was executed in main memory.
-Fixed the bug that cooperation between Plot command and Line command failed.
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable again.


1.10 beta for Graph90+E/fx-CG10/20/50
https://pm.matrix.jp/CB/CBASICCG110beta.zip
-Added specification that the initial root folder can be changed.
You can set the initial root folder to the root or current folder in setup.
-Fixed the bug that could not be accessed by Save/Load command when the program was executed in main memory.
-Fixed the bug that cooperation between Plot command and Line command failed.
-Fixed the drawing bug of Graph(X,Y) with argument of TTheta variable again.


Ajouté le 22/07/2019 à 14:19 :
There was a bug remain in Graph(X, Y).
Please download again.
Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Captainluigi Hors ligne Membre Points: 815 Défis: 1 Message

Citer : Posté le 22/07/2019 17:47 | #


Hi .
I found a bug that wasnt in before version ( i am on 2.0.0 )
The Isexist( fonction doesnt detect files if the name doesnt contain at the end a letter : if used with 1.96 version a save2.sav file i created , detected and now doesnt detect ...
Les bons artistes copient, les grands artistes volent. Picasso
Synthwave/Musique électro 80s sur ma chaine Youtube

Jouez à Mario sans arrêt sur votre Casio !
Cliquez pour découvrir
Cliquez pour recouvrir
Précédente 1, 2, 3 ··· 9, 10, 11, 12, 13, 14, 15 ··· 20 ··· 30, 31, 32 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 73 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd