Restarted branch because of accidental email leak
|
@ -0,0 +1,531 @@
|
|||
# Credit
|
||||
|
||||
C.Basic would not be possible without the following open source softwares and websites. We express our greatest appreciation to these authors.
|
||||
|
||||
We tried our best to gather the license information of all materials we used, but unfortunately we cannot retrieve some of them due to inaccessibility at the time of writing this CREDIT.md or difficulty in contacting authors for further confirmation.
|
||||
|
||||
If you are one of the copyright holders of these materials and would like to inform us of your license information, please open a issue ticket to do so. We apologize for the inconveniences caused.
|
||||
|
||||
### Lead developer
|
||||
|
||||
* Sentaro21
|
||||
|
||||
### Application developers
|
||||
|
||||
* Colon - Font File Manager, Font Editor, System Manager
|
||||
* Tsuru - Font Editor
|
||||
|
||||
### Documentation helpers
|
||||
|
||||
* Krtyski - Japanese documentation
|
||||
* Lephenixnoir - French documentation
|
||||
* CalcLoverHK - English and Chinese documentation, C.Basic Wiki
|
||||
|
||||
# Website and documentation
|
||||
|
||||
## Katakana font
|
||||
|
||||
[Homepage (archived)](https://web.archive.org/web/20160408224416/http://baticadila.dip.jp/fx_sdk_005.html)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Adapted from _グラフ関数電卓 fx-9860G SDK(グラフィック表示)_ by Baticadila, 2013.
|
||||
|
||||
</details>
|
||||
|
||||
## e-Gadget
|
||||
|
||||
[Homepage](https://egadget.blog.fc2.com)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Copyright (c) 2013 Krtyski/e-Gadget - プログラム関数電卓. All rights reserved.
|
||||
|
||||
</details>
|
||||
|
||||
## fxReverse
|
||||
|
||||
[Homepage](https://bible.planet-casio.com/simlo/fxreverse/fxReverse2.pdf)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Copyright (c) 2008 Andreas Bertheussen, Simon Lothar.
|
||||
|
||||
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-nd/3.0.
|
||||
|
||||
</details>
|
||||
|
||||
# Software and program
|
||||
|
||||
## fx-9860G SDK
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Copyright (c) 2006 CASIO Co., Ltd. All right reserved.
|
||||
|
||||
</details>
|
||||
|
||||
## miniSDK
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Copyright (c) 2011 Simon Lothar. All right reserved.
|
||||
|
||||
</details>
|
||||
|
||||
## WSC and FVM
|
||||
|
||||
[GitHub page](https://github.com/merrymercy/WSC-and-FVM)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Mercy
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
</details>
|
||||
|
||||
## Sprintf
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Excerpt from snprintf.cpp:
|
||||
```
|
||||
/*
|
||||
* Copyright Patrick Powell 1995
|
||||
* This code is based on code written by Patrick Powell (papowell@astart.com)
|
||||
* It may be used for any purpose as long as this notice remains intact
|
||||
* on all source code distributions
|
||||
*/
|
||||
```
|
||||
</details>
|
||||
|
||||
## MonochromeLib
|
||||
|
||||
[Homepage](https://www.planet-casio.com/Fr/logiciels/voir_un_logiciel_casio.php?showid=86)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Excerpt from MonochromeLib.h:
|
||||
```
|
||||
/*************************************************************/
|
||||
/** MonochromeLib - monochrome graphic library for fx-9860G **/
|
||||
/** MonochromeLib is free software **/
|
||||
/** **/
|
||||
/** @author Pierre "PierrotLL" Le Gall **/
|
||||
/** @contact legallpierre89@gmail.com **/
|
||||
/** **/
|
||||
/** @file MonochromeLib.h **/
|
||||
/** Include header for MonochromeLib **/
|
||||
/** **/
|
||||
/** @date 11-22-2011 **/
|
||||
/*************************************************************/
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
## Gauss-Kronrod Quadrature
|
||||
|
||||
[Reference](https://community.casiocalc.org/topic/7637-cbasic-international-release/page-14#entry62978)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Adapted from the HP41 INTDIFFEQ module by Jean-Marc Baillard (https://hp41programs.yolasite.com), by acapde @ Universal Casio Forum, 2020. Adapted with permission.
|
||||
|
||||
</details>
|
||||
|
||||
## Ptune2
|
||||
|
||||
[Homepage](https://pm.matrix.jp/ftune2e.html)
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
GNU General Public License
|
||||
|
||||
_Version 2, June 1991_
|
||||
_Copyright © 1989, 1991 Free Software Foundation, Inc.,_
|
||||
_51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA_
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
### Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: **(1)** copyright the software, and
|
||||
**(2)** offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
### TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
**0.** This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The “Program”, below,
|
||||
refers to any such program or work, and a “work based on the Program”
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term “modification”.) Each licensee is addressed as “you”.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
**1.** You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
**2.** You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
* **a)** You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
* **b)** You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
* **c)** If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
**3.** You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
* **a)** Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
* **b)** Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
* **c)** Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
**4.** You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
**5.** You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
**6.** Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
**7.** If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
**8.** If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
**9.** The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and “any
|
||||
later version”, you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
**10.** If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
### NO WARRANTY
|
||||
|
||||
**11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
**12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
### How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the “copyright” line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w` and `show c` should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w` and `show c`; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a “copyright disclaimer” for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
||||
|
||||
</details>
|
||||
|
||||
## QSort
|
||||
|
||||
<details><summary>License</summary>
|
||||
|
||||
Modified BSD License
|
||||
|
||||
_Copyright © 1992, 1993, The Regents of the University of California_
|
||||
_All rights reserved._
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of the University nor the
|
||||
names of its contributors may be used to endorse or promote products
|
||||
derived from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
</details>
|
117
LICENSE
|
@ -1,117 +0,0 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and modification follow.
|
||||
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author
|
||||
|
||||
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice
|
|
@ -0,0 +1,336 @@
|
|||
GNU General Public License
|
||||
==========================
|
||||
|
||||
_Version 2, June 1991_
|
||||
_Copyright © 1989, 1991 Free Software Foundation, Inc.,_
|
||||
_51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA_
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
### Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: **(1)** copyright the software, and
|
||||
**(2)** offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
### TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
**0.** This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The “Program”, below,
|
||||
refers to any such program or work, and a “work based on the Program”
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term “modification”.) Each licensee is addressed as “you”.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
**1.** You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
**2.** You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
* **a)** You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
* **b)** You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
* **c)** If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
**3.** You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
* **a)** Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
* **b)** Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
* **c)** Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
**4.** You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
**5.** You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
**6.** Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
**7.** If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
**8.** If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
**9.** The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and “any
|
||||
later version”, you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
**10.** If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
### NO WARRANTY
|
||||
|
||||
**11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
**12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
### How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the “copyright” line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w` and `show c` should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w` and `show c`; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a “copyright disclaimer” for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
33
README.md
|
@ -1,3 +1,32 @@
|
|||
# C.Basic
|
||||
# C.Basic - Casio Basic IDE add-in for fx-9860 and fx-CG graphing calculators
|
||||
|
||||
A Casio Basic interpreter add-in for fx-9860 and fx-CG graphing calculators
|
||||
[English](README_en.md) | [Français](README_fr.md) | [日本語](README_ja.md) | [中文(简体)](README_zh-Hans.md)
|
||||
|
||||
C.Basic (pronounce "c-dot-basic") is the reference implementation of Casio Basic, written in Casio SDK for fx-9860 and miniSDK for fx-CG.
|
||||
|
||||
The add-in is designed for programmers who want to incorporate SDK-exclusive features to their Casio Basic programs, without having to use their PC to compile an add-in and worry about the error-prone debugging environment of C/C++.
|
||||
|
||||
C.Basic is only an interpreter at the current stage. In the future, C.Basic will evolve into C:Basic ("c-colon-basic") which includes a compiler.
|
||||
|
||||
## Features
|
||||
|
||||
* Achieve add-in like performance with little to no modifications to existing Casio Basic programs
|
||||
* Access and edit programs directly in SMEM and SD card
|
||||
* Robust editor with features from modern IDE — syntax highlighting, indentation, variable/matrix lookup and debugging
|
||||
* Extended commands with Casio Basic style syntax
|
||||
* Emulate G1M programs in fx-CG calculators
|
||||
|
||||
## Things to know
|
||||
|
||||
* If you are an fx-CG10 or fx-CG20 user, C.Basic will ask whether you want it to overclock your calculator to increase the performance on the screen transfer.
|
||||
* The mechanic is based on [Ptune2](https://pm.matrix.jp/ftune2e.html), an overclocking add-in made by the same author of C.Basic. This prompt will increase your processor core clock (IFC) from 58.98 MHz to 117.96 MHz.
|
||||
* Since overclocking could be potentially dangerous, use it at your own risk. You can disable this prompt in the settings at anytime.
|
||||
* As C.Basic is written in C/C++, it uses floating point to express numbers instead of binary-coded decimal that Casio Basic uses. As such, handling non-integers may cause numerical errors. You are advised not to use C.Basic for applications involving serious calculations.
|
||||
|
||||
## License, credit and wiki
|
||||
|
||||
C.Basic is licensed under the GNU General Public License, version 2. See [LICENSE.md](LICENSE.md) for the full license text.
|
||||
|
||||
See [CREDIT.md](CREDIT.md) for the credit list.
|
||||
|
||||
Check out the official C.Basic Wiki by clicking the `Wiki` tab in the navigation bar.
|
|
@ -0,0 +1,60 @@
|
|||
Error Code List
|
||||
------------------------------
|
||||
1: Syntax ERROR
|
||||
2: Ma ERROR
|
||||
3: Go ERROR
|
||||
4: Nesting ERROR
|
||||
5: Stack ERROR
|
||||
6: Memory ERROR
|
||||
7: Argument ERROR
|
||||
8: Dimension ERROR
|
||||
9: Range ERROR
|
||||
|
||||
11: Non-Real ERROR
|
||||
|
||||
20: Com ERROR
|
||||
21: Transmit ERROR
|
||||
22: Receive ERROR
|
||||
|
||||
28: Too Much Data
|
||||
|
||||
33: Missing Next
|
||||
34: Missing For
|
||||
35: Missing WhileEnd
|
||||
36: Missing While
|
||||
37: Missing LpWhile
|
||||
38: Missing Do
|
||||
39: Not Loop ERROR
|
||||
40: Zero Division
|
||||
41: Undefined Label
|
||||
42: Not Enough Memory
|
||||
43: String Too Long
|
||||
44: No Matrix array
|
||||
45: Invalid Ary Size
|
||||
46: Prog Not Found
|
||||
47: Too Many SubProg
|
||||
48: Missing IfEnd
|
||||
49: Missing If
|
||||
50: Missing Switch
|
||||
51: Missing Switch
|
||||
52: Missing SwitchEnd
|
||||
53: Missing Switch
|
||||
54: File Not Found
|
||||
55: Illegal Element
|
||||
56: Com Opened
|
||||
57: Com Closed
|
||||
58: Invalid Type
|
||||
59: Out of Domain
|
||||
60: Var Undefined
|
||||
61: Func Undefined
|
||||
62: Not Supported
|
||||
63: VarLimit Exceeded
|
||||
64: Duplicate Def
|
||||
65: Address Align ERR
|
||||
66: Time Out
|
||||
70: Missing Except
|
||||
71: Missing Try
|
||||
72: Missing Try73: Can not Support (#003F)
|
||||
74: Can not Support (#041F)
|
||||
75: Can not Support (#F820)
|
||||
76: Can not Support (#FC00)
|
|
@ -0,0 +1,160 @@
|
|||
---------------------------------------------------------------------------------
|
||||
C.Basic for CG Ver 1.00beta Extended Opcode List
|
||||
|
||||
Last edited by sentaro21/Colon, 15 Jun 2019(UTC)
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
0x00A7 "not " // Not -> not
|
||||
0x009A " xor " // add space
|
||||
0x00AA " or " // add space
|
||||
0x00BA " and " // add space
|
||||
0x00FA "Gosub "
|
||||
|
||||
0x7F58 "ElemSize("
|
||||
0x7F59 "ColSize("
|
||||
0x7F5A "RowSize("
|
||||
0x7F5B "MatBase("
|
||||
0x7F5C "ListCmp("
|
||||
0x7F5D "GetRGB(" // for CG
|
||||
0x7F5E "RGB(" // for CG
|
||||
0x7F5F "Ticks"
|
||||
0x7F9F "KeyRow("
|
||||
0x7FCF "System("
|
||||
0x7FDF "Version"
|
||||
0x7FF5 "IsExist("
|
||||
0x7FF6 "Peek("
|
||||
0x7FF8 "VarPtr("
|
||||
0x7FFA "ProgPtr("
|
||||
|
||||
0xF70C "Return " // add space
|
||||
0xF70F "ElseIf "
|
||||
0xF717 "ACBreak"
|
||||
0xF737 "Try "
|
||||
0xF738 "Except "
|
||||
0xF739 "TryEnd"
|
||||
0xF73B "DotPut("
|
||||
0xF73D "DotTrim("
|
||||
0xF73E "DotGet("
|
||||
0xF79D "StoCapt"
|
||||
0xF7DD "Beep "
|
||||
0xF7DE "BatteryStatus" // for CG
|
||||
0xF7DF "Delete "
|
||||
0xF7E0 "DotLife("
|
||||
0xF7E1 "Rect "
|
||||
0xF7E2 "FillRect "
|
||||
0xF7E3 "LocateYX "
|
||||
0xF7E4 "Disp "
|
||||
0xF7E8 "ReadGraph("
|
||||
0xF7E9 "WriteGraph "
|
||||
0xF7EA "Switch "
|
||||
0xF7EB "Case "
|
||||
0xF7EC "Default "
|
||||
0xF7ED "SwitchEnd"
|
||||
0xF7EE "Save "
|
||||
0xF7EF "Load("
|
||||
0xF7F0 "DotShape("
|
||||
0xF7F1 "Local "
|
||||
0xF7F2 "PopUpWin("
|
||||
0xF7F4 "SysCall("
|
||||
0xF7F5 "Call("
|
||||
0xF7F6 "Poke("
|
||||
0xF7F8 "RefrshCtrl "
|
||||
0xF7FA "RefrshTime "
|
||||
0xF7FB "Screen"
|
||||
0xF7FC "PutDispDD"
|
||||
0xF7FD "FKeyMenu("
|
||||
0xF7FE "BackLight "
|
||||
|
||||
0xF90E "Const "
|
||||
0xF90F "Alias " // AliasVar -< Alias
|
||||
0xF940 "ToStr(" // Str( -> ToStr(
|
||||
0xF941 "DATE"
|
||||
0xF942 "TIME"
|
||||
0xF943 "Sprintf("
|
||||
0xF944 "StrChar("
|
||||
0xF945 "StrCenter("
|
||||
0xF946 "Hex("
|
||||
0xF947 "Bin("
|
||||
0xF948 "StrBase("
|
||||
0xF949 "StrRepl("
|
||||
0xF94D "StrSplit("
|
||||
0xF94F "Wait "
|
||||
0xF950 "StrAsc("
|
||||
0xF960 "GetFont("
|
||||
0xF961 "SetFont "
|
||||
0xF962 "GetFontMini("
|
||||
0xF963 "SetFontMini "
|
||||
0xF999 "Plot/Line-Color " // for CG
|
||||
0xF99B "Black " // for CG
|
||||
0xF99C "White " // for CG
|
||||
0xF99D "Magenta " // for CG
|
||||
0xF99E "Cyan " // for CG
|
||||
0xF99F "Yellow " // for CG
|
||||
0xF9BE "Back-Color " // for CG
|
||||
0xF9BF "Transp-Color " // for CG
|
||||
0xF9C0 "_ClrVram"
|
||||
0xF9C1 "_ClrScreen"
|
||||
0xF9C2 "_DispVram"
|
||||
0xF9C3 "_Contrast"
|
||||
0xF9C4 "_Pixel "
|
||||
0xF9C5 "_Point "
|
||||
0xF9C6 "_PixelTest("
|
||||
0xF9C7 "_Line "
|
||||
0xF9C8 "_Horizontal "
|
||||
0xF9C9 "_Vertical "
|
||||
0xF9CA "_Rectangle "
|
||||
0xF9CB "_Polygon "
|
||||
0xF9CC "_FillPolygon "
|
||||
0xF9CD "_Circle "
|
||||
0xF9CE "_FillCircle "
|
||||
0xF9CF "_Elips "
|
||||
0xF9D0 "_FillElips "
|
||||
0xF9D1 "_ElipsInRct "
|
||||
0xF9D2 "_FElipsInRct "
|
||||
0xF9D3 "_Hscroll "
|
||||
0xF9D4 "_Vscroll "
|
||||
0xF9D5 "_Bmp "
|
||||
0xF9D6 "_Bmp8 "
|
||||
0xF9D7 "_Bmp16 "
|
||||
0xF9D8 "_Test"
|
||||
0xF9D9 "_BmpZoom "
|
||||
0xF9DA "_BmpRotate "
|
||||
0xF9DB "BmpSave "
|
||||
0xF9DC "BmpLoad("
|
||||
0xF9DD "DrawMat "
|
||||
0xF9DE "_BmpZmRotate "
|
||||
0xF9DF "_Paint " // for CG
|
||||
|
||||
0x7F3A "MOD(" // SDK emu not support OS 2.00 or later
|
||||
0x7F3C "GCD(" // SDK emu not support OS 2.00 or later
|
||||
0x7F3D "LCM(" // SDK emu not support OS 2.00 or later
|
||||
0x7F84 "Vct" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0x7F87 "RanInt#(" // SDK emu not support OS 2.00 or later
|
||||
0x7F88 "RanList#(" // SDK emu not support OS 2.00 or later
|
||||
0x7FB4 " Xor " // SDK emu not support OS 2.00 or later
|
||||
0x7FBC " Int/ " // SDK emu not support OS 2.00 or later
|
||||
0x7FBD " Rmdr " // SDK emu not support OS 2.00 or later
|
||||
|
||||
0xF79E "Menu " // SDK emu not support OS 2.00 or later
|
||||
|
||||
0xF930 "StrJoin(" // SDK emu not support OS 2.00 or later
|
||||
0xF931 "StrLen(" // SDK emu not support OS 2.00 or later
|
||||
0xF932 "StrCmp(" // SDK emu not support OS 2.00 or later
|
||||
0xF933 "StrSrc(" // SDK emu not support OS 2.00 or later
|
||||
0xF934 "StrLeft(" // SDK emu not support OS 2.00 or later
|
||||
0xF935 "StrRight(" // SDK emu not support OS 2.00 or later
|
||||
0xF936 "StrMid(" // SDK emu not support OS 2.00 or later
|
||||
0xF937 "Exp>Str(" // SDK emu not support OS 2.00 or later
|
||||
0xF938 "Exp(" // SDK emu not support OS 2.00 or later
|
||||
0xF939 "StrUpr(" // SDK emu not support OS 2.00 or later
|
||||
0xF93A "StrLwr(" // SDK emu not support OS 2.00 or later
|
||||
0xF93B "StrInv(" // SDK emu not support OS 2.00 or later
|
||||
0xF93C "StrShift(" // SDK emu not support OS 2.00 or later
|
||||
0xF93D "StrRotate(" // SDK emu not support OS 2.00 or later
|
||||
0xF93E "ClrVct" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF93F "Str " // SDK emu not support OS 2.00 or later
|
||||
0xF94A "CrossP(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF94B "DotP(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF95B "Norm(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF95E "UnitV(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF96D "Angle" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
|
@ -0,0 +1,175 @@
|
|||
------------------------------------------------------------
|
||||
Mat n Vct n List n
|
||||
|
||||
1: Mat A
|
||||
2: Mat B
|
||||
3: Mat C
|
||||
4: Mat D
|
||||
5: Mat E
|
||||
6: Mat F
|
||||
7: Mat G
|
||||
8: Mat H
|
||||
9: Mat I
|
||||
10: Mat J
|
||||
11: Mat K
|
||||
12: Mat L
|
||||
13: Mat M
|
||||
14: Mat N
|
||||
15: Mat O
|
||||
16: Mat P
|
||||
17: Mat Q
|
||||
18: Mat R
|
||||
19: Mat S
|
||||
20: Mat T
|
||||
21: Mat U
|
||||
22: Mat V
|
||||
23: Mat W
|
||||
24: Mat X
|
||||
25: Mat Y
|
||||
26: Mat Z
|
||||
|
||||
Vct A
|
||||
Vct B
|
||||
Vct C
|
||||
Vct D
|
||||
Vct E
|
||||
Vct F
|
||||
Vct G
|
||||
Vct H
|
||||
Vct I
|
||||
Vct J
|
||||
Vct K
|
||||
Vct L
|
||||
Vct M
|
||||
Vct N
|
||||
Vct O
|
||||
Vct P
|
||||
Vct Q
|
||||
Vct R
|
||||
Vct S
|
||||
Vct T
|
||||
Vct U
|
||||
Vct V
|
||||
Vct W
|
||||
Vct X
|
||||
Vct Y
|
||||
Vct Z
|
||||
|
||||
List 1
|
||||
List 2
|
||||
List 3
|
||||
List 4
|
||||
List 5
|
||||
List 6
|
||||
List 7
|
||||
List 8
|
||||
List 9
|
||||
List 10
|
||||
List 11
|
||||
List 12
|
||||
List 13
|
||||
List 14
|
||||
List 15
|
||||
List 16
|
||||
List 17
|
||||
List 18
|
||||
List 19
|
||||
List 20
|
||||
List 21
|
||||
List 22
|
||||
List 23
|
||||
List 24
|
||||
List 25
|
||||
List 26
|
||||
|
||||
27: Mat a Vct a List 27
|
||||
28: Mat b Vct b List 28
|
||||
29: Mat c Vct c List 29
|
||||
30: Mat d Vct d List 30
|
||||
31: Mat e Vct e List 31
|
||||
32: Mat f Vct f List 32
|
||||
33: Mat g Vct g List 33
|
||||
34: Mat h Vct h List 34
|
||||
35: Mat i Vct i List 35
|
||||
36: Mat j Vct j List 36
|
||||
37: Mat k Vct k List 37
|
||||
38: Mat l Vct l List 38
|
||||
39: Mat m Vct m List 39
|
||||
40: Mat n Vct n List 40
|
||||
41: Mat o Vct o List 41
|
||||
42: Mat p Vct p List 42
|
||||
43: Mat q Vct q List 43
|
||||
44: Mat r Vct r List 44
|
||||
45: Mat s Vct s List 45
|
||||
46: Mat t Vct t List 46
|
||||
47: Mat u Vct u List 47
|
||||
48: Mat v Vct v List 48
|
||||
49: Mat w Vct w List 49
|
||||
50: Mat x Vct x List 50
|
||||
51: Mat y Vct y List 51
|
||||
52: Mat z Vct z List 52
|
||||
|
||||
53: Mat 53 Vct 53 List 53 List 1: file 1
|
||||
54: Mat 54 Vct 54 List 54
|
||||
55: Mat 55 Vct 55 List 55
|
||||
56: Mat 56 Vct 56 List 56
|
||||
57: Mat 57 Vct 57 List 57
|
||||
58: Mat 58 Vct 58 List 58
|
||||
59: Mat 59 Vct 59 List 59
|
||||
60: Mat 60 Vct 60 List 60
|
||||
61: Mat 61 Vct 61 List 61
|
||||
62: Mat 62 Vct 62 List 62
|
||||
63: Mat 63 Vct 63 List 63
|
||||
64: Mat 64 Vct 64 List 64
|
||||
65: Mat 65 Vct 65 List 65
|
||||
66: Mat 66 Vct 66 List 66
|
||||
67: Mat 67 Vct 67 List 67
|
||||
68: Mat 68 Vct 68 List 68
|
||||
69: Mat 69 Vct 69 List 69
|
||||
70: Mat 70 Vct 70 List 70
|
||||
71: Mat 71 Vct 71 List 71
|
||||
72: Mat 72 Vct 72 List 72
|
||||
73: Mat 73 Vct 73 List 73
|
||||
74: Mat 74 Vct 74 List 74
|
||||
75: Mat 75 Vct 75 List 75
|
||||
76: Mat 76 Vct 76 List 76
|
||||
77: Mat 77 Vct 77 List 77
|
||||
78: Mat 78 Vct 78 List 78
|
||||
|
||||
79: Mat 79 Vct 79 List 79 List 1: file 2
|
||||
80: Mat 80 Vct 80 List 80
|
||||
81: Mat 81 Vct 81 List 81
|
||||
82: Mat 82 Vct 82 List 82
|
||||
83: Mat 83 Vct 83 List 83
|
||||
84: Mat 84 Vct 84 List 84
|
||||
85: Mat 85 Vct 85 List 85
|
||||
86: Mat 86 Vct 86 List 86
|
||||
87: Mat 87 Vct 87 List 87
|
||||
88: Mat 88 Vct 88 List 88
|
||||
89: Mat 89 Vct 89 List 89
|
||||
90: Mat 90 Vct 90 List 90
|
||||
91: Mat 91 Vct 91 List 91
|
||||
92: Mat 92 Vct 92 List 92
|
||||
93: Mat 93 Vct 93 List 93
|
||||
94: Mat 94 Vct 94 List 94
|
||||
95: Mat 95 Vct 95 List 95
|
||||
96: Mat 96 Vct 96 List 96
|
||||
97: Mat 97 Vct 97 List 97
|
||||
98: Mat 98 Vct 98 List 98
|
||||
99: Mat 99 Vct 99 List 99
|
||||
100: Mat 100 Vct 100 List 100
|
||||
101: Mat 101 Vct 101 List 101
|
||||
102: Mat 102 Vct 102 List 102
|
||||
103: Mat 103 Vct 103 List 103
|
||||
104: Mat 104 Vct 104 List 104
|
||||
|
||||
105: Mat 105 Vct 105 List 105 List 1: file 3
|
||||
106: Mat 106 Vct 106 List 106
|
||||
107: Mat 107 Vct 107 List 107
|
||||
|
||||
<r>: Mat <r> Vct <r> List <r>
|
||||
Į : Mat Į Vct Į List Į
|
||||
Ans: Mat Ans Vct Ans List Ans
|
||||
------------------------------------------------------------
|
||||
Last edited by sentaro 2020/02/05(UTC)
|
||||
------------------------------------------------------------
|
|
@ -0,0 +1,183 @@
|
|||
|
||||
------------------------------- File list message
|
||||
"Font Reading....."
|
||||
"File Reading....."
|
||||
"------Favorites------"
|
||||
"Can't find file"
|
||||
"Can't load file"
|
||||
"Can't delete file"
|
||||
"Can't delete fldr"
|
||||
"Can't create file"
|
||||
"Can't open file"
|
||||
"Can't create Dir"
|
||||
"Program Name"
|
||||
"Overwrite OK?"
|
||||
"Save Name?"
|
||||
"Save Text Name?"
|
||||
"New Program Name?"
|
||||
"Password?"
|
||||
" Mismatch"
|
||||
"Set Password"
|
||||
"Unlock password"
|
||||
"Delete file?"
|
||||
"Delete folder?"
|
||||
"Folder Name"
|
||||
"Can't make folder"
|
||||
"Rename Folder ?"
|
||||
"Rename File ?"
|
||||
"Can't Rename file"
|
||||
"Rename File Name?"
|
||||
"Copy File Name?"
|
||||
|
||||
|
||||
------------------------------- Editor message
|
||||
"Search For Text"
|
||||
"Replacement Text"
|
||||
" Not Found "
|
||||
"[AC]:Stop"
|
||||
"Hit GetKey Code"
|
||||
|
||||
"== Command Select =="
|
||||
"==STD GR FN STR EX=="
|
||||
|
||||
"===Continuous Select= C.Basic ="
|
||||
"===Character Select== C.Basic ="
|
||||
"===Continuous Select= Default ="
|
||||
"===Character Select== Default ="
|
||||
"==Continuous Select=="
|
||||
"==Character Select==="
|
||||
|
||||
"===Character Select== GB code 0xA0** =="
|
||||
"===Continuous Select= GB code 0xA0** =="
|
||||
|
||||
------------------------------- Matrix message
|
||||
"Goto Element"
|
||||
"Dimension mxn"
|
||||
"Dimension XxY"
|
||||
"Init Matrix array"
|
||||
"Goto Element"
|
||||
"CLip Buffer Over"
|
||||
"Mat to Clip Ok!"
|
||||
"List to Clip Ok!"
|
||||
|
||||
"[1bit]"
|
||||
"[VRAM]"
|
||||
"[nibl]"
|
||||
"[byte]"
|
||||
"[word]"
|
||||
"[long]"
|
||||
"[Dbl]"
|
||||
"[CPLX]"
|
||||
|
||||
-------------------------------- Casio Basic Compatible error message
|
||||
" Syntax ERROR"
|
||||
" Math ERROR"
|
||||
" Go ERROR"
|
||||
" Nesting ERROR"
|
||||
" Stack ERROR"
|
||||
" Memory ERROR"
|
||||
" Argument ERROR"
|
||||
" Dimension ERROR"
|
||||
" Range ERROR"
|
||||
" Too Much Data"
|
||||
" Com ERROR"
|
||||
" Transmit ERROR"
|
||||
" Receive ERROR"
|
||||
" Non-Real ERROR"
|
||||
|
||||
-------------------------------- extended error message
|
||||
|
||||
"Next without For"
|
||||
"For without Next"
|
||||
"While w/o WEnd"
|
||||
"WEnd w/o While"
|
||||
"LpWhile w/o Do"
|
||||
"Do w/o LpWhile"
|
||||
"Not Loop ERROR"
|
||||
"Division By Zero"
|
||||
"Undefined Label"
|
||||
"Not enough Memory"
|
||||
"String Too Long"
|
||||
"No Matrix array"
|
||||
"Illegal Ary size"
|
||||
"Not found Prog"
|
||||
"Too many SubProg"
|
||||
"If without IfEnd"
|
||||
"Then without If"
|
||||
"Case w/t Switch"
|
||||
"Default w/o Swtch"
|
||||
"Switch w/o S.End"
|
||||
"S.End w/o Switch"
|
||||
"Can't find file"
|
||||
"Illegal Element"
|
||||
"Already Open ERR"
|
||||
"Com Not Open ERR"
|
||||
"Type Mismatch ERR"
|
||||
"Out of Domain ERR"
|
||||
"Undefined Var"
|
||||
"Undefined Func"
|
||||
"Not Support ERR"
|
||||
"Too many Var ERR"
|
||||
"Duplicate Def ERR"
|
||||
"Address Align ERR"
|
||||
"Try w/t Except "
|
||||
"Except w/t Try "
|
||||
"TryEnd w/t Try "
|
||||
"File ERROR"
|
||||
|
||||
------------------------------- Setup message
|
||||
"Angle :"
|
||||
"Draw Type :"
|
||||
"Coord :"
|
||||
"Grid :"
|
||||
"Axes :"
|
||||
"Label :"
|
||||
"Derivative :"
|
||||
"Background :"
|
||||
"Plot/LineCol:"
|
||||
"Sketch Line :"
|
||||
"Display :"
|
||||
|
||||
"Exp Display :"
|
||||
"SetupRecover:"
|
||||
"Command Inpt:"
|
||||
"EnableExFont:"
|
||||
"Edit ExtFont:"
|
||||
"Edit GB Font:"
|
||||
"EditFontSize:"
|
||||
"Edit LineNum:"
|
||||
"EditListChar:"
|
||||
"Edit-backCol:"
|
||||
"Edit-baseCol:"
|
||||
"E-NumericCol:"
|
||||
"E-CommandCol:"
|
||||
"Ed-QuotColor:"
|
||||
"E-CommentCol:"
|
||||
"E-LineNumCol:"
|
||||
"Use Hidn RAM:"
|
||||
"HidnRAM Init:"
|
||||
"Max Pict No :"
|
||||
"Max List No :"
|
||||
"AT DebugMode:"
|
||||
"Break Stop :"
|
||||
"Exec TimeDsp:"
|
||||
"IfEnd Check :"
|
||||
"ACBreak :"
|
||||
"Force Return:"
|
||||
"Key 1st time:"
|
||||
"Key Rep time:"
|
||||
"SkipUp/Down :"
|
||||
"Mat Dsp mode:"
|
||||
"Matrix base :"
|
||||
"Pict mode :"
|
||||
"Auto file save:"
|
||||
"Force g1m save:"
|
||||
"Direct GB cnvt:"
|
||||
"RefrshCtl DD:"
|
||||
"Wait count :"
|
||||
"G1M/G3M mode:"
|
||||
"Execute mode:"
|
||||
|
||||
"Select Number"
|
||||
"SkipUp/Dw Number"
|
||||
"RefrshTime n/128s"
|
|
@ -0,0 +1,680 @@
|
|||
Please look at this site that made by Krtyski.(e-Gadget administrator)
|
||||
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
This site and following text is translated by Krtyski(e-Gadget administrator) & Lephenixnoir(Planet-Casio administrator).
|
||||
Thanks very much for your support.
|
||||
|
||||
===============================================================================
|
||||
|
||||
Add-In Casio Basic Interpreter (& Compiler) for CG ver. 1.x beta version
|
||||
|
||||
copyright(c)2015-2017-2020 by sentaro21
|
||||
e-mail sentaro21@pm.matrix.jp
|
||||
|
||||
last updated by Krtyski/sentaro21, 9 Feb 2020
|
||||
===============================================================================
|
||||
|
||||
**If you feel your Casio Basic programs are not running fast enough, C.Basic can free you of that frustration!**
|
||||
|
||||
Get started with genuine Casio Basic programs, then enjoy extended commands that Casio Basic alone cannot perform.
|
||||
|
||||
- Currently **C.Basic for CG** (Basic interpreter) runs on Prizm fx-CG10 and fx-CG20 and fx-CG50 / Graph 90+E
|
||||
- **C.Basic for CG** will evolve into a Casio Basic compiler "**C:Basic for CG**", which will run programs much faster than C.Basic (10 times from the looks of it).
|
||||
|
||||
All the instructions supported by C.Basic are listed in the `"Command_List_CG.txt"` and `"ManualCG_EN.txt"` files included in the distribution package.
|
||||
|
||||
======= CAUTION !!! ========
|
||||
In order to support Prizm fx-CG10 and fx-CG20, the over clock feature was built in because of its slower screen refresh.
|
||||
58.98MHz(default) -> 117.96Mhz (nearly Ptune2 [F3] preset)
|
||||
============================
|
||||
|
||||
## Pros
|
||||
|
||||
- C.Basic is mostly compatible with genuine Casio Basic.
|
||||
- Programs run at least 10 times faster in C.Basic.
|
||||
- C.Basic's List and File editors are easier to use than the usual ones.
|
||||
- Can execute programs from storage memory, and supports sub-folder structures.
|
||||
- Some Casio Basic commands are extended for more features.
|
||||
- Newly-implemented commands for more powerful and flexible programming.
|
||||
|
||||
## Cons
|
||||
|
||||
- C.Basic does not cover all of the original Basic commands.
|
||||
- Calculations don't yield the same results as the usual interpreter because C.Basic use double-precision floating point instead of fixed-point BCD.
|
||||
- C.Basic stores PICT files in storage memory, hence using them is slower (at least until version 0.87 which uses the heap area from the main memory).
|
||||
- There must be some bugs, unfortunately ^^ Please provide us with a bug report if you find any.
|
||||
|
||||
|
||||
## Almost compatible with vanilla Casio Basic
|
||||
|
||||
Flawless compatibility is our goal, but some differences are intentional:
|
||||
|
||||
- `?` and `?→` input commands are displayed on a single line. Displaying a string longer than 21 characters will result in horizontal scroll instead of line wrap.
|
||||
- When a graphing sketch commands is followed by the multi-statement command `:`, the screen is not refreshed.
|
||||
- Program running time is displayed when the program ends. This function can be triggered in the setup page.
|
||||
- Comment delimiters `'` are allowed before carriage returns and Disps (output), and `:` can be included in the comment string.
|
||||
|
||||
C.Basic also takes in user-friendly features of fx-5800P:
|
||||
|
||||
- C.Basic supports a `"?A"` command as fx-5800P, as opposed to fx-9860G / fx-9860GII / fx-CG series which only support `"?→A"`.
|
||||
- String output command `" "` is fully compatible with fx-5800P thus a but different from fx-9860G / fx-9860GII. See [Topic](http://egadget.blog.fc2.com/blog-entry-520.html) for details.
|
||||
|
||||
|
||||
======= CAUTION !!! ========
|
||||
We don't believe that C.Basic could damage your calculator, but the main memory could still be unexpectedly damaged or destroyed, which would require a whole memory reset. Hence it is strongly recommended that you backup your main and storage memory data. Please be aware that you should only use C.Basic at your sole risk.
|
||||
============================
|
||||
|
||||
======= Disclaimer of Warranty =======
|
||||
Use of C.Basic and C:Basic (hereinafter SOFTWARE) is at user’s sole risk. All materials, information, products, software, programs and service provided “as is”, with no warranties or guarantees whatsoever. Creators of SOFTWARE and support team who provide support documents, support web site, information and sample programs (hereinafter DEVELOPMENT TEAM) expressly disclaim to the fullest extent permitted by law, all express, implied, statutory, and other warranties, guarantees, or representations, including, without limitation, the warranties of merchantability, fitness for a particular purpose, and non-infringement of proprietary and intellectual property rights. Without limitation, DEVELOPMENT TEAM makes no warranty or guarantee that development of SOFTWARE will be uninterrupted, timely, secure, or error-free.
|
||||
======================================
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
# Starting up C.Basic
|
||||
|
||||
To start up **C.Basic**, press `[MENU]`, select the C.Basic icon, then press `[EXE]`.
|
||||
|
||||
There are two ways for copying a program file (`g1m` file) developed for the original Casio Basic interpreter into the File List in C.Basic:
|
||||
|
||||
## Using the pre-installed memory manager
|
||||
|
||||
- To start up the memory manager, press `[MENU]`, select the memory manager icon and press `[EXE]`.
|
||||
- Press `[F1]` to display the contents of the main memory.
|
||||
- Move the cursor down to `<PROGRAM>` and press `[EXE]`. You should now be seeing the list of all Basic Casio programs currently installed for the usual interpreter.
|
||||
- Select the program file that you want to copy.
|
||||
- Press `[F1](SEL)` then `[F2](COPY)`.
|
||||
- Select `"ROOT"`, press `[EXE]`; the calculator will ask you for a file name.
|
||||
- Enter an appropriate file name or just `"A"`, then press `[EXE]`.
|
||||
- Press the `[MENU]` key to go back to the main menu.
|
||||
- Start C.Basic.
|
||||
- In the File List select the name you just entered, press `[F6]` and then `[F2](REN)`.
|
||||
- You will be prompted with `[Rename file Name?]`, and the original file name will be displayed (even though you typed in `"A"`). Press `[EXE]`.
|
||||
- Now the file name has been corrected.
|
||||
|
||||
(*Ver.0.53 or later)
|
||||
-Added setting of the setup to use the program file of MCS(main memory) directly.
|
||||
You can change the destination from MCS from storage, storage to MCS in preservation and the copy of the file.
|
||||
At the storage memory mode, copying, a destination become MCS when they choose [F3](MCS).
|
||||
Copying, a destination become the storage memory when they choose [F1](g3m)[F2](g1m) at the MCS mode.
|
||||
|
||||
|
||||
=================================================================================
|
||||
Quick Manual - Development Environment of C.Basic
|
||||
=================================================================================
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
File List Page
|
||||
---------------------------------------------------------------------------------
|
||||
-[UP] Move cursor to the previous file.
|
||||
-[DOWN] Move cursor ro the next file.
|
||||
Pressing A to Z, cursor jumps to a file name which starts with the pressed alphabet.
|
||||
This feature is fx-5800P compatible but not fx-CG.
|
||||
Press [.] key to jump to a file name which starts with "~".
|
||||
Press [EXP(x10)]key to jump to top of folder list.
|
||||
|
||||
-[F1] (EXE) Run selected file.
|
||||
-[F2] (EDIT) Edit selected file.
|
||||
-[F3] (NEW) Create new file.
|
||||
-[F4] (COPY) Copy selected file.
|
||||
-[F5] (DELETE) Deleted selected file.
|
||||
-[F6] ( > ) Move to next menu.
|
||||
[F1] (>txt) Convert selected source file to text file.
|
||||
[F2] (RENAME) Rename file.
|
||||
[F3] (Fav.) Set/Reset selected file to/from "Favorite".
|
||||
[F4] (Fv.up) Move upward selected Favorite file.
|
||||
[F5] (Fv.dw) Move downward selected Favorite file.
|
||||
[F6] ( > ) Move to previous menu.
|
||||
[F1] (MKEFLDR) Make new Folder
|
||||
[F2] (RENFLDR) Rename Folder
|
||||
[F6] ( > ) Move to the first menu.
|
||||
|
||||
-[EXE] Run the selected file.
|
||||
|
||||
-[SHIFT]+
|
||||
[EXIT](QUIT) Move back to root from sub-folder.
|
||||
[UP] Move upward selected Favorite file.
|
||||
[DOWN] Move downward selected Favorite file.
|
||||
[F1] (Var) Go to Variables Review Page.
|
||||
[F2] (Mat) Go to Mat Variables Review Page.
|
||||
[F3] (V-W) Go to ViewWindow setting value review page.
|
||||
[F4] (Pass) Set/Reset pass word.
|
||||
[F6] (Debug) Start Debug mode & open Editor page.
|
||||
|
||||
-[VARS] (Variables Review Page)
|
||||
[F1] (A<>a) Switch between display of capital and small letter variables.
|
||||
[F2] (Init) Initialize all the displayed variables.
|
||||
[F3] (D<>I) Siwitch between Integer and Double variables.
|
||||
[F6] (>Hex/>Dec) Switch display of values between in Hex and Dec.
|
||||
[SHIFT]+[UP]/[DOWN] Scroll single page up and down.
|
||||
※ Local variabe is marked with "=".
|
||||
|
||||
-[SHIFT]
|
||||
[MENU] (SETUP) Go to Setup page.
|
||||
[MENU][F6] Pop up Version information.
|
||||
|
||||
-[OPTN] Set/Reset selected file to/from "Favorite".
|
||||
|
||||
-[EXIT] Move cursor back to first file in the list.
|
||||
When cursor is at the first file in sub-folder, move back to root.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Editor Page
|
||||
-------------------------------------------------------------------------------
|
||||
Guide marker displayed in very right of Editor Page indicates cursor position in source file.
|
||||
|
||||
-[F1] (JUMP) Display JUMP Sub-menu.
|
||||
[F1] (TOP) Jump to top line of source file.
|
||||
[F2] (BTM) Jump to end line of source file.
|
||||
[F3] (GOTO) Jump to a line where you want to go.
|
||||
[F5] (SkipUp) Skip lines (preset # of line is available in Setup page) toward to top.
|
||||
[F6] (SkipDw) Skip lines (preset # of line is available in Setup page) toward to end.
|
||||
|
||||
-[F2] (SRC) Go to String Search / Replacement page.
|
||||
-[F3] (CMD) Go to Command Select page. (this is like fx-5800P command list)(fx-5800P mode)
|
||||
(MENU)) SelectCommand (fx-CG mode)
|
||||
-[F4] (A<>a) Switch between Capital and small letter.
|
||||
-[F5] (CHAR) Go to Character Select page.
|
||||
-[F6] (EXE) Run program or restart program when it's in pause.
|
||||
|
||||
-[SHIFT]+
|
||||
[EXIT](QUIT) Go back to File List page.
|
||||
[LEFT] Change font size & line spacing smaller.
|
||||
[RIGHT] Change font size & line spacing bigger.
|
||||
[UP] Scroll 1 page (6 lines) up to top.
|
||||
[DOWN] Scroll 1 page (6 lines) down to end.
|
||||
[F1] (Var) Go to Variables page.
|
||||
[F2] (Mat) Go to Mat Variables page.
|
||||
[F3] (V-WIN) Go to ViewWindow page.
|
||||
[F4] (SKTCH) Select Command. (fx-CG mode)
|
||||
(Dump)/(List) Switch between "Basic List" and "Hex Dump" display.(fx-5800P mode)
|
||||
[F5] (A<>a) Switch between Capital and small letter.
|
||||
[F6] (CHAR) Go to Character Select page. (fx-CG mode)
|
||||
(G<>T) Switch Graphics and Text screen.(fx-5800P mode)
|
||||
|
||||
[3] Input keycode of Getkey command.
|
||||
[6] Pop up Color Picker to input color code.
|
||||
|
||||
-[OPTN] Pop up Command List supported by [OPTN] of fx-CG.(fx-5800P mode)
|
||||
Select Command. (fx-CG mode)
|
||||
|
||||
-[VARS] Pop up Comamnd List supported by [VARS] of fx-CG.(fx-5800P mode)
|
||||
Select Command. (fx-CG mode)
|
||||
|
||||
-[MENU] Command input history (chronological order/input frequency order is changed by right and left key.)
|
||||
[AC/ON] Erase history
|
||||
|
||||
-[SHIFT][VARS] (PRGM) Pop up Command List supported by [PRGM] of fx-CG.
|
||||
|
||||
-[SHIFT][MENU] (SETUP) Go to Setup page.(fx-5800P mode)
|
||||
(SETUP) Select Command. (fx-CG mode)
|
||||
|
||||
-[ALPH][DEL] (UNDO) Delete or Paste operations are restored to the previous state.(only once)
|
||||
|
||||
-[EXIT] Go back to previous page, cancel clip mode or go back to File List page.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Debug Mode Editor Page
|
||||
-------------------------------------------------------------------------------
|
||||
Debug mode page comes up when program is broken intentionally or by error. Right example above shows Debug Mode Edotr Page that mini-font is applied in setup page.
|
||||
|
||||
In Degub Mode, status line is getting inverted on C.Basic for FX or becomes cyan color background.
|
||||
|
||||
-[F1](Cont) Continue program from cursor position.
|
||||
|
||||
-[F2](TRACE) Trace program from cursor position and come back to Editor page in Debug Mode right after the traced command runs, .
|
||||
|
||||
-[F3](STEPS) Trace and Step Over comamnd from cursor position and come back to Editor page in Debug Mode right after the command runs. When sub-routine runs, the sub-routine is executed to the end.
|
||||
|
||||
-[F4](S.Out) Step Out from cursor position and come back to Editor page in Debug Mode right after the command runs. When the sursor is in sub-routine the sub-routine is executed to the end.
|
||||
|
||||
-[F5](L<>S) Switch Editor page and program running screen. When the program running screen is displayed, debug operaiton with [F1] - [F4] is still available.
|
||||
|
||||
-[F6]( > ) Switch Debug manu and Editor menu. When program running screen is displayed, pressing [F6](>) displays Debug menu.
|
||||
|
||||
-[EXIT] Go back to previous page, cancel clip mode or go back to normal (not in Debug mode) Editor page.
|
||||
|
||||
(*In the debug mode, status line becomes cyan color background.)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Program Running Page
|
||||
-------------------------------------------------------------------------------
|
||||
During program is running;
|
||||
|
||||
-[AC] Stop program.
|
||||
[EXIT] Go to Editor in Debug mode. Cursor locates at break point.
|
||||
[Left/Right] Go to Editor in Debug mode. Cursor locates at break point.
|
||||
[F1] Resume program.
|
||||
[EXE] Resume program.
|
||||
|
||||
When program is halted by ▲ command (- Disp - is displayed on screen);
|
||||
-[SHIFT]+
|
||||
[F1](Var) Go to Variables Page
|
||||
[F2](Mat) Go to Mat/List Page
|
||||
[F3](V-W) Go to ViewWindow Page
|
||||
[F6](G<>T) Switch between Graphics and Text screen
|
||||
-[EXE] Resume program.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Mat/List/Vct Page
|
||||
-------------------------------------------------------------------------------
|
||||
In Mat/List Page you can review and edit Mat or List or Vct. Operation procedure of Mat and List and Vct is consistant, since List is internaly implemented as Mat.
|
||||
(The Mat marked by * in this page is alocated by addressing.)
|
||||
|
||||
[Operation in Review Mode]
|
||||
-[F1] (DEL) Delete selected Mat/List.
|
||||
-[F2] (DEL-ALL) Delete all Mat/List.
|
||||
-[F3] (DIM) Set dimension, element size and start index of selected Mat/List/Vct.
|
||||
-[F4] (INITIAL) Initialize all elements of selected Mat/List/Vct.
|
||||
-[F5] (Mat#/Lst#/Vct#) Select a number and jump to Mat/List/Vct of the number in alphabetical order.
|
||||
-[F6] (A<>a) Switch between capital letter and small letter of Mat name.
|
||||
|
||||
-[EXE] Enter to Edit Mode of Mat/List/Vct. (in details see below)
|
||||
|
||||
-[SHIFT]+[F1] (>Mat) Select Mat
|
||||
-[SHIFT]+[F2] (>List) Select List
|
||||
-[SHIFT]+[F3] (>Vct) Select Vct
|
||||
|
||||
-[OPTN] Switch showing between Mat and List.
|
||||
-[VARS] Switch showing between Mat and Vct.
|
||||
|
||||
-[LEFT] backword 26.
|
||||
-[RIGHT] forword 26.
|
||||
|
||||
-[SHIFT]+[UP][DOWN] page scroll
|
||||
|
||||
[Operation in Edit Mode]
|
||||
[SHIFT]+[8](CLIP) All data of selected Mat/List/Vct is clipped in buffer.
|
||||
[SHIFT]+[9](PASTE) Clipped data is pasted to selected Mat/List/Vct from buffer.
|
||||
|
||||
|
||||
to edit numerical value;
|
||||
-[F1] (EDIT) Edit the element of the Mat/List/Vct.
|
||||
-[F2] (GO) Go to element set by row and column.
|
||||
-[F3] (INITIAL) Initialize all elements.
|
||||
-[F4] (>x,y / >m,n) Switch Matrix indication between [m,n] and [x,y].
|
||||
|
||||
-[SHIFT]+[F5] or [F5] Switch element values between in decimal and binary.
|
||||
(applied only to nybble (4 bits), byte (1 byte) and word (2 bytes))
|
||||
-[SHIFT]+[F6] or [F6] Switch element values between in decimal and hexadecimal.
|
||||
(not applied to 1 bit and a complex number (16 bytes), double number (8 bytes) just displays internal data)
|
||||
|
||||
-[SHIFT]+[F2] or [OPTN] Enter to Dot Editor Mode.
|
||||
-[SHIFT]+[F3] or [VARS] Enter to Character Strings Edit Mode.
|
||||
|
||||
Only for g3m mode on C.Basic for CG (excluding 1 bit Mat/List/Vct);
|
||||
-[SHIFT]
|
||||
[5] Input 4 bit color value in nibble (4 bits) or 16 bits color value in other element number type.
|
||||
[6] Input 16 bits color value (excluding nibble (4 bits) Mat/List/Vct).
|
||||
|
||||
|
||||
to edit Dots;
|
||||
Each element value of matrix can be handled as color code.
|
||||
- Using in 1 bit matrix or in g1m mode, 0(zero) = black and 1 = white.
|
||||
- Using in nibble (4 bits matrix), 4 bits color value is applied.
|
||||
|
||||
-[F1] (0 <> 1) Switch element value between 0 and 1.(1 bit Mat or g1m mode)
|
||||
-[F1] Change to the color displayed by the function menu. (other than the 1 bit Mat of the g3m mode)
|
||||
*It change to black as same color
|
||||
|
||||
Only as for the following, g3m mode (except the 1 bit Mat/List)
|
||||
-[SHIFT]
|
||||
[5] Input a 16 bits color other than it with a 4 bits color in the nibble (4 bits).
|
||||
[6] Input a 16 bits color. (except the nibble (4 bits) Mat/List)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Search/Replace for Text
|
||||
-------------------------------------------------------------------------------
|
||||
[Search character string]
|
||||
Operatin procedure;
|
||||
1. Input character string and press [F1](SEARCH) or [EXE].
|
||||
2. To search next, press [F1](SEARCH) or [EXE] again.
|
||||
3. Press [F6](RETRY) to back to search page.
|
||||
|
||||
[Replace character string]
|
||||
Operatin procedure;
|
||||
1. Input character string to search, and press [F2](REPL).
|
||||
2. Then input character string to be replaced with, and press [F1](SEARCH), [F2](REPL) or [EXE].
|
||||
3. To search more for replacement, press [F1](SEARCH) or [EXE] again.
|
||||
4. Then press [F2](REPL) to replace again.
|
||||
5. To replace all, press [F3](ALL) or [F4](ALL+). To quit replacement, press [AC/ON].
|
||||
When pressing [F4] (ALL+), progress status is not dusplayed.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Incompatible Spec against genuine Casio Basic
|
||||
-------------------------------------------------------------------------------
|
||||
Compatibility with genuine Casio Basic is our target, but not 100%;
|
||||
|
||||
An input line by command "?" and "?->" are only in single line. A string of characters more than 21 columns is displayed still in the horizontal single line by scrolling, not in multiple lines.
|
||||
When ":" (Multi-statement Command) comes right after graphing sketch command, graphic screen is not re-drawn.
|
||||
Program running time is displayed after the program quit. This function can be set on or off in setup page.
|
||||
A Comment Text Delimiter ' is available for comment-out before Carriage Return or Disps (output), but ":" (Multi-statement Command) can be included the commented out string.
|
||||
|
||||
C.Basic also takes in user-friendly feature of fx-5800P;
|
||||
|
||||
C.Basic does support a script "?A" supported by fx-5800P. This is not supported by fx-CG (script "?->A" only is supported).
|
||||
Function of string output command " " is fully compatible with fx-5800P in details but not exactly compatible with fx-CG. See Topics in details.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Select Character Page
|
||||
-------------------------------------------------------------------------------
|
||||
In addition to character set of genuine Casio Basic, more characters are supported.
|
||||
|
||||
In "Character Select" page;
|
||||
[F6] ASCII, Kana, external character can be applied.
|
||||
[SHIFT]/[F1]~[F6] Continuous input is available.
|
||||
[OPTN] Switch between mini-font and normal font.
|
||||
[VARS] - C.Basic for FX Switch between OS supported the mini-font and normal font.
|
||||
[VARS] - C.Basic for CG Switch between C.Basic font and OS supported font.
|
||||
When OS supported font is displayed, special character can be input without escape.
|
||||
|
||||
(about GB font)
|
||||
In order to use GB font, in "Setup" page "Edit GB Font" setting should be "On" or "Full". Then
|
||||
[x^2] to switch between "GB code input mode" and other font input mode.
|
||||
|
||||
[F1] Jump to beginning 0xA0**.
|
||||
[F2] Go back 16 pages.
|
||||
[F3] Go back 1 page.
|
||||
[F4] Go forward 1 page.
|
||||
[F5] Go forward 16 pages.
|
||||
[F6] Jump to end 0xFE**.
|
||||
|
||||
*At the time of GB code indication, escape(0x5C) may be necessary to display special character.
|
||||
*Character with the escape(0x5C) is shown with yellow background.
|
||||
|
||||
===============================================================================
|
||||
Setup Page
|
||||
===============================================================================
|
||||
Setup items - compatible with genuine Casio Basic
|
||||
|
||||
Angle :Deg/Rad/Gra
|
||||
Complex Mode:Real/a+bi/r∠θ
|
||||
Draw Type :Connect/Plot
|
||||
Coord :on/off
|
||||
Grid :on/off/Line
|
||||
Axes :on/off/Scale
|
||||
Label :on/off
|
||||
Derivative :on/off
|
||||
Background :None / Pict1-20
|
||||
Plot/LineCol:Black etc.
|
||||
Sketch Line :Normal/Thick/Broken/Dot/Thin
|
||||
---------------------------------------------------
|
||||
|
||||
Setup items - newly provided and extended for C.Basic
|
||||
-------------------------------------------------------------------------------
|
||||
Display: Fix / Sci / Nrm / Eng
|
||||
Max number of digit after decimal point can be 15. Setting 0 (zero) max digit is 16.
|
||||
Nrm1 or Nrm2 is fully compatible with genuine Casio Basic and max digit is 10.
|
||||
- Nrm1: -0.01<x<0.01
|
||||
- Nrm2: -0.000000001<x<0.000000001
|
||||
- Other number (0 or 3 - 15) is to set max number of digit.
|
||||
Eng: select among Eng Off, Eng On (/E) and 3 digit separator (/3)
|
||||
※ Related command: Eng, Norm, Fix, Sci
|
||||
-------------------------------------------------------------------------------
|
||||
Exp Display : E / Stdx10 / Allx10
|
||||
select exponent character.
|
||||
E: -1.23e99 previous character.
|
||||
Stdx10: -1.23(x10)99 new character only standard font size.
|
||||
Allx10: -1.23(x10)99 new character all font size.
|
||||
|
||||
- Related command: '#exp 0 // previous character.
|
||||
'#exp 1 // new character only standard font size.
|
||||
'#exp 2 // new character all font size.
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
the help dispyay at the command input of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : On/Off
|
||||
set it whether you return setting compatible with genuine CasioBasic after a program in SetupRecover.
|
||||
-------------------------------------------------------------------------------
|
||||
Command Input :C.Basic/Standard/>5800/>9800
|
||||
Select Standard(fx-CG) method or C.Basic(fx-5800P) method.
|
||||
You can change the mode of "" output specifications compatible with fx-5800P and FX/CG.
|
||||
- Related command: '#58
|
||||
'#98
|
||||
-------------------------------------------------------------------------------
|
||||
[X]character : [0x90]/[X]
|
||||
To select character of [X/Theta/T]key.
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
Set to use external font.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
enable auto indent in editor.
|
||||
Off: diable auto indent.
|
||||
1 : Set indent width to 1.
|
||||
2 : Set indent width to 1.
|
||||
4 : Set indent width to 1.
|
||||
Save-: delete blank spaces including indents when saving program. (=to compatible with Casio Basic)
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : On/Off
|
||||
enable external font in editor.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit GB Font : On/Off/Full
|
||||
To select GB font display on editor.
|
||||
Off : normal. not display GB font.
|
||||
On : display GB font without F7xx,F9xx,E5xx,E6xx,E7xx
|
||||
Full: display all GB font.
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize : Standard/Mini/MiniMini/MiniMiniFX /+Fixed pitch/+Gap
|
||||
Set to Editor font size.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
enable auto indent in editor.
|
||||
Off: diable auto indent.
|
||||
1 : Set indent width to 1.
|
||||
2 : Set indent width to 1.
|
||||
4 : Set indent width to 1.
|
||||
Save-: delete blank spaces including indents when saving program. (=to compatible with Casio Basic)
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum :on/off
|
||||
Set to line number display.
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar : List / reverseL / Thick L
|
||||
Select List display character.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-backCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select back color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-baseCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select base color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
E-NumericCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select numeric color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommandCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select command color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
Ed-QuotColor : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select strings color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommentCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select comment color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
E-LineNumCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select line number color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto OverClk : on/off
|
||||
Set auto overclock for CG10/20
|
||||
-------------------------------------------------------------------------------
|
||||
Heap RAM Size : 96KB/117KB/127KB/SIZE
|
||||
Set maximam heap size of C.Basic use.
|
||||
(* You cannot change it at the time of the program editing.)
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidden RAM: on / off
|
||||
Set if C.Basic uses hidden RAM or not.
|
||||
-------------------------------------------------------------------------------
|
||||
HiddenRAM Init: on / off
|
||||
When use the hidden RAM, Mat&List at the time of C.Basic start, to initialize or not.
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No: 20~99
|
||||
When use the hidden RAM, you can use more pict file.
|
||||
(*)When you change a value, Pict&Mat&List is reset.
|
||||
(*) This setting is invalid.
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No: 52~1040
|
||||
When use the hidden RAM, you can use more List.
|
||||
(*)When you change a value, Pict&Mat&List is reset.
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on / off
|
||||
When [AC] break, debug mode on/off.
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on / off
|
||||
Set to popup of exit Debug Mode.
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop: on / off
|
||||
Set if [AC] key break is accepted or not.
|
||||
When it's off, you cannot break program by [AC] key.
|
||||
- Related command: '#Break0 '#Break1
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp: on / off /reset /%HR
|
||||
Set if program running time is displayed or not after the program quits.
|
||||
Timer starts at first line of program. ? or Disps command reset the timer.
|
||||
In the case of Getkey1/2, the timer is suspended and starts after command again.
|
||||
on reset: The timer is reset and starts again after Getkey1/2.
|
||||
%HR: use 1/32768s timer
|
||||
- Related command: '#GetkeyC '#GetkeyR
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check: on / off
|
||||
Set if one-to-one correspondence of "If" and "IfEnd" statement is chacked or not.
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak: on / off
|
||||
Set ACBreak command to be enable or disable.
|
||||
- Related command: ACBreak
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return:None/ F1/ EXE/ F1&EXE
|
||||
force return to file mode at [AC]break.
|
||||
(Example) Force Return set to [F1]key
|
||||
-File list→[F1](EXE)→[AC]→[EXIT]… Returns to the file list.
|
||||
-File list→[EXE]→[AC]→[EXIT] …… Returns to the editor.
|
||||
-File list→[F1](EXE]→[AC]→[EXE](restart)→[AC]→[EXIT] …… Returns to the file list.
|
||||
(The operation depends on which key is pressed first.)
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time: 25 ms - 1000 ms (default value is 500 ms)
|
||||
Set time before key repeat starts (in 25 ms interval)
|
||||
-------------------------------------------------------------------------------
|
||||
Key Rep time: 25 ms - 500 ms (default value is 125 ms)
|
||||
Set key repeat duration time (in 25 ms interval)
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down: 1 - 9999
|
||||
Set number of skipping page for SkipUp ([SHIFT][Up]) or SkipDown ([SHIFT][Down]).
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode: [m,n] / [X,Y]
|
||||
Set matrix display format in Matrix Editor page.
|
||||
Format [m,n] and [X,Y] are in transposed matrix each other, but just only the apperance on screen is different. The internal matrix data is still same, won't be changed.
|
||||
-------------------------------------------------------------------------------
|
||||
Matrix base: 0 / 1
|
||||
Set index of matrix starts with 0 or 1.
|
||||
When the start index is set to 0, lfet-top pixel comes to be available to use and left-yop coordinate of device coordinates can be (0, 0).
|
||||
- Related command: '#Mat 0, '#Mat 1
|
||||
-------------------------------------------------------------------------------
|
||||
DATE: 2017/01/17 TUE
|
||||
Set date of internal RTC. A day of the week is autmatically set.
|
||||
-------------------------------------------------------------------------------
|
||||
TIME: 23:59:59
|
||||
Set time of internal RTC
|
||||
- Related command: DATE, TIME
|
||||
-------------------------------------------------------------------------------
|
||||
Favorite Col : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16bit Color
|
||||
select favorite file color of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file Save:on/off
|
||||
Set to auto save without a popup.
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save: on / off
|
||||
Set "save automatically" or "not save" g1m file, after run or edit of text file.
|
||||
-------------------------------------------------------------------------------
|
||||
Direct GB cnvt : on/off
|
||||
Set GB code without text conversion.
|
||||
(* conversion supports The GB mode of the editor.)
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode: S.Mem / Heap / Both
|
||||
- S.Mem: Pict file is created in storage memory and it takes a bit longer.
|
||||
- Heap: Pict file is not actually created, but compatible file is allocaed in main memory. (recommend)
|
||||
- Both: Stored always in storage memory/SD.
|
||||
- Clear:Deletes the Pict compatible file created in main memory at program start every time.
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode: S.Mem / MainMem
|
||||
S.Mem: Files in storage memory is used for run and edit.
|
||||
Main mem: Files in MCS(Mein Memory) is used for run and edit.
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD: off / Grp / All
|
||||
Set how to refresh screen at running of display and draw command.
|
||||
Off: No extra refresh control is carried out, which is compatible with genuine Casio Basic.
|
||||
Grp: Only graphics draw commands make screen refreshed, excepting ClrText, Locate, Text, LocateYX, " " (this exception is compatible with former version of C.basic).
|
||||
All: All the display and draw commands male screen refreshed. PutDispDD should be used as may be necessary.
|
||||
Time: Set refresh control tme in interval of 1/128 sec. Defalt value is 3 then refresh control is every 1/42 sec.
|
||||
It is not refreshed when 0 is set.
|
||||
- Related command: RefrshCtrl, RefrshTime
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
Set to wait for slowdown execution speed.
|
||||
- Related command:Wait
|
||||
-------------------------------------------------------------------------------
|
||||
G1M/G3M mode : auto/g3m/g1m
|
||||
Set to execute mode as default.
|
||||
- Related command:
|
||||
'#G1M
|
||||
'#g1m
|
||||
'#G3M
|
||||
'#g3m
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode: Dbl# / Int% / CPLX
|
||||
Set running mode as default.
|
||||
- Related command: '#CBasic, '#CBASIC, '#CBINT, '#CBint '#CBCPLX '#CBcplx
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
|
||||
===============================================================================
|
||||
Acknowledgment
|
||||
===============================================================================
|
||||
|
||||
To investigate and implement internal specification,
|
||||
"SuperH-based fx calculators (version 20)"
|
||||
gave useful information.
|
||||
|
||||
This add-in program is compiled by miniSDK1.09.
|
||||
If there was not miniSDK, this add-in would not be born.
|
||||
Allow me to use this opportunity to offer my thanks.
|
||||
|
||||
|
||||
For file handling in C.Basic,
|
||||
https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Casio Fx-9860 Series On-calc C Compiler"
|
||||
gave useful information.
|
||||
|
||||
For Japanese Kana Fonts, font data and output routine in the following site is used;
|
||||
http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html"
|
||||
|
||||
|
||||
For detailed feature and function of original Casio Basic, following site is referenced;
|
||||
e-Gadget - Programming Calculator by Krtyski
|
||||
https://egadget.blog.fc2.com/
|
||||
(almost contents are in Japanese).
|
||||
|
||||
http://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
https://www.planet-casio.com/Fr/forums/lecture_sujet.php?id=15240
|
||||
There opinions were very useful.
|
||||
|
||||
I am grateful for everyone's cooperation.
|
||||
|
||||
by sentaro21
|
||||
|
||||
===============================================================================
|
||||
related link
|
||||
===============================================================================
|
||||
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
https://egadget.blog.fc2.com/blog-entry-630.html (part1)
|
||||
https://egadget.blog.fc2.com/blog-entry-658.html (part2)
|
||||
https://egadget.blog.fc2.com/blog-entry-664.html (part3)
|
||||
|
||||
http://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
https://www.planet-casio.com/Fr/forums/lecture_sujet.php?id=15240
|
||||
|
||||
===============================================================================
|
||||
Licensing
|
||||
===============================================================================
|
||||
This software is free software, in accordance with GPLv2.
|
|
@ -0,0 +1,622 @@
|
|||
Veuillez consulter ce site créé par Krtyski. (Administrateur du gadget électronique)
|
||||
http://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
Ce site et le texte suivant ont été traduits par Krtyski (administrateur du gadget électronique) & Lephenixnoir (administrateur de Planet-Casio).
|
||||
Merci beaucoup pour votre aide.
|
||||
|
||||
===============================================================================
|
||||
|
||||
Complément Casio Basic Interpreter (&Compiler) Version 1.x beta
|
||||
|
||||
copyright (c) 2015-2017-2020 de sentaro21
|
||||
courriel sentaro21@pm.matrix.jp
|
||||
|
||||
derničre mise ŕ jour par sentaro21 le 9/2/2020
|
||||
===============================================================================
|
||||
|
||||
** Si vous pensez que vos programmes Casio Basic ne tournent pas assez vite, C.Basic peut vous libérer de cette frustration! **
|
||||
|
||||
Commencez avec les programmes Casio Basic authentiques, puis profitez de commandes étendues que Casio Basic seul ne peut pas exécuter.
|
||||
|
||||
- Actuellement, **C.Basic** (interpréteur de base) fonctionne sur les modčles fx-9860G (SH3), fx-9860GII (SH3) et fx-9860GII (SH4A), mais la prise en charge de Prizm fx-CG10 et fx-CG20 est planifiée.
|
||||
- **C.Basic** deviendra un compilateur Casio Basic "**C:Basic**", qui exécutera des programmes beaucoup plus rapidement que C.Basic (10 fois son apparence).
|
||||
|
||||
Toutes les instructions prises en charge par C.Basic sont répertoriées dans les fichiers `" Command_List.txt "` et `" Manual_EN.txt "` inclus dans le package de distribution.
|
||||
|
||||
|
||||
## Avantages
|
||||
|
||||
- C.Basic est principalement compatible avec les produits Casio Basic authentiques.
|
||||
- Les programmes sont exécutés au moins 10 fois plus rapidement dans C.Basic.
|
||||
- Les éditeurs de listes et de fichiers de C.Basic sont plus faciles ŕ utiliser que les habituels.
|
||||
- Peut exécuter des programmes ŕ partir de la mémoire de stockage / mémoire principale et supporte les structures de sous-dossiers.
|
||||
- Certaines commandes Casio Basic sont étendues pour davantage de fonctionnalités.
|
||||
- Commandes nouvellement implémentées pour une programmation plus puissante et plus flexible.
|
||||
|
||||
## Les inconvénients
|
||||
|
||||
- C.Basic ne couvre pas toutes les commandes de base d'origine.
|
||||
- Les calculs ne donnent pas les męmes résultats que l'interpréteur habituel car C.Basic utilise une virgule flottante double précision au lieu de BCD ŕ virgule fixe.
|
||||
- C.Basic stocke les fichiers PICT dans la mémoire de stockage, ce qui les ralentit (du moins jusqu'ŕ la version 0.87, qui utilise la zone de mémoire de la mémoire principale).
|
||||
- Il doit y avoir des bugs, malheureusement ^^ Merci de nous fournir un rapport de bogue si vous en trouvez.
|
||||
|
||||
|
||||
# # Presque compatible avec la vanille Casio Basic
|
||||
|
||||
Notre objectif est une compatibilité sans faille, mais certaines différences sont intentionnelles:
|
||||
|
||||
- Les commandes d'entrée `?` et `??` `sont affichées sur une seule ligne. L'affichage d'une chaîne de plus de 21 caractčres entraînera un défilement horizontal au lieu d'un retour ŕ la ligne.
|
||||
- Quand une commande d'esquisse graphique est suivie d'une commande ŕ instructions multiples `:`, l'écran n'est pas actualisé.
|
||||
- La durée du programme est affichée ŕ la fin du programme. Cette fonction peut ętre déclenchée dans la page de configuration.
|
||||
- Les délimiteurs de commentaires `'` sont autorisés avant les retours ŕ la ligne et Disps (sortie), et `:` peuvent ętre inclus dans la chaîne de commentaire.
|
||||
|
||||
C.Basic intčgre également les fonctionnalités conviviales de fx-5800P:
|
||||
|
||||
- C.Basic supporte une commande `"?A"` comme fx-5800P, par opposition ŕ fx-9860G / fx-9860GII qui ne supporte que `"?->A"`.
|
||||
- La commande de sortie de chaîne `" "` est entičrement compatible avec le fx-5800P, ce qui en fait un différent du fx-9860G / fx-9860GII. Voir [Sujet] (http://egadget.blog.fc2.com/blog-entry-520.html) pour plus de détails.
|
||||
|
||||
|
||||
======= ATTENTION !!! =========
|
||||
Nous ne pensons pas que C.Basic pourrait endommager votre calculatrice, mais la mémoire principale pourrait tout de męme ętre endommagée ou détruite de maničre inattendue, ce qui nécessiterait une réinitialisation complčte de la mémoire. Par conséquent, il est fortement recommandé de sauvegarder vos données de mémoire principale et de mémoire de stockage. Sachez que vous ne devez utiliser C.Basic qu'ŕ vos risques et périls.
|
||||
===============================
|
||||
|
||||
======= Décharge de garantie =========
|
||||
L’utilisation de C.Basic et C: Basic (ci-aprčs SOFTWARE) est ŕ la seule risque de l’utilisateur. Tous les matériaux, informations, produits, logiciels, programmes et services fournis sont fournis «en l’état», sans aucune garantie. Les créateurs de LOGICIEL et d’équipe d’assistance fournissant des documents d’assistance, un site Web d’assistance, des programmes d’information et des exemples de programmes (ci-aprčs «ÉQUIPE DE DÉVELOPPEMENT») déclinent expressément toutes les garanties expresses, implicites, statutaires ou autres, y compris, sans limitation, les garanties de qualité marchande, d'adéquation ŕ un usage particulier et de non-violation des droits de propriété et des droits de propriété intellectuelle. Sans aucune limitation, DEVELOPMENT TEAM ne garantit pas que le développement du LOGICIEL sera ininterrompu, rapide, sécurisé ou sans erreur.
|
||||
======================================
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
# Démarrer C.Basic
|
||||
|
||||
Pour démarrer ** C.Basic **, appuyez sur `[MENU]`, sélectionnez l'icône C.Basic, puis appuyez sur `[EXE]`.
|
||||
|
||||
Il existe deux maničres de copier un fichier de programme (fichier `g1m`) développé pour l'interpréteur Casio Basic d'origine dans la liste des fichiers en C.Basic:
|
||||
|
||||
## Utilisation du gestionnaire de mémoire pré-installé
|
||||
|
||||
- Pour démarrer le gestionnaire de mémoire, appuyez sur `[MENU]`, sélectionnez l'icône du gestionnaire de mémoire et appuyez sur `[EXE]`.
|
||||
- Appuyez sur `[F1]` pour afficher le contenu de la mémoire principale.
|
||||
- Déplacez le curseur vers le bas sur `<PROGRAM>` et appuyez sur `[EXE]`. Vous devriez maintenant voir la liste de tous les programmes Basic Casio actuellement installés pour l'interpréteur habituel.
|
||||
- Sélectionnez le fichier programme que vous souhaitez copier.
|
||||
- Appuyez sur `[F1] (SEL)` puis `[F2] (COPY)`.
|
||||
- Sélectionnez `" ROOT "`, appuyez sur `[EXE]`; la calculatrice vous demandera un nom de fichier.
|
||||
- Entrez un nom de fichier approprié ou simplement «A», puis appuyez sur «[EXE]».
|
||||
- Appuyez sur la touche `[MENU]` pour revenir au menu principal.
|
||||
- Démarrer C.Basic.
|
||||
- Dans la liste des fichiers, sélectionnez le nom que vous venez d'entrer, appuyez sur `[F6]` puis `[F2] (REN)`.
|
||||
- On vous demandera `[Renommer le nom du fichier?]` Et le nom du fichier d'origine sera affiché (męme si vous avez tapé le signe "" A "`). Appuyez sur `[EXE]`.
|
||||
- Maintenant, le nom du fichier a été corrigé.
|
||||
|
||||
## Utilisation du logiciel PC Link (FA-124)
|
||||
|
||||
FA-124 est un logiciel de liaison PC inclus dans les packages de fx-9860G et fx-9860G II. Pour des instructions détaillées, veuillez vous reporter ŕ son manuel.
|
||||
|
||||
Une fois que vous avez téléchargé le fichier source d'un programme (fichier `g1m`), vous pouvez utiliser le logiciel de liaison PC pour le copier dans la liste des fichiers de C.Basic.
|
||||
|
||||
=================================================================================
|
||||
Guide rapide - Environnement de développement de C.Basic
|
||||
=================================================================================
|
||||
---------------------------------------------------------------------------------
|
||||
Page de liste de fichiers
|
||||
---------------------------------------------------------------------------------
|
||||
- [UP] Déplace le curseur vers le fichier précédent.
|
||||
- [DOWN] Déplace le curseur sur le fichier suivant.
|
||||
En appuyant sur A ŕ Z, le curseur passe ŕ un nom de fichier commençant par l'alphabet enfoncé.
|
||||
Cette fonctionnalité est compatible avec fx-5800P mais pas avec fx-9860G / fx-9860GII.
|
||||
En appuyant sur [.] passez ŕ un nom de fichier commençant par "~".
|
||||
En appuyant sur [EXP(x10)] la touche pour accéder au haut de la liste des dossiers.
|
||||
|
||||
- [F1] (EXE) Exécuter le fichier sélectionné.
|
||||
- [F2] (EDIT) Édite le fichier sélectionné.
|
||||
- [F3] (NEW) Créer un nouveau fichier.
|
||||
- [F4] (COPY) Copie le fichier sélectionné.
|
||||
- [F5] (DEL) Supprimez le fichier sélectionné.
|
||||
- [F6] ( > ) Permet de passer au menu suivant.
|
||||
[F1] (Texte) Convertit le fichier source sélectionné (fichier g1m) en fichier texte.
|
||||
[F2] (REN) Renomme le fichier.
|
||||
[F3] (Fav.) Définissez / réinitialisez le fichier sélectionné dans / ŕ partir de "Favori".
|
||||
[F4] (Fv.up) Déplace le fichier favori sélectionné vers le haut.
|
||||
[F5] (Fv.dw) Déplace le fichier favori sélectionné vers le bas.
|
||||
[F6] ( > ) Revient au menu précédent.
|
||||
[F1] (MK.F) Créer un nouveau dossier
|
||||
[F6] ( > ) Revient au menu précédent.
|
||||
|
||||
- [EXE] Exécuter le fichier sélectionné.
|
||||
|
||||
- [SHIFT] +
|
||||
[EXIT] (QUIT) Revenez ŕ la racine du sous-dossier.
|
||||
[GAUCHE] Contraste (ps) (* fonction interne du systčme d'exploitation)
|
||||
[RIGHT] Contraste (up) (* fonction interne du systčme d'exploitation)
|
||||
[F1] (Var) Aller ŕ la page de révision des variables.
|
||||
[F2] (Mat) Aller ŕ la page de révision des variables de mat.
|
||||
[F3] (V-W) Aller ŕ la page de révision de la valeur du paramčtre ViewWindow.
|
||||
[F4] (Pass) Définir / réinitialiser le mot de passe.
|
||||
[F6] (Debg) Démarrer le mode Debug & ouvrir la page de l'éditeur.
|
||||
|
||||
- [VARS] (page de révision des variables)
|
||||
[F1] (A<>a) Basculer l'affichage des variables majuscules et minuscules.
|
||||
[F2] (Init) Initialise toutes les variables affichées.
|
||||
[F3] (D<>I) Siwitch variables entičres et doubles.
|
||||
[F6] (>Hex/>Dec) Commute l'affichage des valeurs en Hex et Dec.
|
||||
|
||||
- [SHIFT] [MENU] (SETUP) Réglages initiaux
|
||||
[MENU] Aller ŕ la page de configuration.
|
||||
[MENU] [F6] Pop up Information sur la version.
|
||||
|
||||
- [OPTN] Définir / Réinitialiser le fichier sélectionné dans / depuis "Favori".
|
||||
|
||||
- [EXIT] Déplace le curseur vers le premier fichier de la liste.
|
||||
Lorsque le curseur est sur le premier fichier du sous-dossier, revenez ŕ la racine.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Page de l'éditeur
|
||||
-------------------------------------------------------------------------------
|
||||
Le repčre de guide affiché ŕ l'extręme droite de la page d'édition indique la position du curseur dans le fichier source.
|
||||
|
||||
- [F1] (JUMP) Affiche le sous-menu JUMP.
|
||||
[F1] (TOP) Aller ŕ la premičre ligne du fichier source.
|
||||
[F2] (BTM) Aller ŕ la derničre ligne du fichier source.
|
||||
[F3] (GOTO) Passez ŕ une ligne oů vous voulez aller.
|
||||
[F5] (SkipUp) Ignore les lignes (le nombre de lignes prédéfini est disponible dans la page de configuration) vers le haut.
|
||||
[F6] (SkipDw) Ignore les lignes (le nombre de lignes prédéfini est disponible dans la page de configuration) vers la fin.
|
||||
|
||||
- [F2] (SRC) Aller ŕ la page de recherche / remplacement de chaînes.
|
||||
- [F3] (CMD) Allez ŕ la page de sélection de commande. (c'est comme la liste des commandes fx-5800P) (mode fx-5800P)
|
||||
(MENU)) SelectCommand (mode fx-9860G)
|
||||
- [F4] (A<>a) Commutez majuscule et minuscule.
|
||||
- [F5] (CHAR) Aller ŕ la page de sélection de personnage.
|
||||
- [F6] (EXE) Exécuter un programme ou le redémarrer lorsqu'il est en pause.
|
||||
|
||||
- [SHIFT] +
|
||||
[EXIT] (QUIT) Retournez ŕ la page de la liste des fichiers.
|
||||
[GAUCHE] Contraste (ps) (* fonction interne du systčme d'exploitation)
|
||||
[RIGHT] Contraste (up) (* fonction interne du systčme d'exploitation)
|
||||
[UP] Faites défiler 1 page (6 lignes) vers le haut.
|
||||
[BAS] Faites défiler 1 page (6 lignes) jusqu'ŕ la fin.
|
||||
[F1] (Var) Aller ŕ la page Variables.
|
||||
[F2] (Mat) Aller ŕ la page Variables Mat.
|
||||
[F3] (V-W) Allez ŕ la page ViewWindow.
|
||||
(VWIN) Sélectionnez Command. (mode fx-9860G)
|
||||
[F5] (Dump) / (List) Bascule entre les affichages "Basic List" et "Hex Dump".
|
||||
[F6] (G <> T) Permet de changer d’écran de graphiques et de texte.
|
||||
|
||||
[F4] (SKTCH) Sélectionnez Command. (mode fx-9860G)
|
||||
[F4] (Dump) / (List) Affiche les affichages "Basic List" et "Hex Dump" (mode fx-5800P).
|
||||
[F5] (Dump) / (List) Bascule entre les affichages "Basic List" et "Hex Dump".
|
||||
[F6] (CHAR) Aller ŕ la page de sélection de personnage. (mode fx-9860G)
|
||||
[F6] (G <> T) Permet de changer d’écran de texte et graphique (mode fx-5800P).
|
||||
|
||||
- [OPTN] Liste de commandes contextuelle prise en charge par [OPTN] de fx-9860G / GII (mode fx-5800P)
|
||||
Sélectionnez Commande. (mode fx-9860G)
|
||||
- [VARS] Liste déroulante de liste déroulante prise en charge par [VARS] de fx-9860G / GII (mode fx-5800P)
|
||||
Sélectionnez Commande. (mode fx-9860G)
|
||||
|
||||
- [MENU] Historique de saisie de commande (ordre chronologique / ordre de fréquence d'entrée modifié par les touches gauche et droite.)
|
||||
[AC/ON] Effacer l'historique
|
||||
|
||||
- [SHIFT] [VARS] (PRGM) Liste de commande contextuelle prise en charge par [PRGM] de fx-9860G / GII.
|
||||
- [SHIFT] [MENU] (SETUP) Allez ŕ la page Setup (mode fx-5800P)
|
||||
(SETUP) Sélectionnez Command. (mode fx-9860G)
|
||||
|
||||
- [ALPH] [DEL] (UNDO) Supprimer ou coller les opérations sont restaurées dans l'état précédent. (une seule fois)
|
||||
|
||||
- [EXIT] Revenir ŕ la page précédente, annuler le mode Clip ou revenir ŕ la page de la liste des fichiers.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Page de l'éditeur de mode de débogage
|
||||
-------------------------------------------------------------------------------
|
||||
- [F1] (Cont) Continue le programme ŕ partir de la position du curseur.
|
||||
- [F2] (Trce) Tracez le programme ŕ partir de la position du curseur et revenez ŕ la page Editeur en mode débogage juste aprčs l'exécution de la commande tracée,.
|
||||
- [F3] (Step) Trace and Step Over (Commencer et suivre) ŕ partir de la position du curseur et revenir ŕ la page de l'éditeur en mode débogage juste aprčs l'exécution de la commande. Lorsque la sous-routine est exécutée, la sous-routine est exécutée jusqu'ŕ la fin.
|
||||
- [F4] (S.Out) Sortez de la position du curseur et revenez ŕ la page Editeur en mode Debug juste aprčs l'exécution de la commande. Lorsque le sursor est en sous-routine, la sous-routine est exécutée jusqu'ŕ la fin.
|
||||
- [F5] (L<>S) Basculez la page de l'éditeur et l'écran du programme en cours. Lorsque l'écran d'exécution du programme est affiché, les opérations de débogage avec [F1] - [F4] sont toujours disponibles.
|
||||
- [F6] (>) Basculez le menu Debug manu and Editor. Lorsque l'écran d'exécution du programme est affiché, appuyez sur [F6] (>) pour afficher le menu Débogage.
|
||||
- [EXIT] Revenez ŕ la page précédente, annulez le mode Clip ou revenez ŕ la page d'édition normale (pas en mode débogage).
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Écran de fonctionnement du programme
|
||||
-------------------------------------------------------------------------------
|
||||
Pendant le programme est en cours d'exécution;
|
||||
|
||||
- [AC] Arręte le programme.
|
||||
[EXIT] Aller ŕ l'éditeur en mode débogage. Le curseur se situe au point de rupture.
|
||||
[Gauche] Allez ŕ l'éditeur en mode débogage. Le curseur se situe au point de rupture.
|
||||
[F1] Reprendre le programme.
|
||||
[EXE] Reprendre le programme.
|
||||
Quand le programme est arręté par la commande Disps (- Disp - est affiché ŕ l’écran);
|
||||
|
||||
- [SHIFT] +
|
||||
[F1] (Var) Aller ŕ la page des variables
|
||||
[F2] (Mat) Aller ŕ la page des variables de tapis
|
||||
[F3] (V-W) Aller ŕ la page ViewWindow
|
||||
[F6] (G <> T) Écran Changer graphisme et texte
|
||||
- [EXE] Reprendre le programme.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Écran Mat / List Editor
|
||||
-------------------------------------------------------------------------------
|
||||
[Écran Mat / List / Vct (la méthode d’opération est commune.)
|
||||
(Le tapis que vous avez obtenu en adressant la marque * en le listant.)
|
||||
|
||||
- [F1] (DEL) Supprimer un tapis / une liste.
|
||||
- [F2] (DEL-ALL) Supprimer tout Mat / Liste.
|
||||
- [F3] (DIM) Définissez la dimension, la taille de l'élément, une valeur initiale d'index du Mat / List.
|
||||
- [F4] (INITIAL) Initialise tous les éléments du Mat / List of selected.
|
||||
- [F5] (Mat#/Lst#/Vct#) Sélectionnez un numéro et sautez.
|
||||
- [F6] (A<>a) Commutez majuscule et minuscule.
|
||||
|
||||
- [EXE] Entrez dans l'écran d'édition Mat / List. (détaillé plus tard)
|
||||
|
||||
- [SHIFT][F1] (Mat) Sélectionnez Mat
|
||||
- [SHIFT][F2] (Liste) Sélectionnez Liste
|
||||
- [SHIFT][F3] (Vct) Sélectionnez Vct
|
||||
|
||||
- [OPTN] Commutateur s’affichant entre Mat et List.
|
||||
- [VARS] Commutateur montrant entre Mat et Vct.
|
||||
|
||||
- [LEFT] backword 26.
|
||||
- [RIGHT] mot d’ordre 26.
|
||||
|
||||
- [SHIFT]+[UP/DOWN] défilement de page
|
||||
|
||||
[Écran d'édition Mat / List]
|
||||
[SHIFT]+[8] (CLIP) Vous pouvez extraire toutes les données Mat / List dans le tampon de clips.
|
||||
[SHIFT]+[9] (PASTE) Vous pouvez coller des données Mat / List ŕ partir du tampon de clips.
|
||||
|
||||
|
||||
(mode d'édition de valeur numérique)
|
||||
- [F1] (EDIT) Modifie l'élément du Mat / List.
|
||||
- [F2] (GO) Aller ŕ l'élément.
|
||||
- [F3] (INITIAL) Initialise tous les éléments.
|
||||
- [F4] (>x,y / >m,n) Changement d'indication [m,n]/[x,y].
|
||||
|
||||
- [SHIFT]+[F5] ou [F5] Modifier l'affichage décimal <> binaire. (uniquement pour nybble (4 bits), octet (1 octet), le mot (2 octets))
|
||||
- [SHIFT]+[F6] ou [F6] Change l’affichage décimal <> hexadécimal. (autre que 1 bit et un nombre complexe (16 octets), le double (8 octets) affiche uniquement les données internes)
|
||||
|
||||
- [SHIFT]+[F2] ou [OPTN] Passer ŕ l'éditeur de points.
|
||||
- [SHIFT]+[F3] ou [VARS] Passer ŕ l'affichage de la chaîne de caractčres.
|
||||
|
||||
Seulement comme pour ce qui suit, mode g3m (sauf le bit / liste 1 bit)
|
||||
-[DÉCALAGE]
|
||||
[5] Saisissez une couleur de 16 bits différente de celle avec une couleur de 4 bits dans le quartet (4 bits).
|
||||
[6] Entrez une couleur de 16 bits. (sauf le nibble (4 bits) Mat / List)
|
||||
|
||||
|
||||
(éditeur de points)
|
||||
traiter la valeur de chaque élément du tapis comme un code de couleur.
|
||||
blanc = 1, noir = 0 avec 1 bit Mat et le mode g1m.
|
||||
C'est une couleur de 4 bits dans le nibble (4 bits Mat).
|
||||
|
||||
- [F1] (0<>1) Modifiez la valeur de l'élément avec 0 <> 1. (Mode 1 bit Mat et g1m)
|
||||
- [F1] Passez ŕ la couleur affichée par le menu de fonctions. (autre que le bit 1 Mat du mode g3m)
|
||||
* Il change en noir comme męme couleur
|
||||
|
||||
Seulement comme pour ce qui suit, mode g3m (sauf le bit / liste 1 bit)
|
||||
-[DÉCALAGE]
|
||||
[5] Saisissez une couleur de 16 bits différente de celle avec une couleur de 4 bits dans le quartet (4 bits).
|
||||
[6] Entrez une couleur de 16 bits. (sauf le nibble (4 bits) Mat / List)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Rechercher / Remplacer du texte
|
||||
-------------------------------------------------------------------------------
|
||||
[Recherche chaîne de caractčres]
|
||||
-Vous entrez une chaîne de caractčres, puis appuyez sur [F1] (SEARCH) ou sur [EXE].
|
||||
-Vous appuyez ŕ nouveau sur [F1] (SEARCH) ou [EXE] pour rechercher ensuite.
|
||||
- [F6] (RETRY) Permet de revenir ŕ l'écran de recherche.
|
||||
|
||||
[Remplacer la chaîne de caractčres]
|
||||
-Vous saisissez une chaîne de caractčres avant le remplacement, puis appuyez sur [F2] (REPL).
|
||||
-Alors vous entrez une chaîne de caractčres aprčs le remplacement et appuyez sur [F1] (SEARCH), [F2] (REPL) ou [EXE].
|
||||
-Vous appuyez ŕ nouveau sur [F1] (SEARCH) ou [EXE] pour rechercher ensuite.
|
||||
-Vous appuyez sur [F2] (REPL) pour le remplacer.
|
||||
-Vous appuyez sur [F3] (ALL) ou [F4] (ALL +) pour tout remplacer. Je pousse [AC] pour l'arręter.
|
||||
-Vous n’affichez pas la progression en cours de remplacement dans [F4] (ALL+).
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Spécification incompatible avec l'original CasioBasic
|
||||
-------------------------------------------------------------------------------
|
||||
Notre objectif est la compatibilité avec les produits Casio Basic authentiques, mais pas ŕ 100%.
|
||||
|
||||
Une ligne de saisie par la commande "?" et "? ->" ne sont que sur une seule ligne. Une chaîne de caractčres de plus de 21 colonnes est toujours affichée sur la ligne horizontale unique par défilement et non sur plusieurs lignes.
|
||||
Lorsque ":" (commande ŕ instructions multiples) vient juste aprčs la commande de croquis, l'écran graphique n'est pas redessiné.
|
||||
La durée du programme est affichée aprčs la fermeture du programme. Cette fonction peut ętre activée ou désactivée dans la page de configuration.
|
||||
Un séparateur de texte de commentaire 'est disponible pour les commentaires avant Carriage Return ou Disps (sortie), mais ":" (commande ŕ instructions multiples) peut ętre inclus dans la chaîne commentée.
|
||||
|
||||
C.Basic intčgre également la fonctionnalité conviviale de fx-5800P;
|
||||
|
||||
C.Basic supporte un script "? A" supporté par fx-5800P. Ceci n'est pas supporté par fx-9860G / fx-9860GII (le script "? -> A" seulement est supporté).
|
||||
La fonction de sortie de chaîne "" est totalement compatible avec fx-5800P dans les détails mais pas exactement compatible avec fx-9860G / fx-986GII. Voir les sujets en détail.
|
||||
|
||||
===============================================================================
|
||||
Menu de Configuration
|
||||
===============================================================================
|
||||
Options compatibles avec le Basic Casio :
|
||||
|
||||
Angle :Deg/Rad/Gra
|
||||
Complex Mode:Real/a+bi/rtheta
|
||||
Draw Type :Connect/Plot
|
||||
Coord :on/off
|
||||
Grid :on/off/Line
|
||||
Axes :on/off/Scale
|
||||
Label :on/off
|
||||
Derivative :on/off
|
||||
Background :None / Pict1-20
|
||||
Plot/LineCol:Black etc.
|
||||
Sketch Line :Normal/Thick/Broken/Dot/Thin
|
||||
|
||||
|
||||
Nouvelles options fournies par C.Basic :
|
||||
-------------------------------------------------------------------------------
|
||||
Display: Fix / Sci / Nrm / Eng
|
||||
Le nombre maximal de chiffres possibles est augmenté ŕ 15. Indiquer 0 le pousse ŕ 16.
|
||||
Nrm1 et Nrm2 sont identiques au Basic Casio et affichent jusqu'ŕ 10 chiffres.
|
||||
Nrm1: -0.01<x<0.01
|
||||
Nrm2: -0.000000001<x<0.000000001
|
||||
Indiquer un autre paramčtre (0 ou 3..15) modifie le nombre maximum de chiffres.
|
||||
Other number (0 or 3 - 15) is to set max number of digit.
|
||||
Eng peut ętre configuré ŕ Eng Off, Eng On (/E) et séparateur de milliers (/3)
|
||||
Commandes liées : Eng, Norm, Fix, Sci
|
||||
-------------------------------------------------------------------------------
|
||||
Exp Display : E / Stdx10 / Allx10
|
||||
sélectionnez le caractčre de l'exposant.
|
||||
E: -1.23e99 caractčre précédent.
|
||||
Stdx10: -1.23(x10)99 nouveau caractčre uniquement taille de police standard.
|
||||
Allx10: -1.23(x10)99 nouveau caractčre de toute la taille de la police.
|
||||
|
||||
- Commandes lieés : '#exp 0 // caractčre précédent.
|
||||
'#exp 1 // nouveau caractčre uniquement taille de police standard.
|
||||
'#exp 2 // new character all font size.
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
Aide ŕ la commande dans l'éditeur
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : On/Off
|
||||
Activer cette option restaure automatiquement, aprčs la sortie d'un programme, tous les paramčtres du Basic Casio ŕ leur valeur d'avant l'exécution.
|
||||
-------------------------------------------------------------------------------
|
||||
Command Input : C.Basic/Standard/>5800/>9800
|
||||
Choisit le mode d'entrée de commandes : Standard (fx-9860G) ou C.Basic (fx-5800P).
|
||||
Vous pouvez choisir le fonctionnement de "" : soit fx-5800P, soit fx-CG.
|
||||
- Commandes lieés : '#58
|
||||
'#98
|
||||
-------------------------------------------------------------------------------
|
||||
[X]character : [0x90]/[X]
|
||||
Pour sélectionner le caractčre de la touche [X/Theta/T].
|
||||
-------------------------------------------------------------------------------
|
||||
Max Mem Mode : on/off
|
||||
Utiliser toute la mémoire disponible.
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
Activer l'utilisation de la police externe.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : On/Off
|
||||
Activer l'éditeur de polices externes.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit GB Font : On/Off/Full
|
||||
Pour sélectionner la police GB affichée sur l’éditeur.
|
||||
Off : normal. pas afficher la police GB.
|
||||
On : affichage de la police de caractčres sans F7xx, F9xx, E5xx, E6xx, E7xx
|
||||
Full: affiche toutes les polices GB.
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize : Standard/Mini/MiniMini/MiniMiniFX /+Fixed pitch/+Gap
|
||||
Sélectionne la taille de police de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize : Standard/Mini/Mini_rev/Mini UnderCursor/Mini_rev_UnderCSR
|
||||
Sélectionne la taille de police de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
activer l'indent automatique dans l'éditeur.
|
||||
Off: diable auto indent.
|
||||
1 : Définir la largeur de l'endent eden à 1.
|
||||
2 : Définir la largeur de l'endente à 1.
|
||||
4 : Définir la largeur de l'endent eden à 1.
|
||||
Enregistrer : supprimez les espaces vides, y compris les indents lors de l'enregistrement du programme. (à compatible avec Basic Casio)
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum :on/off
|
||||
Configure l'affichage des numéros de ligne.
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar : List / reverseL / Thick L
|
||||
Sélectionne le mode d'affichage des listes.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-backCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
Sélectionne le couleur de fond de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-baseCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
Sélectionne le couleur de base de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
E-NumericCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
Sélectionne le couleur numérique de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommandCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select command color of editor.
|
||||
Sélectionne le couleur de commande de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Ed-QuotColor : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
Sélectionne le couleur des chaînes de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommentCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
Sélectionne le couleur des commentaires de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
E-LineNumCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White
|
||||
select line number color of editor.
|
||||
Sélectionne le couleur du numéro de ligne de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto OverClk : on/off
|
||||
Régler l'overclockage automatique pour CG10/20.
|
||||
-------------------------------------------------------------------------------
|
||||
Heap RAM Size : 96KB/117KB/127KB/SIZE
|
||||
Définissez la taille de segment maximale de l'utilisation C.Basic.
|
||||
(* Vous ne pouvez pas le changer au moment de l'édition du programme.)
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidden RAM : on / off
|
||||
Utiliser la mémoire supplémentaire cachée.
|
||||
-------------------------------------------------------------------------------
|
||||
HiddenRAM Init : on / off
|
||||
Initialiser la mémoire supplémentaire cachée avant l'exécution.
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No : 20~99
|
||||
Lorsque la mémoire cachée est utilisée, le nombre de Picture peut ętre augmenté.
|
||||
(*) Changer cette valeur réinitialise les Picture, matrices et listes !
|
||||
(*) Ce paramčtre n'est pas valide.
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No : 52~1040
|
||||
Lorsque la mémoire cachée est utilisée, le nombre de listes peut ętre augmenté.
|
||||
(*) Changer cette valeur réinitialise les Picture, matrices et listes !
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on / off
|
||||
Active le debugger lorsque [AC/ON] est utilisé pour interrompre le programme.
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on / off
|
||||
Afficher une popup quand le debugger se ferme.
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop : on / off
|
||||
Accepte ou refuse les interruptions par la touche [AC/ON].
|
||||
Quand cette option est ŕ off, vous ne pouvez pas quitter un programme en appuyant sur [AC/ON].
|
||||
- Commandes liées : '#Break 0 '#Break 1
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp : on / off /reset /%HR
|
||||
Affiche le temps d'exécution du programme une fois le programme terminé.
|
||||
Le timer est lancé ŕ la premičre ligne du programme. Les commandes ? et Disps le réinitialisent.
|
||||
Les fonctions Getkey1/2 mettent le timer en pause et le redémarrent ensuite.
|
||||
En cas de reset, le timer est réinitialisé est reprend au premier appel de Getkey1/2.
|
||||
%HR: Utilise le timer ŕ 1/32768s (SH4A uniquement)
|
||||
- Commandes liées : '#GetKeyC '#GetKeyR
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check : on / off
|
||||
Vérifie strictement la correspondance entre chaque "If" et chaque "IfEnd".
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak : on / off
|
||||
Active ou désactive la commande ACBreak.
|
||||
- Commandes liées : ACBreak
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return : None/ F1/ EXE/ F1&EXE
|
||||
Force le retour ŕ l'éditeur lors d'une interruption avec [AC/ON].
|
||||
(Exemple) Retour de force réglé à [F1]key
|
||||
-Liste de fichiers→[F1](EXE)→[AC]→[EXIT]... Retourne à la liste de fichiers.
|
||||
-Liste de fichiers→[EXE][AC]→[EXIT] ...... Retourne à l'éditeur.
|
||||
-Liste de fichiers→[F1](EXE]→[AC]→[EXE](restart)→[AC]→[EXIT] ...... Retourne à la liste de fichiers.
|
||||
(L'opération dépend de la clé qui est pressée en premier.)
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time : 25 ms - 1000 ms (valeur par défaut : 500 ms)
|
||||
Durée avant qu'une touche soit répétée pour la premičre fois (multiple de 25 ms)
|
||||
-------------------------------------------------------------------------------
|
||||
Key Rep time : 25 ms - 500 ms (valeur par défaut : 125 ms)
|
||||
Durée avant qu'une touche qui a déjŕ été répétée soit répétée de nouveau (multiple de 25 ms)
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down : 1 - 9999
|
||||
Nombre d'écrans parcourus pour chaque pression de SkipUp ([SHIFT][UP]) ou SkipDown ([SHIFT][DOWN]) dans l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode : [m,n] / [X,Y]
|
||||
Sélectionne le format d'affichage de matrices dans l'éditeur de matrices.
|
||||
Les formats [m,n] et [X,Y] sont transposés l'un de l'autre. Ce n'est qu'un paramčtre d'affichage, les données de la matrice restent stockées dans l'ordre original.
|
||||
-------------------------------------------------------------------------------
|
||||
Matrix base : 0 / 1
|
||||
Indice de début pour la numérotation des éléments de matrices. Il faut ętre en mode 0 pour utiliser la premičre ligne et la premičre colonne de la VRAM.
|
||||
- Commandes liées : '#Mat 0, '#Mat 1
|
||||
-------------------------------------------------------------------------------
|
||||
DATE : 2017/01/17 TUE
|
||||
Change la date de la RTC (horloge du systčme). Le jour de la semaine est calculé automatiquement.
|
||||
-------------------------------------------------------------------------------
|
||||
TIME : 23:59:59
|
||||
Change l'heure de la RTC.
|
||||
- Commandes liées : DATE, TIME
|
||||
-------------------------------------------------------------------------------
|
||||
Root folder:/ (Seul le Graph 35+E II est valide.)
|
||||
[F1]: pour définir le dossier racine.
|
||||
[F2]: pour définir le dossier actuel.
|
||||
- Commandes liées :
|
||||
'#R/ // pour définir le dossier racine.
|
||||
'#R. // pour définir le dossier actuel.
|
||||
-------------------------------------------------------------------------------
|
||||
Favorite Col : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16bit Color
|
||||
Sélectionne le couleur de fichier préférée de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file Save : on/off
|
||||
Désactive la popup de confirmation ŕ la sauvegarde dans l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save : on / off
|
||||
Permet de sauvegarder automatiquement les fichiers g1m quand les programmes textes sont édités.
|
||||
-------------------------------------------------------------------------------
|
||||
Direct GB cnvt : on/off
|
||||
Définir le code GB sans conversion de texte.
|
||||
(* conversion supporte le mode GB de l'éditeur.)
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode: S.Mem / Heap / Both
|
||||
- S.Mem : Les Picture sont créées dans la mémoire de stockage (petit surcoűt temporel)
|
||||
- Heap : Les Picture ne sont pas vraiment créées, juste stockée temporairement dans la RAM
|
||||
- Both : Les deux.
|
||||
- Clear : Supprime le fichier compatible Pict créé dans la mémoire de tas au démarrage du programme ŕ chaque fois.
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode: S.Mem / SD / MainMem
|
||||
Sélectionne le stockage temporaire pour le code pendant l'édition et l'exécution.
|
||||
S.Mem : Mémoire de stockage
|
||||
SD : Carte SD (Graph 95 SD uniquement)
|
||||
Main mem : Mémoire principale
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD: off / Grp / All
|
||||
Sélectionne le niveau de restriction du rafraîchissement automatique de l'écran.
|
||||
Off : Aucune restriction particuličre (comme en Basic Casio).
|
||||
Grp : Seules les commandes graphiques et ClrText, Locate, Text, LocateYX et "" provoquent le rafraîchissement de l'écran (ces exceptions sont en rétro-compatibilité avec les précédentes versions de C.Basic).
|
||||
All : Aucune commande ne rafraîchit l'écran automatiquement. PutDispDD doit ętre utilisé.
|
||||
Time : Sélectionne la durée de rafraîchissement automatiquement en unités de 1/128 s. La valeur par défaut est 3, ce qui donne environ 1/42 s de fréquence de rafraîchissement.
|
||||
Par défaut, la valeur est 0.
|
||||
- Commandes liées : RefrshCtrl, RefrshTime
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
Délai contrôlant la vitesse d'exécution globale.
|
||||
- Commandes liées : Wait
|
||||
-------------------------------------------------------------------------------
|
||||
G1M/G3M mode : auto/g3m/g1m
|
||||
Définir pour exécuter le mode par défaut.
|
||||
- Commandes liées : '#G1M, '#g1m, '#G3M, '#g3m
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode: Dbl# / Int% / CPLX
|
||||
Définit le mode de variables numériques par défaut.
|
||||
- Commandes liées: '#CBasic, '#CBASIC, '#CBINT, '#CBint '#CBCPLX '#CBcplx
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
===============================================================================
|
||||
Reconnaissance
|
||||
===============================================================================
|
||||
|
||||
Pour étudier et mettre en śuvre la spécification interne,
|
||||
"Calculatrices fx basées sur SuperH (version 20)"
|
||||
a donné des informations utiles.
|
||||
|
||||
Pour la gestion des fichiers dans C.Basic,
|
||||
"https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Compilateur C sur calcul série Casio Fx-9860 "
|
||||
a donné des informations utiles.
|
||||
|
||||
Pour les polices Kana japonaises, les données de police et la routine de sortie du site suivant sont utilisées;
|
||||
"http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html"
|
||||
|
||||
|
||||
Pour les fonctionnalités détaillées de Casio Basic d’origine, le site suivant est référencé;
|
||||
Gadget électronique - Calculatrice de programmation de Krtyski
|
||||
"https://egadget.blog.fc2.com/"
|
||||
(presque le contenu est en japonais).
|
||||
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
Leurs avis ont été trčs utiles.
|
||||
|
||||
Je suis reconnaissant pour la coopération de tous.
|
||||
|
||||
par sentaro21
|
||||
|
||||
===============================================================================
|
||||
lien connexe
|
||||
===============================================================================
|
||||
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
https://egadget.blog.fc2.com/blog-entry-630.html (part1)
|
||||
https://egadget.blog.fc2.com/blog-entry-658.html (part2)
|
||||
https://egadget.blog.fc2.com/blog-entry-664.html (part3)
|
||||
|
||||
http://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
https://www.planet-casio.com/Fr/forums/lecture_sujet.php?id=15240
|
||||
|
||||
===============================================================================
|
||||
Licence
|
||||
===============================================================================
|
||||
Ce logiciel est un logiciel libre, conforme ŕ GPLv2.
|
|
@ -0,0 +1,721 @@
|
|||
===============================================================================
|
||||
|
||||
アドイン版 Casio Basic Interpreter (& Compiler) for CG ver 1.x β版
|
||||
|
||||
copyright(c)2015-2017-2020 by sentaro21
|
||||
e-mail sentaro21@pm.matrix.jp
|
||||
|
||||
最終更新日:2020/2/9(JST)
|
||||
最終更新者:Krtyski/sentaro21
|
||||
|
||||
|
||||
===============================================================================
|
||||
|
||||
Casio Basic インタプリタのアドイン版、略してC:Baisc(現状インタプリタのみなのでC.Basic)のCG版のとりあえず動く版です。
|
||||
|
||||
・特徴
|
||||
純正Casio Basic互換(を目指しています)。
|
||||
純正Casio Basicよりも高速動作(10倍以上)。
|
||||
操作方法はほぼCasio Basic準拠です。
|
||||
純正Casio Basic互換の新規ソースファイルの作成、編集が可能です。
|
||||
ソースファイルはメインメモリではなくストレージメモリに置かれます。(サブフォルダは1階層まで対応しています。)
|
||||
純正Casio Basic上位互換で独自拡張機能を随時追加していきます。
|
||||
fx-9860Gシリーズのg1mと、fx-CGシリーズのg3mに対応しています。
|
||||
|
||||
・欠点
|
||||
現在のところ、CG50のみフル動作可能でCG10/20では一部機能が動作しませんが将来的には両機種完全対応します。
|
||||
純正Casio Basicのサブセットです。全部の命令が使えません。というか一部の基本的な命令のみのサポートです。
|
||||
数値演算はCの倍精度2進演算により精度&誤差が若干違います。
|
||||
PICTがメインメモリ上だけで使えます。
|
||||
現状とりあえず動く版なので間違いなくバグが大量に残っています(^^;…ので、バグ報告&追加機能の要望などよろしくお願いします。
|
||||
|
||||
|
||||
========================== 注意!!! ============================================
|
||||
このツールの使用によって電卓が破壊される可能性はまず無いと思いますが、
|
||||
予期せぬバグ等でメインメモリが破壊されオールリセットになる可能性はあります。
|
||||
このツールの使用はメインメモリ&ストレージメモリのバックアップをとった上でお願いいたします。
|
||||
作者はこのツールの使用の結果においていかなる責任も負わないものとさせていただきます。
|
||||
===============================================================================
|
||||
|
||||
========================== 注意!!!その2 ======================================
|
||||
CG10/20では画面更新が遅いのでPtune2で100MHz以上に上げないと画面描画が間に合わず上手く動作しません。
|
||||
その場合、Ptune2での[F4]プリセットではシステムエラーになる場合があります。
|
||||
ROMタイミング不足ですのでPtune2でのROMアクセスタイミングを一段階緩めて下さい。
|
||||
乗算キー[X]を押すとROMタイミングが増えます。
|
||||
(デフォルトクロックで起動した場合は自動的にオーバークロックします。(58MHz->118MHz)
|
||||
===============================================================================
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
C.Basic の起動
|
||||
-------------------------------------------------------------------------------
|
||||
起動すると、ファイルリスト画面になります。ここでファイルを選択します。
|
||||
|
||||
純正Casio Basicで既に作成しているBasicファイルを、このファイルリストに追加するには、
|
||||
メインメモリにある元のBasicファイルをストレージメモリへコピーします。
|
||||
|
||||
(単一ファイルに限ります。複数ソースファイルをまとめたファイルは未対応です。)
|
||||
|
||||
Ver 0.53以降、MCS(メインメモリ)のプログラムファイルを使用できるようになりました。
|
||||
※セットアップでメインメモリを選択すると、ファイルの保存先、ファイル操作はメインメモリのプログラムファイルが対象になります。
|
||||
※ファイルの保存時やコピー時はメインメモリからストレージ、ストレージからメインメモリへと保存先を変更することが可能です。
|
||||
|
||||
===============================================================================
|
||||
クイックマニュアル - C.Basic の開発環境
|
||||
===============================================================================
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ファイルリスト画面(Casio Basic準拠っぽく…ちょっと違っています)
|
||||
-------------------------------------------------------------------------------
|
||||
-[UP] 一つ前のファイルを選択します。
|
||||
-[DOWN] 一つ後のファイルを選択します。
|
||||
(ファイル選択画面ではA-Zのキーを押すとそれを先頭とするファイルにジャンプします。fx-5800P/fx-CG準拠です)
|
||||
([.]キーで"~"を先頭とするファイルにジャンプします。)
|
||||
([EXP(x10)]キーでフォルダリストの先頭(ファイルリストの最後の次)にジャンプします。)
|
||||
|
||||
-[F1] (EXE) 選択ファイルを実行します。
|
||||
-[F2] (EDIT) 選択ファイルを編集します。
|
||||
-[F3] (NEW) 新規ファイルを作成します。
|
||||
-[F4] (COPY) ファイルをコピーします。
|
||||
-[F5] (DELETE) 選択ファイルを削除します。
|
||||
-[F6] ( > ) 次のメニューに移動します。
|
||||
[F1] (>txt/CONVERT) 選択されたBasicソースファイルをテキストファイル⇔g1mファイル/g3mファイル/MCSの間で変換します。
|
||||
[F2] (RENAME)ファイル名を変更します。
|
||||
[F3] (Fav.) 選択ファイルをお気に入りに追加、解除します。
|
||||
[F4] (Fv.↑) お気に入りを一つ上に移動します。
|
||||
[F5] (Fv.↓) お気に入りを一つ下に移動します。
|
||||
[F6] ( > ) 次のメニューに移動します。
|
||||
[F1] (MKEFLDR) フォルダを作成します。
|
||||
[F2] (RENFLDR) フォルダ名を変更します。
|
||||
[F6] ( > ) 前のメニューに移動します。
|
||||
|
||||
-[EXE] プログラムを実行します。
|
||||
|
||||
-[SHIFT]
|
||||
[EXIT](QUIT) サブフォルダからルートに戻ります。
|
||||
[UP] お気に入りを一つ上に移動します。
|
||||
[DOWN] お気に入りを一つ下に移動します。
|
||||
[F1] (Var) 変数画面
|
||||
[F2] (MAT) Mat変数画面
|
||||
[F3] (V-WIN)ViewWindow表示
|
||||
[F4] (Pass) パスワード設定/解除
|
||||
[F6] (Debug) デバッグモードでエディタを起動します。
|
||||
|
||||
-[VARS] 変数画面
|
||||
[F1] (A<>a) 大文字変数と小文字変数、任意英数字名変数の表示切替え
|
||||
[F2] (INITIAL) 表示変数の一括初期化
|
||||
[F3] (D<>I) 整数変数と実数変数の表示切替え
|
||||
[F6] (->Hex/->Dec) 16進数/10進数表示に切り替え
|
||||
[SHIFT]+[UP]/[DOWN] 1ページずつスクロール
|
||||
※ローカル変数の場合は=を反転表示します。
|
||||
|
||||
-[SHIFT]
|
||||
[MENU] (SETUP) 初期設定
|
||||
[F6] バージョン情報表示
|
||||
|
||||
-[OPTN] 選択ファイルをお気に入りに追加、解除します。
|
||||
|
||||
-[EXIT] ファイルリストの最初に戻ります。
|
||||
すでにファイルリストの最初の場合はルートに戻ります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
エディタ編集画面(Casio Basic準拠っぽく…ちょっと違っています)
|
||||
-------------------------------------------------------------------------------
|
||||
・ファイル内のカーソルの現在位置を示すスクロールバーが右端に表示されます。
|
||||
|
||||
-[F1] (JUMP) ジャンプサブメニューを表示します。
|
||||
[F1] (TOP↑) ファイル先頭にジャンプします。
|
||||
[F2] (BTM↓) ファイル末尾にジャンプします。
|
||||
[F3] (GO) ファイルの任意の行にジャンプします。(画面上での見た目上での行数です)
|
||||
[F5] (Skip↑) (セットアップで設定された)ページ数スキップアップします。
|
||||
[F6] (Skip↓) (セットアップで設定された)ページ数スキップダウンします。
|
||||
|
||||
-[F2] (SEARCH) 文字列サーチ/置換モードに入ります。
|
||||
-[F3] (COMMAND) コマンド選択画面(fx-5800P準拠モード)(ここで選択できるコマンドがサポートされています)
|
||||
(MENU) コマンド選択モード(fx-CG/9860G準拠モード)
|
||||
-[F4] (A<>a) 大文字小文字切り替え
|
||||
-[F5] (CHAR) キャラクタ選択画面
|
||||
-[F6] (EXE) プログラムを実行します。一時停止状態であれば再開します。
|
||||
|
||||
-[SHIFT]
|
||||
[EXIT](QUIT) ファイルリスト画面に戻ります。
|
||||
[LEFT] エディタの表示文字の大きさおよび行間隔を小さくします。
|
||||
[RIGHT] エディタの表示文字の大きさおよび行間隔を大きくします。
|
||||
[UP] (セットアップで設定された)ページ数スキップアップします。
|
||||
[DOWN] (セットアップで設定された)ページ数スキップダウンします。
|
||||
[F1] (Var) 変数画面
|
||||
[F2] (MAT) Mat変数画面
|
||||
[F3] (V-WIN) ViewWindow表示
|
||||
[F4] (Dump)/(List) Basicリスト表示/16進ダンプ表示切替(fx-5800P準拠モード)
|
||||
(SKTCH)コマンド選択モード(fx-CG/9860G準拠モード)
|
||||
[F5] (A<>a) 大文字小文字切り替え
|
||||
[F6] (G<>T) グラフィックス画面とテキスト画面の切替(fx-5800P準拠モード)
|
||||
(CHAR) キャラクタ選択画面(fx-CG/9860G準拠モード)
|
||||
|
||||
[3] Getkeyコマンドのキーコードを入力します。
|
||||
[6] カラーピッカーを起動します。
|
||||
|
||||
-[OPTN] OPTN対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[VARS] VARS対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[MENU] コマンド入力履歴(左右キーで時系列⇔入力頻度順を切り替えられます。)
|
||||
[AC/ON] 入力履歴を削除します。
|
||||
|
||||
-[SHIFT][VARS] (PRGM) PRGM対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[SHIFT][MENU] (SETUP) 各種設定 (後述)(fx-5800P準拠モード)
|
||||
[F6] バージョン情報表示(fx-5800P準拠モード)
|
||||
SETUP対応コマンド入力画面(ここで選択できるコマンドがサポートされています)(fx-CG/9860G準拠モード)
|
||||
|
||||
-[ALPHA][DEL] (UNDO) 削除とPasteを一回だけ元に戻しまします。
|
||||
|
||||
-[EXIT] サブメニューからメインメニュー、クリップモードのキャンセル、またはファイルリスト画面に戻ります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
デバッグモード編集画面 (通常エディタと違う部分)
|
||||
-------------------------------------------------------------------------------
|
||||
-[F1](Cont):カーソル位置よりプログラムを再開します。
|
||||
|
||||
-[F2](TRACE):カーソル位置よりトレース実行。コマンド実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F3](STEPS):カーソル位置よりトレース+ステップオーバー。サブルーチンの場合は一気に実行されます。ステップ実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F4](S.Out):カーソル位置よりステップアウト。サブルーチンの終了まで一気に実行します。ステップ実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F5](L<>S):エディタリスト表示とプログラム実行画面の切替をします。切替後も実行画面が維持されるので実行画面そのまま[F1]-[F4]のデバッグ動作が可能です。
|
||||
|
||||
-[F6]( > ) :デバッグメニューとエディタメニューを切り替えます。実行画面(グラフィック/テキスト)の場合はファンクションメニュー表示をします。
|
||||
|
||||
-[EXIT] サブメニューからメインメニュー、クリップモードのキャンセル、または通常エディタ画面に戻ります。
|
||||
|
||||
※デバッグモード時、ステータスラインの背景がシアンになります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
プログラム実行時(ほぼCasio Basic準拠…です)
|
||||
-------------------------------------------------------------------------------
|
||||
-[AC] プログラム実行を中止します。
|
||||
[EXIT] デバッグモードのエディット画面に戻ります。カーソルは中断箇所を示します。
|
||||
[←/→] デバッグモードのエディット画面に戻ります。カーソルは中断箇所を示します。
|
||||
[F1] プログラムに復帰します。
|
||||
[EXE] プログラムに復帰します。
|
||||
|
||||
▲一時停止コマンドで停止した時(- Disp - 表示の時)
|
||||
-[SHIFT]
|
||||
[F1] 変数画面
|
||||
[F2] Mat変数画面
|
||||
[F3] ViewWindow表示
|
||||
[F6] グラフィックス画面とテキスト画面の切り替え
|
||||
-[EXE] プログラムを再開します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
行列エディタ画面
|
||||
-------------------------------------------------------------------------------
|
||||
・行列一覧画面(操作方法はMat、List、Vct共通です。)
|
||||
※アドレス指定で確保した行列は一覧表示で*マークが付きます。
|
||||
|
||||
-[F1] (DEL) 選択されている行列/リスト/ベクトルを消去します。
|
||||
-[F2] (DEL-ALL) すべての行列/リスト/ベクトルを消去します。
|
||||
-[F3] (DIM) 行列/リスト/ベクトルの次元、要素サイズ、インデックス開始値を設定します。
|
||||
-[F4] (INITIAL) 選択されている行列/リスト/ベクトルのすべての要素を初期化します。
|
||||
-[F5] (Mat#/Lst#/Vct#) 番号を指定してジャンプします。
|
||||
-[F6] (A<>a) 大文字小文字(リストの場合は 1-26 と 27-52)を切り替えます。
|
||||
|
||||
-[EXE] 行列編集画面に入ります。(詳細後述)
|
||||
|
||||
-[SHIFT]+[F1] (>Mat) 行列一覧に切り替えます。
|
||||
-[SHIFT]+[F2] (>List) リスト一覧に切り替えます。
|
||||
-[SHIFT]+[F3] (>Vct) ベクトル一覧に切り替えます。
|
||||
|
||||
-[OPTN] Mat<>Listの切り替えをします。
|
||||
-[VARS] Mat<>Vctの切り替えをします。
|
||||
|
||||
-[LEFT] 26戻ります。
|
||||
-[RIGHT] 26進みます。
|
||||
|
||||
-[SHIFT]+[UP]/[DOWN] 1ページ分スクロールします。
|
||||
|
||||
・ 行列編集画面
|
||||
※行列編集モード時に[SHIFT]+[8](CLIP)でコピー、[SHIFT]+[9]でペースト出来ます。
|
||||
(C.Basic)形式なのでエディタにて行列データをペースト出来ます。
|
||||
※[SHIFT]+カーソルキーで改ページ出来ます。
|
||||
|
||||
(数値編集モード)
|
||||
-[F1] (EDIT) 行列の要素を編集します。
|
||||
-[F2] (GO) 要素を指定してジャンプします。
|
||||
-[F3] (INITIAL) すべての要素を初期化します。
|
||||
-[F4] (>x,y / >m,n) 表示形式を切り替えます。
|
||||
|
||||
-[SHIFT]+[F5] (>Bin / >Dec) 10<>2進数表示を切り替えます(ニブル(4ビット)、バイト(1バイト)、ワード(2バイト)型行列で有効)。
|
||||
([F5]でショートカットできます。)
|
||||
|
||||
-[SHIFT]+[F6] (>Hex / >Dec) 10<>16進数表示を切り替えます(1ビット、複素数(16バイト)型以外で有効、実数(8バイト)型は内部データをそのまま表示)。
|
||||
([F6]でショートカットできます。)
|
||||
|
||||
-[SHIFT]+[F2] (DotEd) 数値編集モード<>ドットエディタを切り替えます。 ([OPTN] でショートカットできます。)
|
||||
-[SHIFT]+[F3] (StrEd) 数値編集モード<>文字列編集モードを切り替えます。([VARS] でショートカットできます。)
|
||||
|
||||
以下、g3mモードのみ(1ビット行列を除く)
|
||||
-[SHIFT]
|
||||
[5] ニブル(4ビット)では4ビットカラー値を、それ以外では16ビットカラー値を入力します。
|
||||
[6] 16ビットカラー値を入力します。(ニブル(4ビット)行列を除く)
|
||||
|
||||
|
||||
(ドットエディタ)
|
||||
※数値編集モードとの相違点のみ説明します。
|
||||
・行列の各要素の値をカラーコードとして扱います。
|
||||
1ビット行列およびg1mモードでは0が白、1が黒です。
|
||||
ニブル(4ビット行列)では4ビットカラー値です。
|
||||
|
||||
-[F1] (0<>1) 要素の値を0<>1で切り替えます。(1ビット行列およびg1mモード)
|
||||
-[F1] ファンクションメニューに表示されている色に切り替えます。(g3mモードかつ1ビット行列以外)
|
||||
※既にその色である場合は黒に切り替えます。
|
||||
-[SHIFT]+[F1] (↓) 選択している要素の色を [F1] に設定します。(g3mモードかつ1ビット行列以外)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
文字列サーチ/置換モード
|
||||
-------------------------------------------------------------------------------
|
||||
[文字列を検索する]
|
||||
・文字列を入力し、[F1](SEARCH)または[EXE]を押します。
|
||||
・次を検索するには、再度[F1](SEARCH)または[EXE]を押します。
|
||||
・[F6](RETRY)で、検索画面に戻ります。
|
||||
|
||||
[文字列を置換する]
|
||||
・置換前の文字列を入力し、[F2](REPL)を押します。
|
||||
・次に、置換後の文字列を入力し、[F1](SEARCH)、[F2](REPL)、または[EXE]を押します。
|
||||
・次を検索するには、再度[F1](SEARCH)または[EXE]を押します。
|
||||
・置換するには、[F2](REPL)を押します。
|
||||
・すべて置換するには、[F3](ALL)または[F4](ALL+)を押します。中断するには[AC]を押します。
|
||||
[F4](ALL+)では置換の途中経過を表示しません。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
キャラクタ選択画面
|
||||
-------------------------------------------------------------------------------
|
||||
・純正より多くの文字がサポートされています。
|
||||
・[F6]でASCII、仮名、外字を入力できます。
|
||||
・[SHIFT]または[F1]~[F6]を押すことで、連続入力ができます。
|
||||
・[OPTN]でノーマルフォント<>ミニフォントを切り替えます。
|
||||
・[VARS]で選択画面で表示するフォントをC.Basic<>OSで切り替えます。
|
||||
OSのフォントで表示している間は、特殊文字をエスケープなしで入力できます。
|
||||
|
||||
(GB文字について)
|
||||
GB文字を使用できます。
|
||||
・GB文字をを使用すうるためには、SETUPページで "Edit GB Font"を "On" か "Full" に設定します。
|
||||
・その上で、[x^2]を押してGB文字入力モードに入ります。
|
||||
|
||||
-[F1] 先頭の0xA0**にジャンプします。
|
||||
-[F2] 16ページ戻ります。
|
||||
-[F3] 1ページ戻ります。
|
||||
-[F4] 1ページ進みます。
|
||||
-[F5] 16ページ進みます。
|
||||
-[F6] 最後の0xFE**にジャンプします。
|
||||
|
||||
※GB文字表示時、特殊文字を表示するためにはエスケープ(0x5C)が必要になることがあります。
|
||||
エスケープ付きの文字は背景が黄色で表示されます。
|
||||
|
||||
|
||||
===============================================================================
|
||||
Casio Basicとの相違点
|
||||
===============================================================================
|
||||
基本的には全く同じ動作になるように作成されていますが、動作の違う部分があります。
|
||||
|
||||
・?コマンドの入力部分は1ラインのみで横スクロールします。
|
||||
・描画コマンドの直後が:(区切りコード)だと画面書換え更新をしません。(グラフィック命令、Locate,Text等)
|
||||
・プログラム終了時に実行時間を表示することができます。(セットアップで設定)
|
||||
・行頭やコマンド間に空白を入れてもエラーになりません。
|
||||
・コメント文の終了は改行と▲一時停止コマンドのみです。:(区切りコード)では終了となりません。
|
||||
|
||||
さらに同じCasio Basicが動作するプログラム関数電卓のfx-5800Pの便利な部分を取り込んでいます。
|
||||
・?コマンドで?A形式を追加サポートしています。
|
||||
・文字列出力コマンド " " の出力仕様はfx-5800P準拠とfx-9860G/fx-9860GII/fx-CG準拠を選択できます。
|
||||
セットアップで設定できます。
|
||||
fx-5800Pとfx-9860G/fx-9860GII/fx-CGのCasio Basic仕様の違いについては、
|
||||
やす(Krtyski)様のサイトに詳細な解説がありますので参照して下さい。
|
||||
https://egadget.blog.fc2.com/blog-entry-170.html
|
||||
|
||||
|
||||
===============================================================================
|
||||
-[SHIFT][MENU] (SETUP) セットアップでの設定
|
||||
===============================================================================
|
||||
Angle :Deg/Rad/Gra
|
||||
Complex Mode:Real/a+bi/r∠θ
|
||||
Draw Type :Connect/Plot
|
||||
Coord :on/off
|
||||
Grid :on/off/Line
|
||||
Axes :on/off/Scale
|
||||
Label :on/off
|
||||
Derivative :on/off
|
||||
Background :None / Pict1~20
|
||||
Plot/LineCol:Black etc.
|
||||
Sketch Line :Normal/Thick/Broken/Dot/Thin
|
||||
----------------------------ここまで純正Casio Basic互換です。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Display :Fix/Sci/Nrm/Eng
|
||||
小数以下の桁数は15桁まで。0を指定した場合は16桁となります。
|
||||
Nrmに関してはNrm1とNrm2のみCasio Basic互換10桁表示仕様です。
|
||||
Nrm1:0.01以下は指数表示
|
||||
Nrm2:0.000000001以下は指数表示
|
||||
それ以外は桁数指定となります。
|
||||
Eng :ENGオフ、ENGオン(/E)、3桁区切り(/3)の切り替えとなります。
|
||||
|
||||
・関連コマンド Fix,Sci,Norm,EngOn,EngOff,Eng
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Exp Display : E / Stdx10 / Allx10
|
||||
指数表示の記号を選択します。
|
||||
E: -1.23e99 従来の表示形式です。
|
||||
Stdx10: -1.23(x10)99 スタンダードフォントのみ切り替わります。
|
||||
Allx10: -1.23(x10)99 すべてのフォントサイズで切り替わります。
|
||||
|
||||
・関連コマンド '#exp 0 // 従来の表示形式です。
|
||||
'#exp 1 // スタンダードフォントのみ切り替わります。
|
||||
'#exp 2 // すべてのフォントサイズで切り替わります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
エディタでコマンドのヘルプ表示の有効/無効を設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : on/off
|
||||
すでにセットアップで設定してある上記の純正Casio Basic互換設定をプログラム終了後に復帰するかどうかを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Command Inpt : C.Basic/Standard/>5800/>9800
|
||||
コマンド入力方法をC.Basic(fx-5800P)方式とStandard(fx-9860G)方式を選択できます。
|
||||
" "出力仕様をfx-5800P互換モードとFX/CG互換モードの切り替えができます。
|
||||
|
||||
・関連コマンド '#58
|
||||
'#98
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
[X]character : [0x90]/[X]
|
||||
[X,θ,T]キーで入力できる文字を選択します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
外部フォントの使用を設定します。
|
||||
|
||||
・関連コマンド SetFont 0 // 外部フォント無効
|
||||
SetFont 1 // 外部フォント有効
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
自動インデントを設定します。
|
||||
Off: 自動インデントを使用しません。
|
||||
1: インデント幅を1に設定します。
|
||||
2: インデント幅を2に設定します。
|
||||
4: インデント幅を4に設定します。
|
||||
Save-:保存時にインデントを含むコマンド間の空白を削除します。(=CasioBasic準拠ソースに変換します。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : on/off
|
||||
エディタ上で外部フォント表示を使用します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit GB Font : on/off/Full
|
||||
エディタ上でのGBフォントの表示を設定します。
|
||||
off:GBフォントを表示しません。通常のモードです。
|
||||
on:コマンド&特殊文字と重なるF7xx,F9xx,E5xx,E6xx,E7xxのGBコードを除いて表示します。
|
||||
(※文字列に0x03A8コードがあればそれ以後の文字列はFull表示になります。文字列コマンドの終了でon表示に戻ります。)
|
||||
Full:内蔵のすべてのGBフォントを表示します。(GBコードと重なる一部コマンドがGBフォントに化けます。)
|
||||
(※この設定はエディタとテキスト変換で有効になります。プログラム内での制御は以下のコマンドを使用して下さい。)
|
||||
|
||||
・関連コマンド '#GB0 GBフォントを表示しません。従来のモードです。
|
||||
'#GB1 以後、コマンド&特殊文字と重なるF7xx,F9xx,E5xx,E6xx,E7xxを除いてGBコードとして表示します。
|
||||
'#GB2 以後、内蔵のすべてのGBコードを表示します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize : Std/Mini/MiniMini/MiniMiniFX /+Fixed pitch/+Gap
|
||||
表示文字の大きさおよび行間隔を変更します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum : on/off
|
||||
行番号表示を選択します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar : List / 反転L / ボールドL
|
||||
ListとMat表示を短縮表示(1文字の反転とボールド)に切り替えます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-backCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタの背景色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
Edit-baseCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタの基本色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
E-NumericCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタの数値表示色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommandCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタのコマンド表示色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
Ed-QuotColor : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタの文字列表示色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
E-CommentCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタのコメント表示色を設定します。
|
||||
-------------------------------------------------------------------------------
|
||||
E-LineNumCol : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
エディタの行番号表示色を設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Auto OverClk : on/off
|
||||
自動オーバークロックを有効/無効の設定をします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Heap RAM Size : 96KB/117KB/127KB/SIZE
|
||||
C.Basicで使用する最大ヒープメモリサイズを指定します。
|
||||
※プログラム編集時は変更できません。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidn RAM : on/off
|
||||
隠しRAMをC.Basicで使用するかどうかを設定します。(fx-CG10/20は未対応です。)
|
||||
fx-CG50では8MBのRAMが搭載されており、そのうち6MBはOS未使用領域となっているためにこれをプログラム領域と行列領域として利用できるようにします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
HidnRAM Init : on/off
|
||||
隠しRAM使用時に、Mat行列&ListをC.Basic起動時に初期化するかどうかを設定します。(fx-CG10/20は未対応です。)
|
||||
初期化しない場合は、Mat行列&Listの結果が消えないで残ります。
|
||||
(※注意 ただし、CG50では電源オフから1時間でメモリがクリアされてしまうので、C.Basicが再起動します。)
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No : 20 ~20
|
||||
CGシリーズでは無効です。20から変更できません。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No : 52 ~1040
|
||||
隠しRAM使用時に、Listの上限を増やせます。
|
||||
設定を変更するとPict&Mat&Listデータが初期化されます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on/off
|
||||
[AC]で中断した時にデバッグモードの有効/無効を設定します
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on/off
|
||||
デバッグモードから[EXIT]で抜ける場合の確認PopUpを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop :on/off
|
||||
[AC]キーによる中断の有無。
|
||||
offの場合は[AC]キーによる中断が出来ません。
|
||||
|
||||
・関連コマンド '#Break0 // [AC]キー無効
|
||||
'#Break1 // [AC]キー有効 (デフォルト)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp : on/off/%HR/on reset
|
||||
プログラム終了時にプログラムの実行時間を表示します。
|
||||
計測開始はプログラムの最初の行からですが、途中?コマンドや一時停止コマンドがあった場合はそれまでの計測時間はリセットされます。
|
||||
Getkey1/2の場合は計測が一時停止になり、コマンド実行後に再スタートします。
|
||||
on resetは、Getkey1/2実行後に計測がリセットされ再スタートします。
|
||||
%HR:計測に1/32768sタイマーを使います。
|
||||
|
||||
・関連コマンド '#GetkeyC // Getkey1/2実行後に時間計測を一時停止、リスタートします。(デフォルト)
|
||||
'#GetkeyR // Getkey1/2実行後に時間計測がリセット&リスタートします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check : on/off
|
||||
IfとIfEndが一対一で対応しているかどうかをチェックします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak : on/off
|
||||
ACBreakコマンドの有効/無効を切り替えます。
|
||||
|
||||
・関連コマンド ACBreak
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return : None/F1/EXE/F1&EXE
|
||||
プログラム実行中の中断でエディタに戻るかファイルリストに戻るかを選択できます。
|
||||
(例)Force Return: F1 の場合、
|
||||
・ ファイルリスト画面 → [F1](EXE) → [AC] → [EXIT] …… ファイルリスト画面に戻ります。
|
||||
・ ファイルリスト画面 → [EXE] → [AC] →[EXIT] …… エディタに戻ります。
|
||||
・ ファイルリスト画面 → [F1](EXE) → [AC] → [EXE](再開) → [AC] → [EXIT] …… ファイルリスト画面に戻ります。
|
||||
(初めにどちらのキーを押したかによって動作が決まります。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time : 25ms~1000ms(デフォルト値 500ms)
|
||||
リピート開始までの時間 (25ms単位)
|
||||
Key Rep time : 25ms~500ms(デフォルト値 125ms)
|
||||
リピート継続時間 (25ms単位)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down : 1~9999
|
||||
SkipUp/SkipDownでの一回分の改ページ数を指定します。
|
||||
※改行ごとに一行増える論理行ではなく画面上での見た目上での物理行数です。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode : [m,n]/[X,Y]
|
||||
行列エディタ画面での表示形式を指定します。
|
||||
それぞれ転置行列の関係になりますが、行列内部は何も変化なく表示上だけの指定です。
|
||||
Matrix base : 0/1
|
||||
行列インデックスの初期値を0か1が指定します。
|
||||
初期値に0を指定した場合は、グラフィック座標が左上端の(0,0)から有効になります。
|
||||
|
||||
・関連コマンド '#Mat 0 // 行列のインデックス開始値を0にします。
|
||||
'#Mat 1 // 行列のインデックス開始値を1にします。(デフォルト)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
DATE : 2017/01/17 MON
|
||||
TIME : 23:59:59
|
||||
内蔵RTCを設定します。曜日は自動設定されます。
|
||||
|
||||
・関連コマンド DATE、TIME
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Root Folder : /
|
||||
ファイルアクセスの基本となるルートフォルダを設定します。
|
||||
[F1]:ストレージメモリのルートフォルダに設定します。
|
||||
[F2]:カレントフォルダを以後ルートフォルダに設定します。
|
||||
|
||||
・関連コマンド '#R/ // ストレージメモリのルートフォルダに設定します。
|
||||
'#R. // カレントフォルダをルートフォルダに設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Favorite Col : Black/Blue/Red/Magenta/Green/Cyan/Yellow/White/16ビットカラー
|
||||
ファイルリストのお気に入りの色を設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file save : on/off
|
||||
編集後、自動的に保存するかどうか設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save : on/off
|
||||
テキストファイル編集/実行後に同時にg1m形式でも保存するかどうかを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Direct GB cnvt : on/off
|
||||
プログラム内のGBコードをテキスト変換無しでそのままテキストファイルに保存するかどうかを設定します。
|
||||
(※変換無しでテキストファイルにした場合はGB2312対応エディタではそのまま表示できます。)
|
||||
(※変換対象GBコードはエディタのGBコード表示モードに対応しています。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode : S.Mem/Heap/Both
|
||||
(S.Mem) Pictファイルをストレージメモリ上に作ります。若干時間がかかります。
|
||||
(Heap) Pictファイルとしては作成されずにメモリ上に互換ファイルが作成されます。(推奨設定です)
|
||||
(Both) HeapモードでもPictファイルが常にストレージメモリ上に作成されます。
|
||||
(Clear) メモリ上に作成されるPict互換ファイルをプログラム開始時に削除します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode : S.Mem/Main Mem
|
||||
ファイルの保存先、ファイル操作の対象を選択します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD : off/Grph/All
|
||||
描画コマンドにおける画面の更新を設定できます。
|
||||
Off:リフレッシュコントロール無し。表示においては純正互換仕様です。
|
||||
Grph:グラフィックコマンドのみリフレッシュコントロール有り。ClrText,Locate,Text,LocateYX," "は無しで以前のバージョン互換です。
|
||||
All:すべての描画コマンドがリフレッシュコントロールされた表示となります。必要に応じてPutDispDDコマンドが必須となります。
|
||||
Time:リフレッシュコントール時間を設定します。n/128秒単位で画面更新します。デフォルトは3で約1/42秒での更新となっています。
|
||||
0を指定するとリフレッシュされなくなります。
|
||||
|
||||
・関連コマンド RefrshCtrl/RefrshTime
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
C.Basic全体の実行速度を調整します。
|
||||
|
||||
・関連コマンド Wait
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
G1M/G3M mode : Auto/g3m/g1m
|
||||
デフォルトのプログラムの実行モードを切り替えます。
|
||||
|
||||
・関連コマンド '#G1M
|
||||
'#g1m
|
||||
'#G3M
|
||||
'#g3m
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode : DBL#/INT%/CPLX
|
||||
デフォルトのプログラムの実行モードを切り替えます。
|
||||
|
||||
・関連コマンド '#CBasic
|
||||
'#CBASIC
|
||||
'#CBDBL
|
||||
'#CBdbl
|
||||
'#CBINT
|
||||
'#CBint
|
||||
'#CBCPLX
|
||||
'#CBcplx
|
||||
|
||||
===============================================================================
|
||||
謝辞
|
||||
===============================================================================
|
||||
プログラム内部仕様&情報は
|
||||
SuperH-based fx calculators (version 20)
|
||||
Cemetech WikiPrizm,
|
||||
を参考にさせていただいています。(一部プログラム引用させていただいています。)
|
||||
|
||||
基本ソース部分はfx-9860Gシリーズ版のC.Basicからの移植です。
|
||||
CASIO公式SDK1.00に基づくminiSDK1.09によりコンパイルされています。
|
||||
|
||||
このツールのファイル操作部分は、
|
||||
https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Casio Fx-9860 Series On-calc C Compiler
|
||||
を参考にさせていただいています。(一部引用)
|
||||
|
||||
g1mモードにおけるカナフォントはこちらのサイトよりカナフォントデータおよび表示ルーチンを引用させていただいています。
|
||||
http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html
|
||||
|
||||
g3mモードの外部フォントはIPAフォントを使わせていただいております。
|
||||
PierrotLL氏とNinestars作成のMonochromeLibをCG対応版として修正して使わせていただいています。
|
||||
Patrick Powell氏のオリジナルsprintfを改良したsprintfソースを利用させていただいています。
|
||||
|
||||
純正Casio Basicとの動作互換性チェックにおいて大変有用なプログラムをたくさん掲載されているPlanet-Casioと作者の皆様に感謝いたします。
|
||||
|
||||
|
||||
プログラム実行時の細かい動作に関しては、
|
||||
やす(Krtyski)様の
|
||||
e-Gadget - プログラム関数電卓
|
||||
プログラム電卓の濃い話: 今は fx-5800P / fx-9860GII と Casio Basicプログラミングが中心
|
||||
https://egadget.blog.fc2.com/
|
||||
を参考にさせていただいています。
|
||||
C.Basicが誕生するきっかけとなったサイトです。
|
||||
|
||||
管理人様および、ガノー様(FX版)、ツル様(FX+CG版)、iron2様(CG版)、Colon様(CG版)
|
||||
には対応アプリの開発+バグ出しで大変お世話になっております。
|
||||
いつもありがとうございます。
|
||||
これからもよろしくお願いいたします。
|
||||
|
||||
|
||||
最後にとても興味深いグラフ電卓を発売してくださったCASIO計算機(株)に感謝いたします。
|
||||
|
||||
このアドインプログラムが皆様のお役に立つことがあれば幸いです。
|
||||
|
||||
|
||||
===============================================================================
|
||||
ライセンス
|
||||
===============================================================================
|
||||
このソフトウエアはフリーソフトウエアです。
|
||||
ライセンスはGPLv2に準じます。
|
||||
|
||||
|
||||
===============================================================================
|
||||
ご質問、ご要望、バグ報告等
|
||||
===============================================================================
|
||||
|
||||
やす(Krtyski)様のサイトにてC.Basic for CG プロジェクト専用エントリを作成していただいています。
|
||||
|
||||
C.Basic for CG 開発が始動
|
||||
https://egadget.blog.fc2.com/blog-entry-630.html
|
||||
|
||||
C.Basic for CG 開発が始動 - Part 2 (Ver 0.38α以降)
|
||||
https://egadget.blog.fc2.com/blog-entry-658.html
|
||||
|
||||
C.Basic for CG 開発が始動 - Part 3 (Ver 0.56α以降)
|
||||
https://egadget.blog.fc2.com/blog-entry-664.html
|
||||
|
||||
ご質問、ご要望、バグ報告等ありましたらコメント欄にて随時受け付けています。
|
||||
|
||||
UCF (C.Basic - International Release)
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
|
||||
Planet-Casio (C.Basic Projets)
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
|
||||
|
||||
===============================================================================
|
||||
更新履歴
|
||||
===============================================================================
|
||||
ChangeCG_J.txtを参照して下さい。
|
||||
|
||||
|
|
@ -0,0 +1,121 @@
|
|||
--------------------------------------------------------
|
||||
CBasic setup format ver.0.56
|
||||
--------------------------------------------------------
|
||||
offset type name
|
||||
--------------------------------------------------------
|
||||
00 char "CB.config00"
|
||||
11 char CB_G1MorG3MDefault
|
||||
12 char ExtendPict
|
||||
13 char UseHiddenRAM
|
||||
14 char ExtendList
|
||||
15 char CB_INTDefault
|
||||
16-17 short RefreshCtrl
|
||||
18 char EditListChar
|
||||
19 char DrawType
|
||||
20 char CB_fx5800P // 0.55 new
|
||||
21 char Refreshtime
|
||||
22 char ForceReturnMode
|
||||
23 char Coord
|
||||
24 char CB_RecoverSetup
|
||||
25 char ENG
|
||||
26 char EditExtFont
|
||||
27 char Grid
|
||||
28 char CB_Round.ExpTYPE
|
||||
29 char CB_Round.MODE
|
||||
30 char MaxHeapRam // 0.49 new
|
||||
31 char Axes
|
||||
32-33 short CB_Round.DIGIT-1
|
||||
34 char DirectGBconvert // 0.49 new
|
||||
35 char Label
|
||||
36-37 short DefaultWaitcount
|
||||
38 char CB_disableOC // 0.52 new
|
||||
39 char Derivative
|
||||
40 char XInputMethod
|
||||
41 char CommandInputMethod
|
||||
42 char ExitDebugModeCheck // 0.55 new
|
||||
43 char S_L_Style
|
||||
44 char EnableExtFont // 0.48 new
|
||||
45 char ForceG1Msave
|
||||
46 char ComplexMode // 0.51 new
|
||||
47 char Angle
|
||||
48 char EditGBFont // 0.49 new
|
||||
49 char StorageMode & 1 // 0.53 new
|
||||
50 char StorageMode & 2 // 0.53 new
|
||||
51 char BreakCheckDefault
|
||||
52-53 short PageUpDownNum
|
||||
54 char (reserved)
|
||||
55 char TimeDsp
|
||||
56 char (reserved)
|
||||
57 char 1-MatBaseDefault
|
||||
58 char (reserved)
|
||||
59 char MatXYmode
|
||||
60 char (reserved)
|
||||
61 char CheckIfEnd
|
||||
62 char (reserved)
|
||||
63 char PictMode
|
||||
|
||||
64-71 double Xfct
|
||||
72-79 double Yfct
|
||||
|
||||
80-543 double REG.A...z.real
|
||||
544-631 double REG.VWIN
|
||||
640-871 int REGINT.A...z
|
||||
|
||||
872-873 short KeyRepeatFirstCount
|
||||
874-875 short KeyRepeatNextCount
|
||||
|
||||
880-883 char Favoritesfiles[0].filesize
|
||||
884-887 char Favoritesfiles[1].filesize
|
||||
888-891 char Favoritesfiles[2].filesize
|
||||
892-895 char Favoritesfiles[3].filesize
|
||||
896-899 char Favoritesfiles[4].filesize
|
||||
900-903 char Favoritesfiles[5].filesize
|
||||
904-907 char Favoritesfiles[6].filesize
|
||||
|
||||
908- 920 char Favoritesfiles[0].filename
|
||||
921- 929 char Favoritesfiles[0].folder
|
||||
930- 942 char Favoritesfiles[1].filename
|
||||
943- 951 char Favoritesfiles[1].folder
|
||||
952- 964 char Favoritesfiles[2].filename
|
||||
965- 973 char Favoritesfiles[2].folder
|
||||
974- 986 char Favoritesfiles[3].filename
|
||||
987- 995 char Favoritesfiles[3].folder
|
||||
996-1008 char Favoritesfiles[4].filename
|
||||
1009-1017 char Favoritesfiles[4].folder
|
||||
1018-1030 char Favoritesfiles[5].filename
|
||||
1031-1039 char Favoritesfiles[5].folder
|
||||
1040-1052 char Favoritesfiles[6].filename
|
||||
1053-1061 char Favoritesfiles[6].folder
|
||||
|
||||
1062-1074 char (reserved)
|
||||
|
||||
1075 char AutoSaveMode
|
||||
1076 char EditTopLine
|
||||
1077 char EditFontSize
|
||||
1078 char DisableDebugMode
|
||||
1079 char 0
|
||||
|
||||
1080 short CB_ColorIndexPlot
|
||||
1082 short CB_ColorIndexEditBack
|
||||
1084 short CB_ColorIndexEditBase
|
||||
1086 short CB_ColorIndexEditCMD
|
||||
1088 short CB_ColorIndexEditQuot
|
||||
1090 short CB_ColorIndexEditComt
|
||||
1092 short CB_ColorIndexEditLine
|
||||
1094 short CB_ColorIndexEditNum
|
||||
1096 short CB_FavoriteColorIndex // 0.56 new
|
||||
|
||||
1098-1279 char (reserved)
|
||||
|
||||
|
||||
1278-1279 short version (0.56 -> 56) // 0.56 new
|
||||
|
||||
--------------------------------------------------------
|
||||
CBasic2 setup format
|
||||
--------------------------------------------------------
|
||||
offset type name
|
||||
--------------------------------------------------------
|
||||
00 char "CB.config60"
|
||||
11-47 char (reserved)
|
||||
|
||||
48-511 double REG.A...z.image
|
|
@ -0,0 +1,57 @@
|
|||
Error Code List
|
||||
------------------------------
|
||||
1: Syntax ERROR
|
||||
2: Ma ERROR
|
||||
3: Go ERROR
|
||||
4: Nesting ERROR
|
||||
5: Stack ERROR
|
||||
6: Memory ERROR
|
||||
7: Argument ERROR
|
||||
8: Dimension ERROR
|
||||
9: Range ERROR
|
||||
|
||||
11: Non-Real ERROR
|
||||
|
||||
20: Com ERROR
|
||||
21: Transmit ERROR
|
||||
22: Receive ERROR
|
||||
|
||||
28: Too Much Data
|
||||
|
||||
33: Missing Next
|
||||
34: Missing For
|
||||
35: Missing WhileEnd
|
||||
36: Missing While
|
||||
37: Missing LpWhile
|
||||
38: Missing Do
|
||||
39: Not Loop ERROR
|
||||
40: Zero Division
|
||||
41: Undefined Label
|
||||
42: Not Enough Memory
|
||||
43: String Too Long
|
||||
44: No Matrix array
|
||||
45: Invalid Ary Size
|
||||
46: Prog Not Found
|
||||
47: Too Many SubProg
|
||||
48: Missing IfEnd
|
||||
49: Missing If
|
||||
50: Missing Switch
|
||||
51: Missing Switch
|
||||
52: Missing SwitchEnd
|
||||
53: Missing Switch
|
||||
54: File Not Found
|
||||
55: Illegal Element
|
||||
56: Com Opened
|
||||
57: Com Closed
|
||||
58: Invalid Type
|
||||
59: Out of Domain
|
||||
60: Var Undefined
|
||||
61: Func Undefined
|
||||
62: Not Supported
|
||||
63: VarLimit Exceeded
|
||||
64: Duplicate Def
|
||||
65: Address Align ERR
|
||||
66: Time Out
|
||||
70: Missing Except
|
||||
71: Missing Try
|
||||
72: Missing Try
|
|
@ -0,0 +1,160 @@
|
|||
---------------------------------------------------------------------------------
|
||||
C.Basic for CG Ver 1.00beta Extended Opcode List
|
||||
|
||||
Last edited by sentaro21/Colon, 15 Jun 2019(UTC)
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
0x00A7 "not " // Not -> not
|
||||
0x009A " xor " // add space
|
||||
0x00AA " or " // add space
|
||||
0x00BA " and " // add space
|
||||
0x00FA "Gosub "
|
||||
|
||||
0x7F58 "ElemSize("
|
||||
0x7F59 "ColSize("
|
||||
0x7F5A "RowSize("
|
||||
0x7F5B "MatBase("
|
||||
0x7F5C "ListCmp("
|
||||
0x7F5D "GetRGB(" // for CG
|
||||
0x7F5E "RGB(" // for CG
|
||||
0x7F5F "Ticks"
|
||||
0x7F9F "KeyRow("
|
||||
0x7FCF "System("
|
||||
0x7FDF "Version"
|
||||
0x7FF5 "IsExist("
|
||||
0x7FF6 "Peek("
|
||||
0x7FF8 "VarPtr("
|
||||
0x7FFA "ProgPtr("
|
||||
|
||||
0xF70C "Return " // add space
|
||||
0xF70F "ElseIf "
|
||||
0xF717 "ACBreak"
|
||||
0xF737 "Try "
|
||||
0xF738 "Except "
|
||||
0xF739 "TryEnd"
|
||||
0xF73B "DotPut("
|
||||
0xF73D "DotTrim("
|
||||
0xF73E "DotGet("
|
||||
0xF79D "StoCapt"
|
||||
0xF7DD "Beep "
|
||||
0xF7DE "BatteryStatus" // for CG
|
||||
0xF7DF "Delete "
|
||||
0xF7E0 "DotLife("
|
||||
0xF7E1 "Rect "
|
||||
0xF7E2 "FillRect "
|
||||
0xF7E3 "LocateYX "
|
||||
0xF7E4 "Disp "
|
||||
0xF7E8 "ReadGraph("
|
||||
0xF7E9 "WriteGraph "
|
||||
0xF7EA "Switch "
|
||||
0xF7EB "Case "
|
||||
0xF7EC "Default "
|
||||
0xF7ED "SwitchEnd"
|
||||
0xF7EE "Save "
|
||||
0xF7EF "Load("
|
||||
0xF7F0 "DotShape("
|
||||
0xF7F1 "Local "
|
||||
0xF7F2 "PopUpWin("
|
||||
0xF7F4 "SysCall("
|
||||
0xF7F5 "Call("
|
||||
0xF7F6 "Poke("
|
||||
0xF7F8 "RefrshCtrl "
|
||||
0xF7FA "RefrshTime "
|
||||
0xF7FB "Screen"
|
||||
0xF7FC "PutDispDD"
|
||||
0xF7FD "FKeyMenu("
|
||||
0xF7FE "BackLight "
|
||||
|
||||
0xF90E "Const "
|
||||
0xF90F "Alias " // AliasVar -< Alias
|
||||
0xF940 "ToStr(" // Str( -> ToStr(
|
||||
0xF941 "DATE"
|
||||
0xF942 "TIME"
|
||||
0xF943 "Sprintf("
|
||||
0xF944 "StrChar("
|
||||
0xF945 "StrCenter("
|
||||
0xF946 "Hex("
|
||||
0xF947 "Bin("
|
||||
0xF948 "StrBase("
|
||||
0xF949 "StrRepl("
|
||||
0xF94D "StrSplit("
|
||||
0xF94F "Wait "
|
||||
0xF950 "StrAsc("
|
||||
0xF960 "GetFont("
|
||||
0xF961 "SetFont "
|
||||
0xF962 "GetFontMini("
|
||||
0xF963 "SetFontMini "
|
||||
0xF999 "Plot/Line-Color " // for CG
|
||||
0xF99B "Black " // for CG
|
||||
0xF99C "White " // for CG
|
||||
0xF99D "Magenta " // for CG
|
||||
0xF99E "Cyan " // for CG
|
||||
0xF99F "Yellow " // for CG
|
||||
0xF9BE "Back-Color " // for CG
|
||||
0xF9BF "Transp-Color " // for CG
|
||||
0xF9C0 "_ClrVram"
|
||||
0xF9C1 "_ClrScreen"
|
||||
0xF9C2 "_DispVram"
|
||||
0xF9C3 "_Contrast"
|
||||
0xF9C4 "_Pixel "
|
||||
0xF9C5 "_Point "
|
||||
0xF9C6 "_PixelTest("
|
||||
0xF9C7 "_Line "
|
||||
0xF9C8 "_Horizontal "
|
||||
0xF9C9 "_Vertical "
|
||||
0xF9CA "_Rectangle "
|
||||
0xF9CB "_Polygon "
|
||||
0xF9CC "_FillPolygon "
|
||||
0xF9CD "_Circle "
|
||||
0xF9CE "_FillCircle "
|
||||
0xF9CF "_Elips "
|
||||
0xF9D0 "_FillElips "
|
||||
0xF9D1 "_ElipsInRct "
|
||||
0xF9D2 "_FElipsInRct "
|
||||
0xF9D3 "_Hscroll "
|
||||
0xF9D4 "_Vscroll "
|
||||
0xF9D5 "_Bmp "
|
||||
0xF9D6 "_Bmp8 "
|
||||
0xF9D7 "_Bmp16 "
|
||||
0xF9D8 "_Test"
|
||||
0xF9D9 "_BmpZoom "
|
||||
0xF9DA "_BmpRotate "
|
||||
0xF9DB "BmpSave "
|
||||
0xF9DC "BmpLoad("
|
||||
0xF9DD "DrawMat "
|
||||
0xF9DE "_BmpZmRotate "
|
||||
0xF9DF "_Paint " // for CG
|
||||
|
||||
0x7F3A "MOD(" // SDK emu not support OS 2.00 or later
|
||||
0x7F3C "GCD(" // SDK emu not support OS 2.00 or later
|
||||
0x7F3D "LCM(" // SDK emu not support OS 2.00 or later
|
||||
0x7F84 "Vct" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0x7F87 "RanInt#(" // SDK emu not support OS 2.00 or later
|
||||
0x7F88 "RanList#(" // SDK emu not support OS 2.00 or later
|
||||
0x7FB4 " Xor " // SDK emu not support OS 2.00 or later
|
||||
0x7FBC " Int/ " // SDK emu not support OS 2.00 or later
|
||||
0x7FBD " Rmdr " // SDK emu not support OS 2.00 or later
|
||||
|
||||
0xF79E "Menu " // SDK emu not support OS 2.00 or later
|
||||
|
||||
0xF930 "StrJoin(" // SDK emu not support OS 2.00 or later
|
||||
0xF931 "StrLen(" // SDK emu not support OS 2.00 or later
|
||||
0xF932 "StrCmp(" // SDK emu not support OS 2.00 or later
|
||||
0xF933 "StrSrc(" // SDK emu not support OS 2.00 or later
|
||||
0xF934 "StrLeft(" // SDK emu not support OS 2.00 or later
|
||||
0xF935 "StrRight(" // SDK emu not support OS 2.00 or later
|
||||
0xF936 "StrMid(" // SDK emu not support OS 2.00 or later
|
||||
0xF937 "Exp>Str(" // SDK emu not support OS 2.00 or later
|
||||
0xF938 "Exp(" // SDK emu not support OS 2.00 or later
|
||||
0xF939 "StrUpr(" // SDK emu not support OS 2.00 or later
|
||||
0xF93A "StrLwr(" // SDK emu not support OS 2.00 or later
|
||||
0xF93B "StrInv(" // SDK emu not support OS 2.00 or later
|
||||
0xF93C "StrShift(" // SDK emu not support OS 2.00 or later
|
||||
0xF93D "StrRotate(" // SDK emu not support OS 2.00 or later
|
||||
0xF93E "ClrVct" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF93F "Str " // SDK emu not support OS 2.00 or later
|
||||
0xF94A "CrossP(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF94B "DotP(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF95B "Norm(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF95E "UnitV(" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
||||
0xF96D "Angle" // SDK emu not support OS 2.00(for CG) / 2.04(for FX) or later
|
|
@ -0,0 +1,175 @@
|
|||
------------------------------------------------------------
|
||||
Mat n Vct n List n
|
||||
|
||||
1: Mat A
|
||||
2: Mat B
|
||||
3: Mat C
|
||||
4: Mat D
|
||||
5: Mat E
|
||||
6: Mat F
|
||||
7: Mat G
|
||||
8: Mat H
|
||||
9: Mat I
|
||||
10: Mat J
|
||||
11: Mat K
|
||||
12: Mat L
|
||||
13: Mat M
|
||||
14: Mat N
|
||||
15: Mat O
|
||||
16: Mat P
|
||||
17: Mat Q
|
||||
18: Mat R
|
||||
19: Mat S
|
||||
20: Mat T
|
||||
21: Mat U
|
||||
22: Mat V
|
||||
23: Mat W
|
||||
24: Mat X
|
||||
25: Mat Y
|
||||
26: Mat Z
|
||||
|
||||
Vct A
|
||||
Vct B
|
||||
Vct C
|
||||
Vct D
|
||||
Vct E
|
||||
Vct F
|
||||
Vct G
|
||||
Vct H
|
||||
Vct I
|
||||
Vct J
|
||||
Vct K
|
||||
Vct L
|
||||
Vct M
|
||||
Vct N
|
||||
Vct O
|
||||
Vct P
|
||||
Vct Q
|
||||
Vct R
|
||||
Vct S
|
||||
Vct T
|
||||
Vct U
|
||||
Vct V
|
||||
Vct W
|
||||
Vct X
|
||||
Vct Y
|
||||
Vct Z
|
||||
|
||||
List 1
|
||||
List 2
|
||||
List 3
|
||||
List 4
|
||||
List 5
|
||||
List 6
|
||||
List 7
|
||||
List 8
|
||||
List 9
|
||||
List 10
|
||||
List 11
|
||||
List 12
|
||||
List 13
|
||||
List 14
|
||||
List 15
|
||||
List 16
|
||||
List 17
|
||||
List 18
|
||||
List 19
|
||||
List 20
|
||||
List 21
|
||||
List 22
|
||||
List 23
|
||||
List 24
|
||||
List 25
|
||||
List 26
|
||||
|
||||
27: Mat a Vct a List 27
|
||||
28: Mat b Vct b List 28
|
||||
29: Mat c Vct c List 29
|
||||
30: Mat d Vct d List 30
|
||||
31: Mat e Vct e List 31
|
||||
32: Mat f Vct f List 32
|
||||
33: Mat g Vct g List 33
|
||||
34: Mat h Vct h List 34
|
||||
35: Mat i Vct i List 35
|
||||
36: Mat j Vct j List 36
|
||||
37: Mat k Vct k List 37
|
||||
38: Mat l Vct l List 38
|
||||
39: Mat m Vct m List 39
|
||||
40: Mat n Vct n List 40
|
||||
41: Mat o Vct o List 41
|
||||
42: Mat p Vct p List 42
|
||||
43: Mat q Vct q List 43
|
||||
44: Mat r Vct r List 44
|
||||
45: Mat s Vct s List 45
|
||||
46: Mat t Vct t List 46
|
||||
47: Mat u Vct u List 47
|
||||
48: Mat v Vct v List 48
|
||||
49: Mat w Vct w List 49
|
||||
50: Mat x Vct x List 50
|
||||
51: Mat y Vct y List 51
|
||||
52: Mat z Vct z List 52
|
||||
|
||||
53: Mat 53 Vct 53 List 53 List 1: file 1
|
||||
54: Mat 54 Vct 54 List 54
|
||||
55: Mat 55 Vct 55 List 55
|
||||
56: Mat 56 Vct 56 List 56
|
||||
57: Mat 57 Vct 57 List 57
|
||||
58: Mat 58 Vct 58 List 58
|
||||
59: Mat 59 Vct 59 List 59
|
||||
60: Mat 60 Vct 60 List 60
|
||||
61: Mat 61 Vct 61 List 61
|
||||
62: Mat 62 Vct 62 List 62
|
||||
63: Mat 63 Vct 63 List 63
|
||||
64: Mat 64 Vct 64 List 64
|
||||
65: Mat 65 Vct 65 List 65
|
||||
66: Mat 66 Vct 66 List 66
|
||||
67: Mat 67 Vct 67 List 67
|
||||
68: Mat 68 Vct 68 List 68
|
||||
69: Mat 69 Vct 69 List 69
|
||||
70: Mat 70 Vct 70 List 70
|
||||
71: Mat 71 Vct 71 List 71
|
||||
72: Mat 72 Vct 72 List 72
|
||||
73: Mat 73 Vct 73 List 73
|
||||
74: Mat 74 Vct 74 List 74
|
||||
75: Mat 75 Vct 75 List 75
|
||||
76: Mat 76 Vct 76 List 76
|
||||
77: Mat 77 Vct 77 List 77
|
||||
78: Mat 78 Vct 78 List 78
|
||||
|
||||
79: Mat 79 Vct 79 List 79 List 1: file 2
|
||||
80: Mat 80 Vct 80 List 80
|
||||
81: Mat 81 Vct 81 List 81
|
||||
82: Mat 82 Vct 82 List 82
|
||||
83: Mat 83 Vct 83 List 83
|
||||
84: Mat 84 Vct 84 List 84
|
||||
85: Mat 85 Vct 85 List 85
|
||||
86: Mat 86 Vct 86 List 86
|
||||
87: Mat 87 Vct 87 List 87
|
||||
88: Mat 88 Vct 88 List 88
|
||||
89: Mat 89 Vct 89 List 89
|
||||
90: Mat 90 Vct 90 List 90
|
||||
91: Mat 91 Vct 91 List 91
|
||||
92: Mat 92 Vct 92 List 92
|
||||
93: Mat 93 Vct 93 List 93
|
||||
94: Mat 94 Vct 94 List 94
|
||||
95: Mat 95 Vct 95 List 95
|
||||
96: Mat 96 Vct 96 List 96
|
||||
97: Mat 97 Vct 97 List 97
|
||||
98: Mat 98 Vct 98 List 98
|
||||
99: Mat 99 Vct 99 List 99
|
||||
100: Mat 100 Vct 100 List 100
|
||||
101: Mat 101 Vct 101 List 101
|
||||
102: Mat 102 Vct 102 List 102
|
||||
103: Mat 103 Vct 103 List 103
|
||||
104: Mat 104 Vct 104 List 104
|
||||
|
||||
105: Mat 105 Vct 105 List 105 List 1: file 3
|
||||
106: Mat 106 Vct 106 List 106
|
||||
107: Mat 107 Vct 107 List 107
|
||||
|
||||
<r>: Mat <r> Vct <r> List <r>
|
||||
Į : Mat Į Vct Į List Į
|
||||
Ans: Mat Ans Vct Ans List Ans
|
||||
------------------------------------------------------------
|
||||
Last edited by sentaro 2020/02/05(UTC)
|
||||
------------------------------------------------------------
|
|
@ -0,0 +1,588 @@
|
|||
Please look at this site that made by Krtyski.(e-Gadget administrator)
|
||||
http://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
This site and following text is translated by Krtyski(e-Gadget administrator) & Lephenixnoir(Planet-Casio administrator).
|
||||
Thanks very much for your support.
|
||||
|
||||
===============================================================================
|
||||
|
||||
Add-In Casio Basic Interpreter (& Compiler) Ver. 2.x beta version
|
||||
|
||||
Copyright(c)2015-2020 by sentaro21
|
||||
E-mail sentaro21@pm.matrix.jp
|
||||
|
||||
Last updated by sentaro21/Krtyski/CalcLoverHK 10/02/2020
|
||||
|
||||
===============================================================================
|
||||
|
||||
**If you feel your Casio Basic programs are not running fast enough, C.Basic can free you of that frustration!**
|
||||
|
||||
Get started with genuine Casio Basic programs, then enjoy extended commands that Casio Basic alone cannot perform.
|
||||
|
||||
- Currently **C.Basic** (Basic interpreter) runs on fx-9860G(SH3), fx-9860GII(SH3), fx-9860GII(SH4A), and fx-CG10/20/50.
|
||||
- **C.Basic** will evolve into a Casio Basic compiler "**C:Basic**", which will run programs much faster than C.Basic (10 times from the looks of it).
|
||||
|
||||
All the instructions supported by C.Basic are listed in the "Command_List.txt" and "Manual_EN.txt" files included in the distribution package.
|
||||
|
||||
|
||||
## Pros
|
||||
|
||||
- C.Basic is mostly compatible with genuine Casio Basic.
|
||||
- Programs run at least 10 times faster in C.Basic.
|
||||
- C.Basic's List and File editors are easier to use than the usual ones.
|
||||
- Can execute programs from storage memory/main memory, and supports sub-folder structures.
|
||||
- Some Casio Basic commands are extended for more features.
|
||||
- Newly-implemented commands for more powerful and flexible programming.
|
||||
|
||||
## Cons
|
||||
|
||||
- C.Basic does not cover all of the original Basic commands.
|
||||
- Calculations don't yield the same results as the usual interpreter because C.Basic use double-precision floating point instead of fixed-point BCD.
|
||||
- C.Basic stores PICT files in storage memory, hence using them is slower (at least until version 0.87 which uses the heap area from the main memory).
|
||||
- There must be some bugs, unfortunately (; Please provide us with a bug report if you find any.
|
||||
|
||||
|
||||
## Almost compatible with vanilla Casio Basic
|
||||
|
||||
Flawless compatibility is our goal, but some differences are intentional:
|
||||
|
||||
- `?` and `?->` input commands are displayed on a single line. Displaying a string longer than 21 characters will result in horizontal scroll instead of line wrap.
|
||||
- When a graphing sketch commands is followed by the multi-statement command `:`, the screen is not refreshed.
|
||||
- Program running time is displayed when the program ends. This function can be triggered in the setup page.
|
||||
- Comment delimiters `'` are allowed before carriage returns and Disps (output), and `:` can be included in the comment string.
|
||||
|
||||
C.Basic also takes in user-friendly features of fx-5800P:
|
||||
|
||||
- C.Basic supports a `"?A"` command as fx-5800P, as opposed to fx-9860G / fx-9860GII which only support `"?->A"`.
|
||||
- String output command `" "` is fully compatible with fx-5800P thus a but different from fx-9860G / fx-9860GII. See [Topic](http://egadget.blog.fc2.com/blog-entry-520.html) for details.
|
||||
|
||||
|
||||
======= CAUTION !!! ========
|
||||
We don't believe that C.Basic could damage your calculator, but the main memory could still be unexpectedly damaged or destroyed, which would require a whole memory reset. Hence it is strongly recommended that you backup your main and storage memory data. Please be aware that you should only use C.Basic at your sole risk.
|
||||
============================
|
||||
|
||||
======= Disclaimer of Warranty =======
|
||||
Use of C.Basic and C:Basic (hereinafter SOFTWARE) is at user's sole risk. All materials, information, products, software, programs and service provided as is・ with no warranties or guarantees whatsoever. Creators of SOFTWARE and support team who provide support documents, support web site, information and sample programs (hereinafter DEVELOPMENT TEAM) expressly disclaim to the fullest extent permitted by law, all express, implied, statutory, and other warranties, guarantees, or representations, including, without limitation, the warranties of merchantability, fitness for a particular purpose, and non-infringement of proprietary and intellectual property rights. Without limitation, DEVELOPMENT TEAM makes no warranty or guarantee that development of SOFTWARE will be uninterrupted, timely, secure, or error-free.
|
||||
======================================
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
# Starting up C.Basic
|
||||
|
||||
To start up **C.Basic**, press `[MENU]`, select the C.Basic icon, then press `[EXE]`.
|
||||
|
||||
There are two ways for copying a program file (`g1m` file) developed for the original Casio Basic interpreter into the File List in C.Basic:
|
||||
|
||||
## Using the pre-installed memory manager
|
||||
|
||||
- To start up the memory manager, press `[MENU]`, select the memory manager icon and press `[EXE]`.
|
||||
- Press `[F1]` to display the contents of the main memory.
|
||||
- Move the cursor down to `<PROGRAM>` and press `[EXE]`. You should now be seeing the list of all Basic Casio programs currently installed for the usual interpreter.
|
||||
- Select the program file that you want to copy.
|
||||
- Press `[F1](SEL)` then `[F2](COPY)`.
|
||||
- Select `"ROOT"`, press `[EXE]`; the calculator will ask you for a file name.
|
||||
- Enter an appropriate file name or just `"A"`, then press `[EXE]`.
|
||||
- Press the `[MENU]` key to go back to the main menu.
|
||||
- Start C.Basic.
|
||||
- In the File List select the name you just entered, press `[F6]` and then `[F2](REN)`.
|
||||
- You will be prompted with `[Rename file Name?]`, and the original file name will be displayed (even though you typed in `"A"`). Press `[EXE]`.
|
||||
- Now the file name has been corrected.
|
||||
|
||||
## Using the PC link software (FA-124)
|
||||
|
||||
FA-124 is a PC link software which is included in the packages of fx-9860G and fx-9860GII. For detailed instructions, please refer to its manual.
|
||||
|
||||
Once you have downloaded a program's source file (`g1m` file), you can use the PC link software to copy it into C.Basic's File List.
|
||||
|
||||
|
||||
=================================================================================
|
||||
Quick Manual - Development Environment of C.Basic
|
||||
=================================================================================
|
||||
|
||||
---------------------------------------------------------------------------------
|
||||
File List Page
|
||||
---------------------------------------------------------------------------------
|
||||
-[UP] Move cursor to the previous file.
|
||||
-[DOWN] Move cursor ro the next file.
|
||||
Pressing A to Z, cursor jumps to a file name which starts with the pressed alphabet.
|
||||
This feature is fx-5800P compatible but not fx-9860G / fx-9860GII.
|
||||
Press [.] key to jump to a file name which starts with "~".
|
||||
Press [EXP(x10)]key to jump to top of folder list.
|
||||
|
||||
-[F1] (EXE) Run selected file.
|
||||
-[F2] (EDIT) Edit selected file.
|
||||
-[F3] (NEW) Create new file.
|
||||
-[F4] (COPY) Copy selected file.
|
||||
-[F5] (DEL) Deleted selected file.
|
||||
-[F6] ( > ) Move to next menu.
|
||||
[F1] (>Txt) Convert selected source file (g1m file) to text file.
|
||||
[F2] (REN) Rename file.
|
||||
[F3] (Fav.) Set/Reset selected file to/from "Favorite".
|
||||
[F4] (Fv.up) Move upward selected Favorite file.
|
||||
[F5] (Fv.dw) Move downward selected Favorite file.
|
||||
[F6] ( > ) Move to previous menu.
|
||||
[F1] (MK.F) Make new Folder
|
||||
[F2] (RN.F) Rename Folder
|
||||
[F6] ( > ) Move to the first menu.
|
||||
|
||||
-[EXE] Run the selected file.
|
||||
|
||||
-[SHIFT]+
|
||||
[EXIT](QUIT) Move back to root from sub-folder.
|
||||
[LEFT] Contrast(dw) (*internal function of OS)
|
||||
[RIGHT] Contrast(up) (*internal function of OS)
|
||||
[F1] (Var) Go to Variables Review Page.
|
||||
[F2] (Mat) Go to Mat Variables Review Page.
|
||||
[F3] (V-W) Go to ViewWindow setting value review page.
|
||||
[F4] (Pass) Set/Reset pass word.
|
||||
[F6] (Debg) Start Debug mode & open Editor page.
|
||||
|
||||
-[VARS] (Variables Review Page)
|
||||
[F1] (A<>a) Switch between display of capital and small letter variables.
|
||||
[F2] (Init) Initialize all the displayed variables.
|
||||
[F3] (D<>I) Siwitch between Integer and Double variables.
|
||||
[F6] (>Hex/>Dec) Switch display of values between in Hex and Dec.
|
||||
[SHIFT]+[UP]/[DOWN] Scroll single page up and down.
|
||||
※ Local variabe is marked with "=".
|
||||
|
||||
-[SHIFT][MENU] (SETUP) Initial Settings
|
||||
[MENU] Go to Setup page.
|
||||
[MENU][F6] Pop up Version information.
|
||||
|
||||
-[OPTN] Set/Reset selected file to/from "Favorite".
|
||||
|
||||
-[EXIT] Move cursor back to first file in the list.
|
||||
When cursor is at the first file in sub-folder, move back to root.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Editor Page
|
||||
-------------------------------------------------------------------------------
|
||||
Guide marker displayed in very right of Editor Page indicates cursor position in source file.
|
||||
|
||||
-[F1] (JUMP) Display JUMP Sub-menu.
|
||||
[F1] (TOP) Jump to top line of source file.
|
||||
[F2] (BTM) Jump to end line of source file.
|
||||
[F3] (GOTO) Jump to a line where you want to go.
|
||||
[F5] (SkipUp) Skip lines (preset # of line is available in Setup page) toward to top.
|
||||
[F6] (SkipDw) Skip lines (preset # of line is available in Setup page) toward to end.
|
||||
|
||||
-[F2] (SRC) Go to String Search / Replacement page.
|
||||
-[F3] (CMD) Go to Command Select page. (this is like fx-5800P command list)(fx-5800P mode)
|
||||
(MENU)) SelectCommand (fx-9860G mode)
|
||||
-[F4] (A<>a) Switch between Capital and small letter.
|
||||
-[F5] (CHAR) Go to Character Select page.
|
||||
-[F6] (EXE) Run program or restart program when it's in pause.
|
||||
|
||||
-[SHIFT]+
|
||||
[EXIT](QUIT) Go back to File List page.
|
||||
[LEFT] Contrast(dw) (*internal function of OS)
|
||||
[RIGHT] Contrast(up) (*internal function of OS)
|
||||
[UP] Scroll 1 page (6 lines) up to top.
|
||||
[DOWN] Scroll 1 page (6 lines) down to end.
|
||||
[F1] (Var) Go to Variables page.
|
||||
[F2] (Mat) Go to Mat Variables page.
|
||||
[F3] (V-WIN) Go to ViewWindow page.
|
||||
[F4] (SKTCH) Select Command. (fx-9860G mode)
|
||||
(Dump)/(List) Switch between "Basic List" and "Hex Dump" display.(fx-5800P mode)
|
||||
[F5] (Dump)/(List) Switch between "Basic List" and "Hex Dump" display.
|
||||
[F6] (CHAR) Go to Character Select page. (fx-9860G mode)
|
||||
(G<>T) Switch Graphics and Text screen.(fx-5800P mode)
|
||||
|
||||
[3] Input keycode of Getkey command.
|
||||
|
||||
-[OPTN] Pop up Command List supported by [OPTN] of fx-9860G/GII.(fx-5800P mode)
|
||||
Select Command. (fx-9860G mode)
|
||||
|
||||
-[VARS] Pop up Comamnd List supported by [VARS] of fx-9860G/GII.(fx-5800P mode)
|
||||
Select Command. (fx-9860G mode)
|
||||
|
||||
-[MENU] Command input history (chronological order/input frequency order is changed by right and left key.)
|
||||
[AC/ON] Erase history
|
||||
|
||||
-[SHIFT][VARS] (PRGM) Pop up Command List supported by [PRGM] of fx-9860G/GII.
|
||||
|
||||
-[SHIFT][MENU] (SETUP) Go to Setup page.(fx-5800P mode)
|
||||
(SETUP) Select Command. (fx-9860G mode)
|
||||
|
||||
-[ALPH][DEL] (UNDO) Delete or Paste operations are restored to the previous state.(only once)
|
||||
|
||||
-[EXIT] Go back to previous page, cancel clip mode or go back to File List page.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Debug Mode Editor Page
|
||||
-------------------------------------------------------------------------------
|
||||
Debug mode page comes up when program is broken intentionally or by error. Right example above shows Debug Mode Edotr Page that mini-font is applied in setup page.
|
||||
|
||||
In Degub Mode, status line is getting inverted on C.Basic for FX or becomes cyan color background.
|
||||
|
||||
-[F1](Cont) Continue program from cursor position.
|
||||
|
||||
-[F2](Trce) Trace program from cursor position and come back to Editor page in Debug Mode right after the traced command runs,
|
||||
|
||||
-[F3](Step) Trace and Step Over comamnd from cursor position and come back to Editor page in Debug Mode right after the command runs. When sub-routine runs, the sub-routine is executed to the end.
|
||||
|
||||
-[F4](S.ot) Step Out from cursor position and come back to Editor page in Debug Mode right after the command runs. When the sursor is in sub-routine the sub-routine is executed to the end.
|
||||
|
||||
-[F5](L<>S) Switch Editor page and program running screen. When the Program Running Screen is displayed, debug operaiton with [F1] - [F4] is still available.
|
||||
|
||||
-[F6]( > ) Switch Debug menu to and from Editor menu. When Program Running Screen is displayed, pressing [F6](>) displays Editor menu.
|
||||
|
||||
-[EXIT] Go back to previous page, cancel clip mode or go back to normal (not in Debug mode) Editor page.
|
||||
|
||||
(*In the debug mode, status line becomes inverted.)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Program Running Page
|
||||
-------------------------------------------------------------------------------
|
||||
During program is running;
|
||||
|
||||
-[AC] Stop program.
|
||||
[EXIT] Go to Editor in Debug mode. Cursor locates at break point.
|
||||
[Left] Go to Editor in Debug mode. Cursor locates at break point.
|
||||
[F1] Resume program.
|
||||
[EXE] Resume program.
|
||||
|
||||
When program is halted by ▲ command (- Disp - is displayed on screen);
|
||||
-[SHIFT]+
|
||||
[F1](Var) Go to Variables Page
|
||||
[F2](Mat) Go to Mat/List Page
|
||||
[F3](V-W) Go to ViewWindow Page
|
||||
[F6](G<>T) Switch between Graphics and Text screen
|
||||
-[EXE] Resume program.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Mat/List/Vct Page
|
||||
-------------------------------------------------------------------------------
|
||||
In this page Mat, List and Vct can be reviewed. Operation procedure of Mat, List and Vct is same, since List and Vect are internaly implemented as extended Matrix.
|
||||
(The Mat marked by * in this page is alocated by addressing.)
|
||||
|
||||
-[F1] (DEL) Delete a Mat/List.
|
||||
-[F2] (DEL-ALL) Delete All Mat/List/Vct.
|
||||
-[F3] (DIM) Set the dimension , element size, an index start value of the Mat/List/Vct.
|
||||
-[F4] (INITIAL) Initialize all elements of the Mat/List/Vct of chosen.
|
||||
-[F5] (Mat:/Lst:/Vct:) Select a number and jump to Mat/List/Vct of the number in alphabetical order.
|
||||
-[F6] (A<>a) Switch between capital letter and small letter of Mat name.
|
||||
|
||||
-[EXE] Enter to Edit Mode of Mat/List/Vct. (in details see below)
|
||||
|
||||
-[SHIFT]+[F1] (>Mat) Select Mat
|
||||
-[SHIFT]+[F2] (>List) Select List
|
||||
-[SHIFT]+[F3] (>Vct) Select Vct
|
||||
|
||||
-[OPTN] Switch showing between Mat and List.
|
||||
-[VARS] Switch showing between Mat and Vct.
|
||||
|
||||
-[LEFT] backword 26.
|
||||
-[RIGHT] forword 26.
|
||||
|
||||
|
||||
[Operation in Edit Mode]
|
||||
[SHIFT]+[8](CLIP) All data of selected Mat/List/Vct is clipped in buffer.
|
||||
[SHIFT]+[9](PASTE) Clipped data is pasted to selected Mat/List/Vct from buffer.
|
||||
|
||||
|
||||
to edit numerical value;
|
||||
-[F1] (EDIT) Edit the element of the Mat/List/Vct.
|
||||
-[F2] (GO) Go to element set by row and column.
|
||||
-[F3] (INITIAL) Initialize all elements.
|
||||
-[F4] (>x,y / >m,n) Switch Matrix indication between [m,n] and [x,y].
|
||||
|
||||
-[SHIFT]+[F5] or [F5] Switch element values between in decimal and binary.
|
||||
(applied only to nybble (4 bits), byte (1 byte) and word (2 bytes))
|
||||
-[SHIFT]+[F6] or [F6] Switch element values between in decimal and hexadecimal.
|
||||
(not applied to 1 bit and a complex number (16 bytes), double number (8 bytes) just displays internal data)
|
||||
|
||||
-[SHIFT]+[F2] or [OPTN] Enter to Dot Editor Mode.
|
||||
-[SHIFT]+[F3] or [VARS] Enter to Character Strings Edit Mode.
|
||||
|
||||
Only for g3m mode on C.Basic for CG (excluding 1 bit Mat/List/Vct);
|
||||
-[SHIFT]
|
||||
[5] Input 4 bit color value in nibble (4 bits) or 16 bits color value in other element number type.
|
||||
[6] Input 16 bits color value (excluding nibble (4 bits) Mat/List/Vct).
|
||||
|
||||
|
||||
to edit Dots;
|
||||
Each element value of matrix can be handled as color code.
|
||||
- Using in 1 bit matrix or in g1m mode, 0(zero) = black and 1 = white.
|
||||
|
||||
-[F1] (0 <> 1) Change the value of the element with 0<>1. (1 bit Mat and g1m mode)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Search/Replace for Text
|
||||
-------------------------------------------------------------------------------
|
||||
[Search character string]
|
||||
Operatin procedure;
|
||||
1. Input character string and press [F1](SEARCH) or [EXE].
|
||||
2. To search next, press [F1](SEARCH) or [EXE] again.
|
||||
3. Press [F6](RETRY) to back to search page.
|
||||
|
||||
[Replace character string]
|
||||
Operatin procedure;
|
||||
1. Input character string to search, and press [F2](REPL).
|
||||
2. Then input character string to be replaced with, and press [F1](SEARCH), [F2](REPL) or [EXE].
|
||||
3. To search more for replacement, press [F1](SEARCH) or [EXE] again.
|
||||
4. Then press [F2](REPL) to replace again.
|
||||
5. To replace all, press [F3](ALL) or [F4](ALL+). To quit replacement, press [AC/ON].
|
||||
When pressing [F4] (ALL+), progress status is not dusplayed.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Incompatible Spec against genuine Casio Basic
|
||||
-------------------------------------------------------------------------------
|
||||
Compatibility with genuine Casio Basic is our target, but not 100%;
|
||||
|
||||
An input line by command "?" and "?->" are only in single line. A string of characters more than 21 columns is displayed still in the horizontal single line by scrolling, not in multiple lines.
|
||||
When ":" (Multi-statement Command) comes right after graphing sketch command, graphic screen is not re-drawn.
|
||||
Program running time is displayed after the program quit. This function can be set on or off in setup page.
|
||||
A Comment Text Delimiter ' is available for comment-out before Carriage Return or Disps (output), but ":" (Multi-statement Command) can be included the commented out string.
|
||||
|
||||
C.Basic also takes in user-friendly feature of fx-5800P;
|
||||
|
||||
C.Basic does support a script "?A" supported by fx-5800P. This is not supported by fx-9860G / fx-9860GII (script "?->A" only is supported).
|
||||
Function of string output command " " is fully compatible with fx-5800P in details but not exactly compatible with fx-9860G/fx-986GII. See Topics in details.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Select Character Page
|
||||
-------------------------------------------------------------------------------
|
||||
In addition to character set of genuine Casio Basic, more characters are supported.
|
||||
|
||||
In "Character Select" page;
|
||||
[F6] ASCII, Kana, external character can be applied.
|
||||
[SHIFT]/[F1]〜[F6] Continuous input is available.
|
||||
[OPTN] Switch between mini-font and normal font.
|
||||
[VARS] - C.Basic for FX Switch between OS supported the mini-font and normal font.
|
||||
[VARS] - C.Basic for CG Switch between C.Basic font and OS supported font.
|
||||
When OS supported font is displayed, special character can be input without escape.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Differences in Graph 35 + E II
|
||||
-------------------------------------------------------------------------------
|
||||
-There is 3MB of storage memory.
|
||||
-Hidden memory is limited to 188KB.
|
||||
-As can create two or more folders, you can change the root folder.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Setup Page
|
||||
-------------------------------------------------------------------------------
|
||||
Setup items - compatible with genuine Casio Basic
|
||||
|
||||
Angle: Rad / Deg / Grad
|
||||
Draw Type: on / off
|
||||
Coord: on / off
|
||||
Grid: on / off
|
||||
Axes: on / off
|
||||
Label: on / off
|
||||
Derivative: on / off
|
||||
Sketch Line: Normal / Thick / Broken / Dot
|
||||
|
||||
|
||||
Setup items - newly provided and extended for C.Basic
|
||||
-------------------------------------------------------------------------------
|
||||
Display: Fix / Sci / Nrm / Eng
|
||||
Max number of digit after decimal point can be 15. Setting 0 (zero) max digit is 16.
|
||||
Nrm1 or Nrm2 is fully compatible with genuine Casio Basic and max digit is 10.
|
||||
- Nrm1: -0.01<x<0.01
|
||||
- Nrm2: -0.000000001<x<0.000000001
|
||||
- Other number (0 or 3 - 15) is to set max number of digit.
|
||||
Eng: select among Eng Off, Eng On (/E) and 3 digit separator (/3)
|
||||
※ Related command: Eng, Norm, Fix, Sci
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
the help dispyay at the command input of editor.
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : On/Off
|
||||
set it whether you return setting compatible with genuine CasioBasic after a program in SetupRecover.
|
||||
-------------------------------------------------------------------------------
|
||||
Command Input :C.Basic/Standard
|
||||
Select Standard(fx-9860G) method or C.Basic(fx-5800P) method.
|
||||
You can change the mode of "" output specifications compatible with fx-5800P and FX/CG.
|
||||
- Related command: '#58
|
||||
'#98
|
||||
-------------------------------------------------------------------------------
|
||||
Max Mem Mode : on/off
|
||||
Set to use the available maximum memory.
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
Set to use external font.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : On/Off
|
||||
enable external font in editor.
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize :Standard/Mini/Mini_rev/Mini UnderCursor/Mini_rev_UnderCSR
|
||||
Set to Editor font size.
|
||||
-------------------------------------------------------------------------------
|
||||
HideStatLine :On/Off
|
||||
On :Hide the status line and use for editing.
|
||||
Off:Display the status line.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
enable auto indent in editor.
|
||||
Off: diable auto indent.
|
||||
1 : Set indent width to 1.
|
||||
2 : Set indent width to 1.
|
||||
4 : Set indent width to 1.
|
||||
Save-: delete blank spaces including indents when saving program. (=to compatible with Casio Basic)
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum :on/off
|
||||
Set to line number display.
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar : List / reverseL / Thick L
|
||||
Select List display character.
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidden RAM: on / off
|
||||
Set if C.Basic uses hidden RAM or not.
|
||||
-------------------------------------------------------------------------------
|
||||
HiddenRAM Init: on / off
|
||||
When use the hidden RAM, Mat&List at the time of C.Basic start, to initialize or not.
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No: 20~99
|
||||
When use the hidden RAM, you can use more pict file.
|
||||
(*)When you change a value, Pict&Mat&List is reset.
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No: 52~1040
|
||||
When use the hidden RAM, you can use more List.
|
||||
(*)When you change a value, Pict&Mat&List is reset.
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on / off
|
||||
When [AC] break, debug mode on/off.
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on / off
|
||||
Set to popup of exit Debug Mode.
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop: on / off
|
||||
Set if [AC] key break is accepted or not.
|
||||
When it's off, you cannot break program by [AC] key.
|
||||
- Related command: '#Break 0 '#Break 1
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp: on / off /reset /%HR
|
||||
Set if program running time is displayed or not after the program quits.
|
||||
Timer starts at first line of program. ? or Disps command reset the timer.
|
||||
In the case of GetKey1/2, the timer is suspended and starts after command again.
|
||||
on reset: The timer is reset and starts again after GetKey1/2.
|
||||
%HR: use 1/32768s timer (only SH4A)
|
||||
- Related command: '#GetKeyC '#GetKeyR
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check: on / off
|
||||
Set if one-to-one correspondence of "If" and "IfEnd" statement is checked or not.
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak: on / off
|
||||
Set ACBreak command to be enable or disable.
|
||||
- Related command: ACBreak
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return:None/ F1/ EXE/ F1&EXE
|
||||
force return to file mode at [AC]break.
|
||||
(Example) Force Return set to [F1]key
|
||||
-File list→[F1](EXE)→[AC]→[EXIT]… Returns to the file list.
|
||||
-File list→[EXE]→[AC]→[EXIT] …… Returns to the editor.
|
||||
-File list→[F1](EXE]→[AC]→[EXE](restart)→[AC]→[EXIT] …… Returns to the file list.
|
||||
(The operation depends on which key is pressed first.)
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time: 25 ms - 1000 ms (default value is 500 ms)
|
||||
Set time before key repeat starts (in 25 ms interval)
|
||||
-------------------------------------------------------------------------------
|
||||
Key Rep time: 25 ms - 500 ms (default value is 125 ms)
|
||||
Set key repeat duration time (in 25 ms interval)
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down: 1 - 9999
|
||||
Set number of skipping page for SkipUp ([SHIFT][Up]) or SkipDown ([SHIFT][Down]).
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode: [m,n] / [X,Y]
|
||||
Set matrix display format in Matrix Editor page.
|
||||
Format [m,n] and [X,Y] are in transposed matrix each other, but just only the appearance on screen is different. The internal matrix data is still same, won't be changed.
|
||||
-------------------------------------------------------------------------------
|
||||
Matrix base: 0 / 1
|
||||
Set index of matrix starts with 0 or 1.
|
||||
When the start index is set to 0, left-top pixel comes to be available to use and left-top coordinate of device coordinates can be (0, 0).
|
||||
- Related command: '#Mat 0, '#Mat 1
|
||||
-------------------------------------------------------------------------------
|
||||
DATE: 2017/01/17 TUE
|
||||
Set date of internal RTC. A day of the week is automaticly set.
|
||||
-------------------------------------------------------------------------------
|
||||
TIME: 23:59:59
|
||||
Set time of internal RTC
|
||||
- Related command: DATE, TIME
|
||||
-------------------------------------------------------------------------------
|
||||
Root Folder:/ (* Only Graph 35+E II is valid.)
|
||||
[F1]:to set the root folder.
|
||||
[F2]:to set the current folder.
|
||||
- Related command:
|
||||
'#R/ // to set the root folder.
|
||||
'#R. // to set the current folder.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file Save:on/off
|
||||
Set to auto save without a popup.
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save: on / off
|
||||
Set "save automatically" or "not save" g1m file, after run or edit of text file.
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode: S.Mem / Heap / Both / MainMem
|
||||
- S.Mem: Pict file is created in storage memory/SD and it takes a bit longer.
|
||||
- Heap: Pict file is not actually created, but compatible file is allocated in main memory.
|
||||
- Both: Stored always in storage memory/SD.
|
||||
- Main: Pict file is compatible with genuine CasioBasic.
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode: S.Mem / SD / MainMem
|
||||
S.Mem: Files in storage memory is used for run and edit.
|
||||
SD: Files in SD is used for run and edit (available oonly for SD verison of fx-9860G series
|
||||
Main mem: Files in MCS(Mein Memory) is used for run and edit.
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD: off / Grp / All
|
||||
Set how to refresh screen at running of display and draw command.
|
||||
Off: No extra refresh control is carried out, which is compatible with genuine Casio Basic.
|
||||
Grp: Only graphics draw commands make screen refreshed, excepting ClrText, Locate, Text, LocateYX, " " (this exception is compatible with former version of C.basic).
|
||||
All: All the display and draw commands male screen refreshed. PutDispDD should be used as may be necessary.
|
||||
Time: Set refresh control tme in interval of 1/128 sec. Defalt value is 3 then refresh control is every 1/42 sec.
|
||||
It is not refreshed when 0 is set.
|
||||
- Related command: RefrshCtrl, RefrshTime
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
Set to wait for slowdown execution speed.
|
||||
- Related command:Wait
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode: Dbl# / Int% / CPLX
|
||||
Set running mode as default.
|
||||
- Related command: '#CBasic, '#CBASIC, '#CBINT, '#CBint '#CBCPLX '#CBcplx
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Acknowledgment
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
To investigate and implement internal specification,
|
||||
"SuperH-based fx calculators (version 20)"
|
||||
gave useful information.
|
||||
|
||||
For file handling in C.Basic,
|
||||
"https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Casio Fx-9860 Series On-calc C Compiler"
|
||||
gave useful information.
|
||||
|
||||
For Japanese Kana Fonts, font data and output routine in the following site is used;
|
||||
"http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html"
|
||||
|
||||
|
||||
For detailed feature and function of original Casio Basic, following site is referenced;
|
||||
e-Gadget - Programming Calculator by Krtyski
|
||||
"https://egadget.blog.fc2.com/"
|
||||
(almost contents are in Japanese).
|
||||
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
Their opinions were very useful.
|
||||
|
||||
I am grateful for everyone's cooperation.
|
||||
|
||||
by sentaro21
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
related link
|
||||
-------------------------------------------------------------------------------
|
||||
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Licensing
|
||||
-------------------------------------------------------------------------------
|
||||
This software is free software, in accordance with GPLv2.
|
|
@ -0,0 +1,558 @@
|
|||
Veuillez consulter ce site créé par Krtyski. (Administrateur du gadget électronique)
|
||||
http://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
Ce site et le texte suivant ont été traduits par Krtyski (administrateur du gadget électronique) & Lephenixnoir (administrateur de Planet-Casio).
|
||||
Merci beaucoup pour votre aide.
|
||||
|
||||
===============================================================================
|
||||
|
||||
Complément Casio Basic Interpreter (&Compiler) Version bęta 2.x
|
||||
|
||||
copyright (c) 2015-2020 de sentaro21
|
||||
courriel sentaro21@pm.matrix.jp
|
||||
|
||||
derničre mise ŕ jour par sentaro21 le 10/02/2020
|
||||
===============================================================================
|
||||
|
||||
** Si vous pensez que vos programmes Casio Basic ne tournent pas assez vite, C.Basic peut vous libérer de cette frustration! **
|
||||
|
||||
Commencez avec les programmes Casio Basic authentiques, puis profitez de commandes étendues que Casio Basic seul ne peut pas exécuter.
|
||||
|
||||
- Actuellement, **C.Basic** (interpréteur de base) fonctionne sur les modčles fx-9860G (SH3), fx-9860GII (SH3) et fx-9860GII (SH4A), mais la prise en charge de Prizm fx-CG10 et fx-CG20 est planifiée.
|
||||
- **C.Basic** deviendra un compilateur Casio Basic "**C:Basic**", qui exécutera des programmes beaucoup plus rapidement que C.Basic (10 fois son apparence).
|
||||
|
||||
Toutes les instructions prises en charge par C.Basic sont répertoriées dans les fichiers `" Command_List.txt "` et `" Manual_EN.txt "` inclus dans le package de distribution.
|
||||
|
||||
|
||||
## Avantages
|
||||
|
||||
- C.Basic est principalement compatible avec les produits Casio Basic authentiques.
|
||||
- Les programmes sont exécutés au moins 10 fois plus rapidement dans C.Basic.
|
||||
- Les éditeurs de listes et de fichiers de C.Basic sont plus faciles ŕ utiliser que les habituels.
|
||||
- Peut exécuter des programmes ŕ partir de la mémoire de stockage / mémoire principale et supporte les structures de sous-dossiers.
|
||||
- Certaines commandes Casio Basic sont étendues pour davantage de fonctionnalités.
|
||||
- Commandes nouvellement implémentées pour une programmation plus puissante et plus flexible.
|
||||
|
||||
## Les inconvénients
|
||||
|
||||
- C.Basic ne couvre pas toutes les commandes de base d'origine.
|
||||
- Les calculs ne donnent pas les męmes résultats que l'interpréteur habituel car C.Basic utilise une virgule flottante double précision au lieu de BCD ŕ virgule fixe.
|
||||
- C.Basic stocke les fichiers PICT dans la mémoire de stockage, ce qui les ralentit (du moins jusqu'ŕ la version 0.87, qui utilise la zone de mémoire de la mémoire principale).
|
||||
- Il doit y avoir des bugs, malheureusement ^^ Merci de nous fournir un rapport de bogue si vous en trouvez.
|
||||
|
||||
|
||||
# # Presque compatible avec la vanille Casio Basic
|
||||
|
||||
Notre objectif est une compatibilité sans faille, mais certaines différences sont intentionnelles:
|
||||
|
||||
- Les commandes d'entrée `?` et `??` `sont affichées sur une seule ligne. L'affichage d'une chaîne de plus de 21 caractčres entraînera un défilement horizontal au lieu d'un retour ŕ la ligne.
|
||||
- Quand une commande d'esquisse graphique est suivie d'une commande ŕ instructions multiples `:`, l'écran n'est pas actualisé.
|
||||
- La durée du programme est affichée ŕ la fin du programme. Cette fonction peut ętre déclenchée dans la page de configuration.
|
||||
- Les délimiteurs de commentaires `'` sont autorisés avant les retours ŕ la ligne et Disps (sortie), et `:` peuvent ętre inclus dans la chaîne de commentaire.
|
||||
|
||||
C.Basic intčgre également les fonctionnalités conviviales de fx-5800P:
|
||||
|
||||
- C.Basic supporte une commande `"?A"` comme fx-5800P, par opposition ŕ fx-9860G / fx-9860GII qui ne supporte que `"?->A"`.
|
||||
- La commande de sortie de chaîne `" "` est entičrement compatible avec le fx-5800P, ce qui en fait un différent du fx-9860G / fx-9860GII. Voir [Sujet] (http://egadget.blog.fc2.com/blog-entry-520.html) pour plus de détails.
|
||||
|
||||
|
||||
======= ATTENTION !!! =========
|
||||
Nous ne pensons pas que C.Basic pourrait endommager votre calculatrice, mais la mémoire principale pourrait tout de męme ętre endommagée ou détruite de maničre inattendue, ce qui nécessiterait une réinitialisation complčte de la mémoire. Par conséquent, il est fortement recommandé de sauvegarder vos données de mémoire principale et de mémoire de stockage. Sachez que vous ne devez utiliser C.Basic qu'ŕ vos risques et périls.
|
||||
===============================
|
||||
|
||||
======= Décharge de garantie =========
|
||||
L’utilisation de C.Basic et C: Basic (ci-aprčs SOFTWARE) est ŕ la seule risque de l’utilisateur. Tous les matériaux, informations, produits, logiciels, programmes et services fournis sont fournis «en l’état», sans aucune garantie. Les créateurs de LOGICIEL et d’équipe d’assistance fournissant des documents d’assistance, un site Web d’assistance, des programmes d’information et des exemples de programmes (ci-aprčs «ÉQUIPE DE DÉVELOPPEMENT») déclinent expressément toutes les garanties expresses, implicites, statutaires ou autres, y compris, sans limitation, les garanties de qualité marchande, d'adéquation ŕ un usage particulier et de non-violation des droits de propriété et des droits de propriété intellectuelle. Sans aucune limitation, DEVELOPMENT TEAM ne garantit pas que le développement du LOGICIEL sera ininterrompu, rapide, sécurisé ou sans erreur.
|
||||
======================================
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
# Démarrer C.Basic
|
||||
|
||||
Pour démarrer ** C.Basic **, appuyez sur `[MENU]`, sélectionnez l'icône C.Basic, puis appuyez sur `[EXE]`.
|
||||
|
||||
Il existe deux maničres de copier un fichier de programme (fichier `g1m`) développé pour l'interpréteur Casio Basic d'origine dans la liste des fichiers en C.Basic:
|
||||
|
||||
## Utilisation du gestionnaire de mémoire pré-installé
|
||||
|
||||
- Pour démarrer le gestionnaire de mémoire, appuyez sur `[MENU]`, sélectionnez l'icône du gestionnaire de mémoire et appuyez sur `[EXE]`.
|
||||
- Appuyez sur `[F1]` pour afficher le contenu de la mémoire principale.
|
||||
- Déplacez le curseur vers le bas sur `<PROGRAM>` et appuyez sur `[EXE]`. Vous devriez maintenant voir la liste de tous les programmes Basic Casio actuellement installés pour l'interpréteur habituel.
|
||||
- Sélectionnez le fichier programme que vous souhaitez copier.
|
||||
- Appuyez sur `[F1] (SEL)` puis `[F2] (COPY)`.
|
||||
- Sélectionnez `" ROOT "`, appuyez sur `[EXE]`; la calculatrice vous demandera un nom de fichier.
|
||||
- Entrez un nom de fichier approprié ou simplement «A», puis appuyez sur «[EXE]».
|
||||
- Appuyez sur la touche `[MENU]` pour revenir au menu principal.
|
||||
- Démarrer C.Basic.
|
||||
- Dans la liste des fichiers, sélectionnez le nom que vous venez d'entrer, appuyez sur `[F6]` puis `[F2] (REN)`.
|
||||
- On vous demandera `[Renommer le nom du fichier?]` Et le nom du fichier d'origine sera affiché (męme si vous avez tapé le signe "" A "`). Appuyez sur `[EXE]`.
|
||||
- Maintenant, le nom du fichier a été corrigé.
|
||||
|
||||
## Utilisation du logiciel PC Link (FA-124)
|
||||
|
||||
FA-124 est un logiciel de liaison PC inclus dans les packages de fx-9860G et fx-9860G II. Pour des instructions détaillées, veuillez vous reporter ŕ son manuel.
|
||||
|
||||
Une fois que vous avez téléchargé le fichier source d'un programme (fichier `g1m`), vous pouvez utiliser le logiciel de liaison PC pour le copier dans la liste des fichiers de C.Basic.
|
||||
|
||||
=================================================================================
|
||||
Guide rapide - Environnement de développement de C.Basic
|
||||
=================================================================================
|
||||
---------------------------------------------------------------------------------
|
||||
Page de liste de fichiers
|
||||
---------------------------------------------------------------------------------
|
||||
- [UP] Déplace le curseur vers le fichier précédent.
|
||||
- [DOWN] Déplace le curseur sur le fichier suivant.
|
||||
En appuyant sur A ŕ Z, le curseur passe ŕ un nom de fichier commençant par l'alphabet enfoncé.
|
||||
Cette fonctionnalité est compatible avec fx-5800P mais pas avec fx-9860G / fx-9860GII.
|
||||
En appuyant sur [.] passez ŕ un nom de fichier commençant par "~".
|
||||
En appuyant sur [EXP(x10)] la touche pour accéder au haut de la liste des dossiers.
|
||||
|
||||
- [F1] (EXE) Exécuter le fichier sélectionné.
|
||||
- [F2] (EDIT) Édite le fichier sélectionné.
|
||||
- [F3] (NEW) Créer un nouveau fichier.
|
||||
- [F4] (COPY) Copie le fichier sélectionné.
|
||||
- [F5] (DEL) Supprimez le fichier sélectionné.
|
||||
- [F6] ( > ) Permet de passer au menu suivant.
|
||||
[F1] (Texte) Convertit le fichier source sélectionné (fichier g1m) en fichier texte.
|
||||
[F2] (REN) Renomme le fichier.
|
||||
[F3] (Fav.) Définissez / réinitialisez le fichier sélectionné dans / ŕ partir de "Favori".
|
||||
[F4] (Fv.up) Déplace le fichier favori sélectionné vers le haut.
|
||||
[F5] (Fv.dw) Déplace le fichier favori sélectionné vers le bas.
|
||||
[F6] ( > ) Revient au menu précédent.
|
||||
[F1] (MK.F) Créer un nouveau dossier
|
||||
[F6] ( > ) Revient au menu précédent.
|
||||
|
||||
- [EXE] Exécuter le fichier sélectionné.
|
||||
|
||||
- [SHIFT] +
|
||||
[EXIT] (QUIT) Revenez ŕ la racine du sous-dossier.
|
||||
[GAUCHE] Contraste (ps) (* fonction interne du systčme d'exploitation)
|
||||
[RIGHT] Contraste (up) (* fonction interne du systčme d'exploitation)
|
||||
[F1] (Var) Aller ŕ la page de révision des variables.
|
||||
[F2] (Mat) Aller ŕ la page de révision des variables de mat.
|
||||
[F3] (V-W) Aller ŕ la page de révision de la valeur du paramčtre ViewWindow.
|
||||
[F4] (Pass) Définir / réinitialiser le mot de passe.
|
||||
[F6] (Debg) Démarrer le mode Debug & ouvrir la page de l'éditeur.
|
||||
|
||||
- [VARS] (page de révision des variables)
|
||||
[F1] (A<>a) Basculer l'affichage des variables majuscules et minuscules.
|
||||
[F2] (Init) Initialise toutes les variables affichées.
|
||||
[F3] (D<>I) Siwitch variables entičres et doubles.
|
||||
[F6] (>Hex/>Dec) Commute l'affichage des valeurs en Hex et Dec.
|
||||
|
||||
- [SHIFT] [MENU] (SETUP) Réglages initiaux
|
||||
[MENU] Aller ŕ la page de configuration.
|
||||
[MENU] [F6] Pop up Information sur la version.
|
||||
|
||||
- [OPTN] Définir / Réinitialiser le fichier sélectionné dans / depuis "Favori".
|
||||
|
||||
- [EXIT] Déplace le curseur vers le premier fichier de la liste.
|
||||
Lorsque le curseur est sur le premier fichier du sous-dossier, revenez ŕ la racine.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Page de l'éditeur
|
||||
-------------------------------------------------------------------------------
|
||||
Le repčre de guide affiché ŕ l'extręme droite de la page d'édition indique la position du curseur dans le fichier source.
|
||||
|
||||
- [F1] (JUMP) Affiche le sous-menu JUMP.
|
||||
[F1] (TOP) Aller ŕ la premičre ligne du fichier source.
|
||||
[F2] (BTM) Aller ŕ la derničre ligne du fichier source.
|
||||
[F3] (GOTO) Passez ŕ une ligne oů vous voulez aller.
|
||||
[F5] (SkipUp) Ignore les lignes (le nombre de lignes prédéfini est disponible dans la page de configuration) vers le haut.
|
||||
[F6] (SkipDw) Ignore les lignes (le nombre de lignes prédéfini est disponible dans la page de configuration) vers la fin.
|
||||
|
||||
- [F2] (SRC) Aller ŕ la page de recherche / remplacement de chaînes.
|
||||
- [F3] (CMD) Allez ŕ la page de sélection de commande. (c'est comme la liste des commandes fx-5800P) (mode fx-5800P)
|
||||
(MENU)) SelectCommand (mode fx-9860G)
|
||||
- [F4] (A<>a) Commutez majuscule et minuscule.
|
||||
- [F5] (CHAR) Aller ŕ la page de sélection de personnage.
|
||||
- [F6] (EXE) Exécuter un programme ou le redémarrer lorsqu'il est en pause.
|
||||
|
||||
- [SHIFT] +
|
||||
[EXIT] (QUIT) Retournez ŕ la page de la liste des fichiers.
|
||||
[GAUCHE] Contraste (ps) (* fonction interne du systčme d'exploitation)
|
||||
[RIGHT] Contraste (up) (* fonction interne du systčme d'exploitation)
|
||||
[UP] Faites défiler 1 page (6 lignes) vers le haut.
|
||||
[BAS] Faites défiler 1 page (6 lignes) jusqu'ŕ la fin.
|
||||
[F1] (Var) Aller ŕ la page Variables.
|
||||
[F2] (Mat) Aller ŕ la page Variables Mat.
|
||||
[F3] (V-W) Allez ŕ la page ViewWindow.
|
||||
(VWIN) Sélectionnez Command. (mode fx-9860G)
|
||||
[F5] (Dump) / (List) Bascule entre les affichages "Basic List" et "Hex Dump".
|
||||
[F6] (G <> T) Permet de changer d’écran de graphiques et de texte.
|
||||
|
||||
[F4] (SKTCH) Sélectionnez Command. (mode fx-9860G)
|
||||
[F4] (Dump) / (List) Affiche les affichages "Basic List" et "Hex Dump" (mode fx-5800P).
|
||||
[F5] (Dump) / (List) Bascule entre les affichages "Basic List" et "Hex Dump".
|
||||
[F6] (CHAR) Aller ŕ la page de sélection de personnage. (mode fx-9860G)
|
||||
[F6] (G <> T) Permet de changer d’écran de texte et graphique (mode fx-5800P).
|
||||
|
||||
- [OPTN] Liste de commandes contextuelle prise en charge par [OPTN] de fx-9860G / GII (mode fx-5800P)
|
||||
Sélectionnez Commande. (mode fx-9860G)
|
||||
- [VARS] Liste déroulante de liste déroulante prise en charge par [VARS] de fx-9860G / GII (mode fx-5800P)
|
||||
Sélectionnez Commande. (mode fx-9860G)
|
||||
|
||||
- [MENU] Historique de saisie de commande (ordre chronologique / ordre de fréquence d'entrée modifié par les touches gauche et droite.)
|
||||
[AC/ON] Effacer l'historique
|
||||
|
||||
- [SHIFT] [VARS] (PRGM) Liste de commande contextuelle prise en charge par [PRGM] de fx-9860G / GII.
|
||||
- [SHIFT] [MENU] (SETUP) Allez ŕ la page Setup (mode fx-5800P)
|
||||
(SETUP) Sélectionnez Command. (mode fx-9860G)
|
||||
|
||||
- [ALPH] [DEL] (UNDO) Supprimer ou coller les opérations sont restaurées dans l'état précédent. (une seule fois)
|
||||
|
||||
- [EXIT] Revenir ŕ la page précédente, annuler le mode Clip ou revenir ŕ la page de la liste des fichiers.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Page de l'éditeur de mode de débogage
|
||||
-------------------------------------------------------------------------------
|
||||
- [F1] (Cont) Continue le programme ŕ partir de la position du curseur.
|
||||
- [F2] (Trce) Tracez le programme ŕ partir de la position du curseur et revenez ŕ la page Editeur en mode débogage juste aprčs l'exécution de la commande tracée,.
|
||||
- [F3] (Step) Trace and Step Over (Commencer et suivre) ŕ partir de la position du curseur et revenir ŕ la page de l'éditeur en mode débogage juste aprčs l'exécution de la commande. Lorsque la sous-routine est exécutée, la sous-routine est exécutée jusqu'ŕ la fin.
|
||||
- [F4] (S.ot) Sortez de la position du curseur et revenez ŕ la page Editeur en mode Debug juste aprčs l'exécution de la commande. Lorsque le sursor est en sous-routine, la sous-routine est exécutée jusqu'ŕ la fin.
|
||||
- [F5] (L<>S) Basculez la page de l'éditeur et l'écran du programme en cours. Lorsque l'écran d'exécution du programme est affiché, les opérations de débogage avec [F1] - [F4] sont toujours disponibles.
|
||||
- [F6] (>) Basculez le menu Debug manu and Editor. Lorsque l'écran d'exécution du programme est affiché, appuyez sur [F6] (>) pour afficher le menu Débogage.
|
||||
- [EXIT] Revenez ŕ la page précédente, annulez le mode Clip ou revenez ŕ la page d'édition normale (pas en mode débogage).
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Écran de fonctionnement du programme
|
||||
-------------------------------------------------------------------------------
|
||||
Pendant le programme est en cours d'exécution;
|
||||
|
||||
- [AC] Arręte le programme.
|
||||
[EXIT] Aller ŕ l'éditeur en mode débogage. Le curseur se situe au point de rupture.
|
||||
[Gauche] Allez ŕ l'éditeur en mode débogage. Le curseur se situe au point de rupture.
|
||||
[F1] Reprendre le programme.
|
||||
[EXE] Reprendre le programme.
|
||||
Quand le programme est arręté par la commande Disps (- Disp - est affiché ŕ l’écran);
|
||||
|
||||
- [SHIFT] +
|
||||
[F1] (Var) Aller ŕ la page des variables
|
||||
[F2] (Mat) Aller ŕ la page des variables de tapis
|
||||
[F3] (V-W) Aller ŕ la page ViewWindow
|
||||
[F6] (G <> T) Écran Changer graphisme et texte
|
||||
- [EXE] Reprendre le programme.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Écran Mat / List Editor
|
||||
-------------------------------------------------------------------------------
|
||||
[Écran Mat / List /Vct (la méthode d’opération est commune.)
|
||||
(Le tapis que vous avez obtenu en adressant la marque * en le listant.)
|
||||
|
||||
- [F1] (DEL) Supprimer un tapis / une liste.
|
||||
- [F2] (DEL-ALL) Supprimer tout Mat / Liste.
|
||||
- [F3] (DIM) Définissez la dimension, la taille de l'élément, une valeur initiale d'index du Mat / List.
|
||||
- [F4] (INITIAL) Initialise tous les éléments du Mat / List of selected.
|
||||
- [F5] (Mat: / Lst :) Sélectionnez un numéro et sautez.
|
||||
- [F6] (A<>a) Commutez majuscule et minuscule.
|
||||
|
||||
- [EXE] Entrez dans l'écran d'édition Mat / List. (détaillé plus tard)
|
||||
|
||||
- [SHIFT][F1] (Mat) Sélectionnez Mat
|
||||
- [SHIFT][F2] (Liste) Sélectionnez Liste
|
||||
- [SHIFT][F3] (Vct) Sélectionnez Vct
|
||||
|
||||
- [OPTN] Commutateur s’affichant entre Mat et List.
|
||||
- [VARS] Commutateur montrant entre Mat et Vct.
|
||||
|
||||
- [LEFT] backword 26.
|
||||
- [RIGHT] mot d’ordre 26.
|
||||
|
||||
|
||||
[Écran d'édition Mat / List]
|
||||
[SHIFT]+[8] (CLIP) Vous pouvez extraire toutes les données Mat / List dans le tampon de clips.
|
||||
[SHIFT]+[9] (PASTE) Vous pouvez coller des données Mat / List ŕ partir du tampon de clips.
|
||||
|
||||
|
||||
(mode d'édition de valeur numérique)
|
||||
- [F1] (EDIT) Modifie l'élément du Mat / List.
|
||||
- [F2] (GO) Aller ŕ l'élément.
|
||||
- [F3] (INITIAL) Initialise tous les éléments.
|
||||
- [F4] (m,n/X,Y) Changement d'indication [m,n]/[X,Y].
|
||||
|
||||
- [SHIFT]+[F5] ou [F5] Modifier l'affichage décimal <> binaire. (uniquement pour nybble (4 bits), octet (1 octet), le mot (2 octets))
|
||||
- [SHIFT]+[F6] ou [F6] Change l’affichage décimal <> hexadécimal. (autre que 1 bit et un nombre complexe (16 octets), le double (8 octets) affiche uniquement les données internes)
|
||||
|
||||
- [SHIFT]+[F2] ou [OPTN] Passer ŕ l'éditeur de points.
|
||||
- [SHIFT]+[F3] ou [VARS] Passer ŕ l'affichage de la chaîne de caractčres.
|
||||
|
||||
Seulement comme pour ce qui suit, mode g3m (sauf le bit / liste 1 bit)
|
||||
-[DÉCALAGE]
|
||||
[5] Saisissez une couleur de 16 bits différente de celle avec une couleur de 4 bits dans le quartet (4 bits).
|
||||
[6] Entrez une couleur de 16 bits. (sauf le nibble (4 bits) Mat / List)
|
||||
|
||||
|
||||
(éditeur de points)
|
||||
traiter la valeur de chaque élément du tapis comme un code de couleur.
|
||||
blanc = 1, noir = 0 avec 1 bit Mat et le mode g1m.
|
||||
C'est une couleur de 4 bits dans le nibble (4 bits Mat).
|
||||
|
||||
- [F1] (0<>1) Modifiez la valeur de l'élément avec 0 <> 1. (Mode 1 bit Mat et g1m)
|
||||
- [F1] Passez ŕ la couleur affichée par le menu de fonctions. (autre que le bit 1 Mat du mode g3m)
|
||||
* Il change en noir comme męme couleur
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Rechercher / Remplacer du texte
|
||||
-------------------------------------------------------------------------------
|
||||
[Recherche chaîne de caractčres]
|
||||
-Vous entrez une chaîne de caractčres, puis appuyez sur [F1] (SEARCH) ou sur [EXE].
|
||||
-Vous appuyez ŕ nouveau sur [F1] (SEARCH) ou [EXE] pour rechercher ensuite.
|
||||
- [F6] (RETRY) Permet de revenir ŕ l'écran de recherche.
|
||||
|
||||
[Remplacer la chaîne de caractčres]
|
||||
-Vous saisissez une chaîne de caractčres avant le remplacement, puis appuyez sur [F2] (REPL).
|
||||
-Alors vous entrez une chaîne de caractčres aprčs le remplacement et appuyez sur [F1] (SEARCH), [F2] (REPL) ou [EXE].
|
||||
-Vous appuyez ŕ nouveau sur [F1] (SEARCH) ou [EXE] pour rechercher ensuite.
|
||||
-Vous appuyez sur [F2] (REPL) pour le remplacer.
|
||||
-Vous appuyez sur [F3] (ALL) ou [F4] (ALL +) pour tout remplacer. Je pousse [AC] pour l'arręter.
|
||||
-Vous n’affichez pas la progression en cours de remplacement dans [F4] (ALL+).
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Spécification incompatible avec l'original CasioBasic
|
||||
-------------------------------------------------------------------------------
|
||||
Notre objectif est la compatibilité avec les produits Casio Basic authentiques, mais pas ŕ 100%.
|
||||
|
||||
Une ligne de saisie par la commande "?" et "? ->" ne sont que sur une seule ligne. Une chaîne de caractčres de plus de 21 colonnes est toujours affichée sur la ligne horizontale unique par défilement et non sur plusieurs lignes.
|
||||
Lorsque ":" (commande ŕ instructions multiples) vient juste aprčs la commande de croquis, l'écran graphique n'est pas redessiné.
|
||||
La durée du programme est affichée aprčs la fermeture du programme. Cette fonction peut ętre activée ou désactivée dans la page de configuration.
|
||||
Un séparateur de texte de commentaire 'est disponible pour les commentaires avant Carriage Return ou Disps (sortie), mais ":" (commande ŕ instructions multiples) peut ętre inclus dans la chaîne commentée.
|
||||
|
||||
C.Basic intčgre également la fonctionnalité conviviale de fx-5800P;
|
||||
|
||||
C.Basic supporte un script "? A" supporté par fx-5800P. Ceci n'est pas supporté par fx-9860G / fx-9860GII (le script "? -> A" seulement est supporté).
|
||||
La fonction de sortie de chaîne "" est totalement compatible avec fx-5800P dans les détails mais pas exactement compatible avec fx-9860G / fx-986GII. Voir les sujets en détail.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Différences dans le Graph 35+E II
|
||||
-------------------------------------------------------------------------------
|
||||
-Il y a 3 Mo de mémoire de stockage.
|
||||
-La mémoire cachée est limitée à 128KB.
|
||||
-Comme peut créer deux dossiers ou plus, vous pouvez changer le dossier racine.
|
||||
|
||||
|
||||
===============================================================================
|
||||
Menu de Configuration
|
||||
===============================================================================
|
||||
Options compatibles avec le Basic Casio :
|
||||
|
||||
Angle: Rad / Deg / Grad
|
||||
Draw Type: on / off
|
||||
Coord: on / off
|
||||
Grid: on / off
|
||||
Axes: on / off
|
||||
Label: on / off
|
||||
Derivative: on / off
|
||||
Sketch Line: Normal / Thick / Broken / Dot
|
||||
|
||||
|
||||
Nouvelles options fournies par C.Basic :
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Display: Fix / Sci / Nrm / Eng
|
||||
Le nombre maximal de chiffres possibles est augmenté ŕ 15. Indiquer 0 le pousse ŕ 16.
|
||||
Nrm1 et Nrm2 sont identiques au Basic Casio et affichent jusqu'ŕ 10 chiffres.
|
||||
Nrm1: -0.01<x<0.01
|
||||
Nrm2: -0.000000001<x<0.000000001
|
||||
Indiquer un autre paramčtre (0 ou 3..15) modifie le nombre maximum de chiffres.
|
||||
Other number (0 or 3 - 15) is to set max number of digit.
|
||||
Eng peut ętre configuré ŕ Eng Off, Eng On (/E) et séparateur de milliers (/3)
|
||||
Commandes liées : Eng, Norm, Fix, Sci
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
Aide ŕ la commande dans l'éditeur
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : On/Off
|
||||
Activer cette option restaure automatiquement, aprčs la sortie d'un programme, tous les paramčtres du Basic Casio ŕ leur valeur d'avant l'exécution.
|
||||
-------------------------------------------------------------------------------
|
||||
Command Input : C.Basic/Standard/>5800/>9800
|
||||
Choisit le mode d'entrée de commandes : Standard (fx-9860G) ou C.Basic (fx-5800P).
|
||||
Vous pouvez choisir le fonctionnement de "" : soit fx-5800P, soit fx-CG.
|
||||
- Commandes lieés : '#58
|
||||
'#98
|
||||
-------------------------------------------------------------------------------
|
||||
Max Mem Mode : on/off
|
||||
Utiliser toute la mémoire disponible.
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
Activer l'utilisation de la police externe.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : On/Off
|
||||
Activer l'éditeur de polices externes.
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize : Standard/Mini/Mini_rev/Mini UnderCursor/Mini_rev_UnderCSR
|
||||
Sélectionne la taille de police de l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
HideStatLine :On/Off
|
||||
On : masque la ligne d'état et utilise pour l'édition.
|
||||
Off: Affiche la ligne d'état.
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
activer l'indent automatique dans l'éditeur.
|
||||
Off: diable auto indent.
|
||||
1 : Définir la largeur de l'endent eden à 1.
|
||||
2 : Définir la largeur de l'endente à 1.
|
||||
4 : Définir la largeur de l'endent eden à 1.
|
||||
Enregistrer : supprimez les espaces vides, y compris les indents lors de l'enregistrement du programme. (à compatible avec Basic Casio)
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum :on/off
|
||||
Configure l'affichage des numéros de ligne.
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar : List / reverseL / Thick L
|
||||
Sélectionne le mode d'affichage des listes.
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidden RAM : on / off
|
||||
Utiliser la mémoire supplémentaire cachée.
|
||||
-------------------------------------------------------------------------------
|
||||
HiddenRAM Init : on / off
|
||||
Initialiser la mémoire supplémentaire cachée avant l'exécution.
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No : 20~99
|
||||
Lorsque la mémoire cachée est utilisée, le nombre de Picture peut ętre augmenté.
|
||||
(*) Changer cette valeur réinitialise les Picture, matrices et listes !
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No : 52~1040
|
||||
Lorsque la mémoire cachée est utilisée, le nombre de listes peut ętre augmenté.
|
||||
(*) Changer cette valeur réinitialise les Picture, matrices et listes !
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on / off
|
||||
Active le debugger lorsque [AC/ON] est utilisé pour interrompre le programme.
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on / off
|
||||
Afficher une popup quand le debugger se ferme.
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop : on / off
|
||||
Accepte ou refuse les interruptions par la touche [AC/ON].
|
||||
Quand cette option est ŕ off, vous ne pouvez pas quitter un programme en appuyant sur [AC/ON].
|
||||
- Commandes liées : '#Break 0 '#Break 1
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp : on / off /reset /%HR
|
||||
Affiche le temps d'exécution du programme une fois le programme terminé.
|
||||
Le timer est lancé ŕ la premičre ligne du programme. Les commandes ? et Disps le réinitialisent.
|
||||
Les fonctions Getkey1/2 mettent le timer en pause et le redémarrent ensuite.
|
||||
En cas de reset, le timer est réinitialisé est reprend au premier appel de Getkey1/2.
|
||||
%HR: Utilise le timer ŕ 1/32768s (SH4A uniquement)
|
||||
- Commandes liées : '#GetKeyC '#GetKeyR
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check : on / off
|
||||
Vérifie strictement la correspondance entre chaque "If" et chaque "IfEnd".
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak : on / off
|
||||
Active ou désactive la commande ACBreak.
|
||||
- Commandes liées : ACBreak
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return : None/ F1/ EXE/ F1&EXE
|
||||
Force le retour ŕ l'éditeur lors d'une interruption avec [AC/ON].
|
||||
(Exemple) Retour de force réglé à [F1]key
|
||||
-Liste de fichiers→[F1](EXE)→[AC]→[EXIT]... Retourne à la liste de fichiers.
|
||||
-Liste de fichiers→[EXE][AC]→[EXIT] ...... Retourne à l'éditeur.
|
||||
-Liste de fichiers→[F1](EXE]→[AC]→[EXE](restart)→[AC]→[EXIT] ...... Retourne à la liste de fichiers.
|
||||
(L'opération dépend de la clé qui est pressée en premier.)
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time : 25 ms - 1000 ms (valeur par défaut : 500 ms)
|
||||
Durée avant qu'une touche soit répétée pour la premičre fois (multiple de 25 ms)
|
||||
-------------------------------------------------------------------------------
|
||||
Key Rep time : 25 ms - 500 ms (valeur par défaut : 125 ms)
|
||||
Durée avant qu'une touche qui a déjŕ été répétée soit répétée de nouveau (multiple de 25 ms)
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down : 1 - 9999
|
||||
Nombre d'écrans parcourus pour chaque pression de SkipUp ([SHIFT][UP]) ou SkipDown ([SHIFT][DOWN]) dans l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode : [m,n] / [X,Y]
|
||||
Sélectionne le format d'affichage de matrices dans l'éditeur de matrices.
|
||||
Les formats [m,n] et [X,Y] sont transposés l'un de l'autre. Ce n'est qu'un paramčtre d'affichage, les données de la matrice restent stockées dans l'ordre original.
|
||||
-------------------------------------------------------------------------------
|
||||
Matrix base : 0 / 1
|
||||
Indice de début pour la numérotation des éléments de matrices. Il faut ętre en mode 0 pour utiliser la premičre ligne et la premičre colonne de la VRAM.
|
||||
- Commandes liées : '#Mat 0, '#Mat 1
|
||||
-------------------------------------------------------------------------------
|
||||
DATE : 2017/01/17 TUE
|
||||
Change la date de la RTC (horloge du systčme). Le jour de la semaine est calculé automatiquement.
|
||||
-------------------------------------------------------------------------------
|
||||
TIME : 23:59:59
|
||||
Change l'heure de la RTC.
|
||||
- Commandes liées : DATE, TIME
|
||||
-------------------------------------------------------------------------------
|
||||
Root folder:/ (Seul le Graph 35+E II est valide.)
|
||||
[F1]: pour définir le dossier racine.
|
||||
[F2]: pour définir le dossier actuel.
|
||||
- Commandes liées :
|
||||
'#R/ // pour définir le dossier racine.
|
||||
'#R. // pour définir le dossier actuel.
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file Save : on/off
|
||||
Désactive la popup de confirmation ŕ la sauvegarde dans l'éditeur.
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save : on / off
|
||||
Permet de sauvegarder automatiquement les fichiers g1m quand les programmes textes sont édités.
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode: S.Mem / Heap / Both / MainMem
|
||||
- S.Mem : Les Picture sont créées dans la mémoire de stockage (petit surcoűt temporel)
|
||||
- Heap : Les Picture ne sont pas vraiment créées, juste stockée temporairement dans la RAM
|
||||
- Both : Les deux.
|
||||
- Main : Les Picture sont gérées comme en Basic Casio, dans la mémoire principale.
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode: S.Mem / SD / MainMem
|
||||
Sélectionne le stockage temporaire pour le code pendant l'édition et l'exécution.
|
||||
S.Mem : Mémoire de stockage
|
||||
SD : Carte SD (Graph 95 SD uniquement)
|
||||
Main mem : Mémoire principale
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD: off / Grp / All
|
||||
Sélectionne le niveau de restriction du rafraîchissement automatique de l'écran.
|
||||
Off : Aucune restriction particuličre (comme en Basic Casio).
|
||||
Grp : Seules les commandes graphiques et ClrText, Locate, Text, LocateYX et "" provoquent le rafraîchissement de l'écran (ces exceptions sont en rétro-compatibilité avec les précédentes versions de C.Basic).
|
||||
All : Aucune commande ne rafraîchit l'écran automatiquement. PutDispDD doit ętre utilisé.
|
||||
Time : Sélectionne la durée de rafraîchissement automatiquement en unités de 1/128 s. La valeur par défaut est 3, ce qui donne environ 1/42 s de fréquence de rafraîchissement.
|
||||
Par défaut, la valeur est 0.
|
||||
- Commandes liées : RefrshCtrl, RefrshTime
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
Délai contrôlant la vitesse d'exécution globale.
|
||||
- Commandes liées : Wait
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode: Dbl# / Int% / CPLX
|
||||
Définit le mode de variables numériques par défaut.
|
||||
- Commandes liées: '#CBasic, '#CBASIC, '#CBINT, '#CBint '#CBCPLX '#CBcplx
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
===============================================================================
|
||||
Reconnaissance
|
||||
===============================================================================
|
||||
|
||||
Pour étudier et mettre en śuvre la spécification interne,
|
||||
"Calculatrices fx basées sur SuperH (version 20)"
|
||||
a donné des informations utiles.
|
||||
|
||||
Pour la gestion des fichiers dans C.Basic,
|
||||
"https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Compilateur C sur calcul série Casio Fx-9860 "
|
||||
a donné des informations utiles.
|
||||
|
||||
Pour les polices Kana japonaises, les données de police et la routine de sortie du site suivant sont utilisées;
|
||||
"http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html"
|
||||
|
||||
|
||||
Pour les fonctionnalités détaillées de Casio Basic d’origine, le site suivant est référencé;
|
||||
Gadget électronique - Calculatrice de programmation de Krtyski
|
||||
"https://egadget.blog.fc2.com/"
|
||||
(presque le contenu est en japonais).
|
||||
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
Leurs avis ont été trčs utiles.
|
||||
|
||||
Je suis reconnaissant pour la coopération de tous.
|
||||
|
||||
par sentaro21
|
||||
|
||||
===============================================================================
|
||||
lien connexe
|
||||
===============================================================================
|
||||
https://egadget2.web.fc2.com/CBasic/Interpreter/CBasic_interpreter.html
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
https://codewalr.us/index.php?topic=1818.0
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
|
||||
===============================================================================
|
||||
Licence
|
||||
===============================================================================
|
||||
Ce logiciel est un logiciel libre, conforme ŕ GPLv2.
|
|
@ -0,0 +1,635 @@
|
|||
===============================================================================
|
||||
|
||||
アドイン版 Casio Basic Interpreter (& Compiler) ver 2.x ベータ版
|
||||
|
||||
copyright(c)2015-2020 by sentaro21
|
||||
e-mail sentaro21@pm.matrix.jp
|
||||
|
||||
最終更新日:2020/02/10(JST)
|
||||
最終更新者:Krtyski/sentaro21/Colon
|
||||
|
||||
|
||||
===============================================================================
|
||||
|
||||
Casio Basic インタプリタのアドイン版、略してC:Baisc(現状インタプリタのみなのでC.Basic)のとりあえず動く版です。
|
||||
将来的にはコンパイラが追加される予定です。
|
||||
|
||||
・特徴
|
||||
純正Casio Basic互換(を目指しています)。
|
||||
純正Casio Basicよりも高速動作(10倍以上)。
|
||||
操作方法はほぼCasio Basic準拠です。
|
||||
純正Casio Basic互換の新規ソースファイルの作成、編集が可能です。
|
||||
ソースファイルはメインメモリではなくストレージメモリに置かれます。(サブフォルダ対応です)
|
||||
(v1.79以降 メインメモリのファイルが直接使用できるようになりました。)
|
||||
純正Casio Basic上位互換で独自拡張機能を随時追加していきます。
|
||||
SH3版,SH4A版、およびSD版のfx-9860Gシリーズに対応しています。
|
||||
|
||||
・欠点
|
||||
純正Casio Basicのサブセットです。全部の命令が使えません。というか今のところは一部の基本的な命令のみのサポートです。
|
||||
数値演算はCの倍精度2進演算により精度&誤差が若干違います。
|
||||
PICTがストレージメモリに保存されますので若干遅いです。
|
||||
(v.87以降メモリ上にPICT相当のエリアを確保し高速性を確保しました。)
|
||||
(v1.79以降、純正互換仕様が選択できます。)
|
||||
|
||||
たぶん…間違いなくバグありです(^^;…ので、バグ報告よろしくお願いします。
|
||||
|
||||
|
||||
========================== 注意!!! ============================================
|
||||
このツールの使用によって電卓が破壊される可能性はまず無いと思いますが、
|
||||
予期せぬバグ等でメインメモリが破壊されオールリセットになる可能性はあります。
|
||||
このツールの使用はメインメモリ&ストレージメモリのバックアップをとった上でお願いいたします。
|
||||
作者はこのツールの使用の結果においていかなる責任も負わないものとさせていただきます。
|
||||
===============================================================================
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
C.Basic の起動
|
||||
-------------------------------------------------------------------------------
|
||||
起動すると、ファイルリスト画面になります。ここでファイルを選択します。
|
||||
|
||||
純正Casio Basicで既に作成しているBasicファイルを、このファイルリストに追加するには、
|
||||
メインメモリにある元のBasicファイルをストレージメモリへコピーします。
|
||||
|
||||
(単一ファイルに限ります。複数ソースファイルをまとめたファイルは未対応です。)
|
||||
|
||||
コピー操作には2つの方法があります。
|
||||
|
||||
1) アドインのメモリマネージャを使う;
|
||||
- [MENU]キーでメモリマネージャを起動
|
||||
- [F1] (F1:Memory Manager) でメインメモリのファイルリスト表示
|
||||
- カーソルを<PROGRAM.へ移動し [EXE]
|
||||
- コピーしたいファイルを選ぶ
|
||||
- [F1] (SEL) に続いて [F2] (COPY)
|
||||
- "ROOT"が反転したウィンドウが現れるので、そこで [EXE]
|
||||
- Fle Name 画面になるので、そこで適当なファイル名(例えば"A")を入力して [EXE]
|
||||
- [MENU] でMAIN MENUへ戻る
|
||||
- C.Basic起動
|
||||
- ファイル "A" を選択して [F6]そして[F2] REN)
|
||||
- 元のCasio Basicファイル名が表示されたウィンドウが表示される
|
||||
- ここで [EXE] を押すと、元のファイル名に変化する。
|
||||
|
||||
2) FA-124 (PCリンクソフト)を使う;
|
||||
- FA-124 は、電卓に付属したカシオ製のPCリンクソフトです。
|
||||
- ファイルコピーの詳しい操作法は、マニュアルを参照してください。
|
||||
|
||||
[F3] (NEW) を選択すると、新規プログラムの作成モードに入れます。
|
||||
|
||||
|
||||
|
||||
===============================================================================
|
||||
クイックマニュアル - C.Basic の開発環境
|
||||
===============================================================================
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ファイルリスト画面(CasioBasic準拠っぽく…ちょっと違っています)
|
||||
-------------------------------------------------------------------------------
|
||||
-[UP] 一つ前のファイルを選択します。
|
||||
-[DOWN] 一つ後のファイルを選択します。
|
||||
(ファイル選択画面ではA-Zのキーを押すとそれを先頭とするファイルにジャンプします。fx-5800P準拠です)
|
||||
([.]キーで"~"を先頭とするファイルにジャンプします。)
|
||||
([EXP(x10)]キーでフォルダリストの先頭(ファイルリストの最後の次)にジャンプします。)
|
||||
|
||||
-[F1] (EXE) 選択ファイルを実行します。
|
||||
-[F2] (EDIT) 選択ファイルを編集します。
|
||||
-[F3] (NEW) 新規ファイルを作成します。
|
||||
-[F4] (COPY) ファイルをコピーします。
|
||||
-[F5] (DEL) 選択ファイルを削除します。
|
||||
-[F6] ( > ) 次のメニューに移動します。
|
||||
[F1] (Text) 選択されたBasicソースファイルをテキストファイルへ変換します。
|
||||
[F2] (REN) ファイル名を変更します。
|
||||
[F3] (Fav.) 選択ファイルをお気に入りに追加、解除します。
|
||||
[F4] (Fv.↑) お気に入りを一つ上に移動します。
|
||||
[F5] (Fv.↓) お気に入りを一つ下に移動します。
|
||||
[F6] ( > ) 次のメニューに移動します。
|
||||
[F1] (MK.F) フォルダを作成します。
|
||||
[F2] (Ren.F) フォルダ名を変更します。(未実装です。)
|
||||
[F6] ( > ) 前のメニューに移動します。
|
||||
|
||||
-[EXE] プログラムを実行します
|
||||
|
||||
-[SHIFT]
|
||||
[EXIT](QUIT) サブフォルダからルートに戻ります。
|
||||
[LEFT] コントラスト↓(※OS内蔵機能)
|
||||
[RIGHT] コントラスト↑(※OS内蔵機能)
|
||||
[UP] お気に入りを一つ上に移動します。
|
||||
[DOWN] お気に入りを一つ下に移動します。
|
||||
[F1] (Var) 変数画面
|
||||
[F2] (Mat) Mat変数画面
|
||||
[F3] (V-W) ViewWindow表示
|
||||
[F4] (Pass) パスワード設定/解除
|
||||
[F6] (Debg) デバッグモードでエディタを起動します。
|
||||
|
||||
-[VARS] 変数画面
|
||||
[F1] (A<>a) 大文字変数と小文字変数、任意英数字名変数の表示切替え
|
||||
[F2] (Int) 表示変数の一括初期化
|
||||
[F3] (D<>I) 整数変数と実数変数の表示切替え
|
||||
[F6] (->Hex/->Dec) 16進数/10進数表示に切り替え
|
||||
[SHIFT]+[UP]/[DOWN] 1ページずつスクロール
|
||||
※ローカル変数の場合は=を反転表示します。
|
||||
|
||||
-[SHIFT]
|
||||
[MENU] (SETUP) 初期設定
|
||||
[F6] バージョン情報表示
|
||||
|
||||
-[OPTN] 選択ファイルをお気に入りに追加、解除します。
|
||||
|
||||
-[EXIT] ファイルリストの最初に戻ります。
|
||||
すでにファイルリストの最初の場合はルートに戻ります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
エディタ編集画面(CasioBasic準拠っぽく…ちょっと違っています)
|
||||
-------------------------------------------------------------------------------
|
||||
・ファイル内のカーソルの現在位置を示すガイドマーカーがドットで右端に表示されます。
|
||||
|
||||
-[F1] (JUMP) ジャンプサブメニューを表示します。
|
||||
[F1] (TOP) ファイル先頭にジャンプします。
|
||||
[F2] (BTM) ファイル末尾にジャンプします。
|
||||
[F3] (GOTO) ファイルの任意の行にジャンプします。(画面上での見た目上での行数です)
|
||||
[F5] (Skip↑) (セットアップで設定された)ページ数スキップアップします。
|
||||
[F6] (Skip↓) (セットアップで設定された)ページ数スキップダウンします。
|
||||
|
||||
-[F2] (SRC) 文字列サーチ/置換モードに入ります。
|
||||
-[F3] (CMD) コマンド選択画面(fx-5800P準拠モード)(ここで選択できるコマンドがサポートされています)
|
||||
(MENU) コマンド選択モード(fx-9860G準拠モード)
|
||||
-[F4] (A<>a) 大文字小文字切り替え
|
||||
-[F5] (CHAR) キャラクタ選択画面
|
||||
-[F6] (EXE) プログラムを実行します。一時停止状態であれば再開します。
|
||||
|
||||
-[SHIFT]
|
||||
[EXIT](QUIT) ファイルリスト画面に戻ります。
|
||||
[LEFT] コントラスト↓(※OS内蔵機能)
|
||||
[RIGHT] コントラスト↑(※OS内蔵機能)
|
||||
[UP] (セットアップで設定された)ページ数スキップアップします。
|
||||
[DOWN] (セットアップで設定された)ページ数スキップダウンします。
|
||||
[F1] (Var) 変数画面
|
||||
[F2] (Mat) Mat変数画面
|
||||
[F3] (V-WIN) ViewWindow表示
|
||||
[F4] (Dump)/(List) Basicリスト表示/16進ダンプ表示切替(fx-5800P準拠モード)
|
||||
(SKTCH)コマンド選択モード(fx-9860G準拠モード)
|
||||
[F5] (A<>a) 大文字小文字切り替え
|
||||
[F6] (G<>T) グラフィックス画面とテキスト画面の切替(fx-5800P準拠モード)
|
||||
(CHAR) キャラクタ選択画面(fx-CG/9860G準拠モード)
|
||||
|
||||
[3] Getkeyコマンドのキーコードを入力します。
|
||||
|
||||
-[OPTN] OPTN対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[VARS] VARS対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[MENU] コマンド入力履歴(左右キーで時系列⇔入力頻度順を切り替えられます。)
|
||||
[AC/ON] 入力履歴を削除します。
|
||||
|
||||
-[SHIFT][VARS] (PRGM) PRGM対応コマンド入力画面(ここで選択できるコマンドがサポートされています)
|
||||
|
||||
-[SHIFT][MENU] (SETUP) 各種設定 (後述)(fx-5800P準拠モード)
|
||||
[F6] バージョン情報表示(fx-5800P準拠モード)
|
||||
|
||||
-[ALPHA][DEL] (UNDO) 削除とPasteを一回だけ元に戻しまします。
|
||||
|
||||
-[EXIT] サブメニューからメインメニュー、クリップモードのキャンセル、またはファイルリスト画面に戻ります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
デバッグモード編集画面 (通常エディタと違う部分)
|
||||
-------------------------------------------------------------------------------
|
||||
-[F1](Cont):カーソル位置よりプログラムを再開します。
|
||||
|
||||
-[F2](Trce):カーソル位置よりトレース実行。コマンド実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F3](Step):カーソル位置よりトレース+ステップオーバー。サブルーチンの場合は一気に実行されます。ステップ実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F4](S.ot):カーソル位置よりステップアウト。サブルーチンの終了まで一気に実行します。ステップ実行後、即エディタ画面に戻ります。
|
||||
|
||||
-[F5](L<>S):エディタリスト表示とプログラム実行画面の切替をします。切替後も実行画面が維持されるので実行画面そのまま[F1]-[F4]のデバッグ動作が可能です。
|
||||
|
||||
-[F6]( > ) :デバッグメニューとエディタメニューを切り替えます。実行画面(グラフィック/テキスト)の場合はファンクションメニュー表示をします。
|
||||
|
||||
-[EXIT] サブメニューからメインメニュー、クリップモードのキャンセル、または通常エディタ画面に戻ります。
|
||||
|
||||
※デバッグモード時、一行目が反転表示になります。(一行目をエディタで使用しない場合。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
プログラム実行時(ほぼCasioBasic準拠…です)
|
||||
-------------------------------------------------------------------------------
|
||||
-[AC] プログラム実行を中止します。
|
||||
[EXIT] デバッグモードのエディット画面に戻ります。カーソルは中断箇所を示します。
|
||||
[←/→] デバッグモードのエディット画面に戻ります。カーソルは中断箇所を示します。
|
||||
[F1] プログラムに復帰します。
|
||||
[EXE] プログラムに復帰します。
|
||||
|
||||
▲一時停止コマンドで停止した時(- Disp - 表示の時)
|
||||
-[SHIFT]
|
||||
[F1] 変数画面
|
||||
[F2] Mat変数画面
|
||||
[F3] ViewWindow表示
|
||||
[F6] グラフィックス画面とテキスト画面の切り替え
|
||||
-[EXE] プログラムを再開します。
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
行列エディタ画面
|
||||
-------------------------------------------------------------------------------
|
||||
・行列一覧画面(操作方法はMat、List、Vct共通です。)
|
||||
※アドレス指定で確保した行列は一覧表示で*マークが付きます。
|
||||
|
||||
-[F1] (DEL) 選択されている行列/リストを消去します。
|
||||
-[F2] (DEL-A) すべての行列/リストを消去します。
|
||||
-[F3] (DIM) 行列の次元、要素サイズ、インデックス開始値を設定します。
|
||||
-[F4] (INIT) 選択されている行列/リストのすべての要素を初期化します。
|
||||
-[F5] (Mat:/Lst:) 番号を指定してジャンプします。
|
||||
-[F6] (A<>a) 大文字小文字を切り替えます。
|
||||
|
||||
-[EXE] 行列編集画面に入ります。(詳細後述)
|
||||
|
||||
-[SHIFT]+[F1] (>Mat) 行列一覧に切り替えます。
|
||||
-[SHIFT]+[F2] (>List) リスト一覧に切り替えます。
|
||||
-[SHIFT]+[F3] (>Vct) ベクトル一覧に切り替えます。
|
||||
|
||||
-[OPTN] Mat<>Listの切り替えをします。
|
||||
-[VARS] Mat<>Vctの切り替えをします。
|
||||
-[OPTN] Mat<>Listの切り替えをします。
|
||||
|
||||
-[LEFT] 26戻ります。
|
||||
-[RIGHT] 26進みます。
|
||||
|
||||
|
||||
・ 行列編集画面
|
||||
※行列編集モード時に[SHIFT]+[8](CLIP)でコピー、[SHIFT]+[9]でペースト出来ます。
|
||||
(C.Basic)形式なのでエディタにて行列データをペースト出来ます。
|
||||
|
||||
(数値編集モード)
|
||||
|
||||
-[F1] (EDIT) 行列の要素を編集します。
|
||||
-[F2] (GO) 要素を指定してジャンプします。
|
||||
-[F3] (INIT) すべての要素を初期化します。
|
||||
-[F4] (>x,y / >m,n) 表示形式を切り替えます。
|
||||
|
||||
-[SHIFT]+[F5] (>Bin / >Dec) 10<>2進数表示を切り替えます(ニブル(4ビット)、バイト(1バイト)、ワード(2バイト)型行列で有効)。
|
||||
([F5]でショートカットできます。)
|
||||
|
||||
-[SHIFT]+[F6] (>Hex / >Dec) 10<>16進数表示を切り替えます(1ビット、複素数(16バイト)型以外で有効、実数(8バイト)型は内部データをそのまま表示)。
|
||||
([F6]でショートカットできます。)
|
||||
|
||||
-[SHIFT]+[F2] (DotEd) 数値編集モード<>ドットエディタを切り替えます。 ([OPTN] でショートカットできます。)
|
||||
-[SHIFT]+[F3] (StrEd) 数値編集モード<>文字列編集モードを切り替えます。([VARS] でショートカットできます。)
|
||||
|
||||
|
||||
(ドットエディタ)
|
||||
※数値編集モードとの相違点のみ説明します。
|
||||
1ビット行列では0が白、1が黒です。
|
||||
|
||||
-[F1] (0<>1) 要素の値を0<>1で切り替えます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
文字列サーチ/置換モード
|
||||
-------------------------------------------------------------------------------
|
||||
[文字列を検索する]
|
||||
・文字列を入力し、[F1](SEARCH)または[EXE]を押します。
|
||||
・次を検索するには、再度[F1](SEARCH)または[EXE]を押します。
|
||||
・[F6](RETRY)で、検索画面に戻ります。
|
||||
|
||||
[文字列を置換する]
|
||||
・置換前の文字列を入力し、[F2](REPL)を押します。
|
||||
・次に、置換後の文字列を入力し、[F1](SEARCH)、[F2](REPL)、または[EXE]を押します。
|
||||
・次を検索するには、再度[F1](SEARCH)または[EXE]を押します。
|
||||
・置換するには、[F2](REPL)を押します。
|
||||
・すべて置換するには、[F3](ALL)または[F4](ALL+)を押します。中断するには[AC]を押します。
|
||||
[F4](ALL+)では置換の途中経過を表示しません。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
キャラクタ選択画面
|
||||
-------------------------------------------------------------------------------
|
||||
・純正より多くの文字がサポートされています。
|
||||
・[F6]でASCII、仮名、外字を入力できます。
|
||||
・[SHIFT]または[F1]~[F6]を押すことで、連続入力ができます。
|
||||
・[OPTN]でミニフォント表示になります。
|
||||
・[VARS]では、OSがサポートしている形式(ミニフォント)で表示します。
|
||||
|
||||
|
||||
===============================================================================
|
||||
CasioBasicとの相違点
|
||||
===============================================================================
|
||||
基本的には全く同じ動作になるように作成されていますが、動作の違う部分があります。
|
||||
|
||||
・?コマンドの入力部分は1ラインのみで横スクロールします。
|
||||
・描画コマンドの直後が:(区切りコード)だと画面書換え更新をしません。(グラフィック命令、Locate,Text等)
|
||||
・プログラム終了時に実行時間を表示することができます。(セットアップで設定)
|
||||
・コメント文の終了は改行と▲一時停止コマンドのみです。:(区切りコード)では終了となりません。
|
||||
|
||||
さらに同じCasioBasicが動作するプログラム関数電卓のfx-5800Pの便利な部分を取り込んでいます。
|
||||
・?コマンドで?A形式を追加サポートしています。
|
||||
・文字列出力コマンド " " の出力仕様はfx-5800P 完全準拠で、fx-9860G/fx-9860GIIには準拠していません。
|
||||
fx-5800Pとfx-9860G/fx-9860GIIのCasioBasic仕様の違いについては、
|
||||
やす(Krtyski)様のサイトに詳細な解説がありますので参照して下さい。
|
||||
http://egadget.blog.fc2.com/blog-entry-170.html
|
||||
|
||||
|
||||
===============================================================================
|
||||
Graph 35+E IIでの相違点
|
||||
===============================================================================
|
||||
・ストレージメモリが約2倍の3MBあります。
|
||||
・隠しメモリが128KBに制限されます。
|
||||
・フォルダが2層以上作成できるので、ルートフォルダを変更できます。
|
||||
|
||||
|
||||
===============================================================================
|
||||
-[SHIFT][MENU] (SETUP) セットアップでの設定
|
||||
===============================================================================
|
||||
Angle :Rad/Deg/Grad
|
||||
Draw Type :Connect/Plot
|
||||
Coord :on/off
|
||||
Grid :on/off
|
||||
Axes :on/off
|
||||
Label :on/off
|
||||
Derivative :on/off
|
||||
Background :None/Pict1~20
|
||||
Sketch Line :Normal/Thick/Broken/Dot
|
||||
----------------------------ここまで純正CasioBasic互換
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Display :Fix/Sci/Nrm/Eng
|
||||
少数以下の桁数は15桁まで。0を指定した場合は16桁となります。
|
||||
Nrmに関してはNrm1とNrm2のみCasioBasic互換10桁表示仕様です。
|
||||
Nrm1:0.01以下は指数表示
|
||||
Nrm2:0.000000001以下は指数表示
|
||||
それ以外は桁数指定となります。
|
||||
Eng :ENGオフ、ENGオン(/E)、3桁区切り(/3)の切り替えとなります。
|
||||
|
||||
・関連コマンド Eng,Norm,Fix,Sci,EngOn,EngOff
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Syntax Help : On/Off
|
||||
エディタでコマンドのヘルプ表示の有効/無効を設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
SetupRecover : On/Off
|
||||
すでにセットアップで設定してある上記の純正CasioBasic互換設定をプログラム終了後に復帰するかどうかを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Command Input :C.Basic/Standard
|
||||
コマンド入力方法をC.Basic(fx-5800P)方式とStandard(fx-9860G)方式を選択できます。
|
||||
|
||||
・関連コマンド '#58
|
||||
'#98
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Max Mem Mode : on/off
|
||||
使用可能な最大メモリを使うようにします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EnableExFont : on/off
|
||||
外部フォントの使用を設定します。
|
||||
onの場合は以下のコマンドが有効です。
|
||||
|
||||
・関連コマンド SetFont 0 // 外部フォント無効
|
||||
SetFont 1 // 外部フォント有効
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit ExtFont : On/Off
|
||||
エディタ上で外部フォント表示を使用します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EditFontSize :Standard/Mini/MiniRev/Mini(undercursor)/MiniRev(undercursor)
|
||||
表示文字の大きさを変更します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
HideStatLine :On/Off
|
||||
画面の最上位一行目のステータスラインを非表示にしてエディタで使用するかどうか選択できます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit Indent+ : Off/1/2/4 Save-
|
||||
自動インデントを設定します。
|
||||
Off: 自動インデントを使用しません。
|
||||
1: インデント幅を1に設定します。
|
||||
2: インデント幅を2に設定します。
|
||||
4: インデント幅を4に設定します。
|
||||
Save-:保存時にインデントを含むコマンド間の空白を削除します。(=CasioBasic準拠ソースに変換します。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Edit LineNum :On/Off
|
||||
行番号表示を選択します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
EditListChar :List / 反転L / ボールドL
|
||||
ListとMat表示を短縮表示(1文字の反転とボールド)に切り替えます。
|
||||
-------------------------------------------------------------------------------
|
||||
Use Hidden RAM :on/off
|
||||
隠しRAMをC.Basicで使用するかどうかを設定します。(初期のfx-9860Gは未対応です。)
|
||||
fx-9860GII以降では512KBのRAMが搭載されており、そのうち256KBは未使用領域となっているためにこれをプログラム領域と行列領域として利用できるようにします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
HiddenRAM Init:on/off
|
||||
隠しRAM使用時に、Mat行列&ListをC.Basic起動時に初期化するかどうかを設定します。(初期のfx-9860Gは未対応です。)
|
||||
初期化しない場合は、Mat行列&Listの結果が消えないで残ります。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Max Pict No : 20 ~99
|
||||
隠しRAM使用時に、Pictファイルの上限を増やせます。
|
||||
設定を変更するとPict&Mat&Listデータが初期化されます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Max List No : 54 ~1040
|
||||
隠しRAM使用時に、Listの上限を増やせます。
|
||||
設定を変更するとPict&Mat&Listデータが初期化されます。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
AT DebugMode : on / off
|
||||
[AC]で中断した時にデバッグモードの有効/無効を設定します
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ExitDM Popup : on / off
|
||||
デバッグモードから[EXIT]で抜ける場合の確認PopUpを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Break Stop :on/off
|
||||
[AC]キーによる中断の有無。
|
||||
offの場合は[AC]キーによる中断が出来ません。
|
||||
|
||||
・関連コマンド '#Break0 // [AC]キー無効
|
||||
'#Break1 // [AC]キー有効 (デフォルト)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Exec TimeDsp : on/off/on reset / %HR
|
||||
プログラム終了時にプログラムの実行時間を表示します。
|
||||
計測開始はプログラムの最初の行からですが、途中?コマンドや一時停止コマンドがあった場合はそれまでの計測時間はリセットされます。
|
||||
GetKey1/2の場合は計測が一時停止になり、コマンド実行後に再スタートします。
|
||||
on resetは、GetKey1/2実行後に計測がリセットされ再スタートします。
|
||||
%HR:計測に1/32768sタイマーを使います。(SH4A機のみです。)
|
||||
|
||||
・関連コマンド '#GetKeyC // GetKey1/2実行後に時間計測を一時停止、リスタートします。(デフォルト)
|
||||
'#GetKeyR // GetKey1/2実行後に時間計測がリセット&リスタートします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
IfEnd Check :on/off
|
||||
IfとIfEndが一対一で対応しているかどうかをチェックします。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
ACBreak :on/off
|
||||
ACBreakコマンドの有効/無効を切り替えます。
|
||||
|
||||
・関連コマンド ACBreak
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Force Return: None/ F1/ EXE/ F1&EXE
|
||||
プログラム実行中の中断でエディタに戻るかファイルリストに戻るかを選択できます。
|
||||
(例)Force Return: F1 の場合、
|
||||
・ ファイルリスト画面 → [F1](EXE) → [AC] → [EXIT] …… ファイルリスト画面に戻ります。
|
||||
・ ファイルリスト画面 → [EXE] → [AC] →[EXIT] …… エディタに戻ります。
|
||||
・ ファイルリスト画面 → [F1](EXE) → [AC] → [EXE](再開) → [AC] → [EXIT] …… ファイルリスト画面に戻ります。
|
||||
(初めにどちらのキーを押したかによって動作が決まります。)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Key 1st time:25ms~1000ms(デフォルト値 500ms)
|
||||
リピート開始までの時間 (25ms単位)
|
||||
Key Rep time:25ms~500ms(デフォルト値 125ms)
|
||||
リピート継続時間 (25ms単位)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
SkipUp/Down : 1~9999
|
||||
SkipUp/SkipDownでの一回分の改ページ数を指定します。
|
||||
※改行ごとに一行増える論理行ではなく画面上での見た目上での物理行数です。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Mat Dsp mode:[m,n]/[X,Y]
|
||||
行列エディタ画面での表示形式を指定します。
|
||||
それぞれ転置行列の関係になりますが、行列内部は何も変化なく表示上だけの指定です。
|
||||
Matrix base :0/1
|
||||
行列インデックスの初期値を0か1が指定します。
|
||||
初期値に0を指定した場合は、グラフィック座標が左上端の(0,0)から有効になります。
|
||||
|
||||
・関連コマンド '#Mat 0 // 行列のインデックス開始値を0にします。
|
||||
'#Mat 1 // 行列のインデックス開始値を1にします。(デフォルト)
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
DATE : 2017/01/17 MON
|
||||
TIME : 23:59:59
|
||||
内蔵RTCを設定します。曜日は自動設定されます。
|
||||
|
||||
・関連コマンド DATE、TIME
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Root Folder : / (※Graph 35+E II限定の機能です。)
|
||||
ファイルアクセスの基本となるルートフォルダを設定します。
|
||||
[F1]:ストレージメモリのルートフォルダに設定します。
|
||||
[F2]:カレントフォルダを以後ルートフォルダに設定します。
|
||||
|
||||
・関連コマンド '#R/ // ストレージメモリのルートフォルダに設定します。
|
||||
'#R. // カレントフォルダをルートフォルダに設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Auto file Save:on/off
|
||||
編集後、自動的に保存するかどうか設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Force g1m save:on/off
|
||||
テキストファイル編集/実行後に同時にg1m形式でも保存するかどうかを設定します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Pict mode :S.Mem/Heap/Both/MainMem
|
||||
(S.Mem/SD) Pictファイルをストレージメモリ/SD上に作ります。若干時間がかかります。
|
||||
(Heap) Pictファイルとしては作成されずにメモリ上に互換ファイルが作成されます。
|
||||
(Both) HeapモードでもPictファイルが常にストレージメモリ/SD上に作成されます。
|
||||
(Main) メインメモリのPICT純正互換仕様です。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Storage mode :S.Mem/SD/MainMem
|
||||
(S.Mem) ストレージメモリ上のファイルを実行/編集します。
|
||||
(SD) SD上のファイルを実行/編集します。(SD版のみ指定可)
|
||||
(Main mem) MCS(メインメモリ)のプログラムファイルを実行/編集します。
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
RefrshCtl DD:off/Grp/All
|
||||
描画コマンドにおける画面の更新を設定できます。
|
||||
Off:リフレッシュコントロール無し。表示においては純正互換仕様です。
|
||||
Grp:グラフィックコマンドのみリフレッシュコントロール有り。ClrText,Locate,Text,LocateYX、””は無しで以前のバージョン互換です。
|
||||
All:すべての描画コマンドがリフレッシュコントロールされた表示となります。必要に応じてPutDispDDコマンドが必須となります。
|
||||
Time:リフレッシュコントール時間を設定します。n/128秒単位で画面更新します。デフォルトは3で約1/42秒での更新となっています。
|
||||
0を指定するとリフレッシュされなくなります。
|
||||
|
||||
・関連コマンド RefrshCtrl/RefrshTime
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Wait count : 0~9999
|
||||
C.Basic全体の実行速度を調整します。
|
||||
|
||||
・関連コマンド Wait
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Execute mode:Dbl#/Int%/CPLX
|
||||
デフォルトのプログラムの実行モードを切り替えます。
|
||||
|
||||
・関連コマンド '#CBasic
|
||||
'#CBASIC
|
||||
'#CBDBL
|
||||
'#CBdbl
|
||||
'#CBINT
|
||||
'#CBint
|
||||
'#CBCPLX
|
||||
'#CBcplx
|
||||
|
||||
===============================================================================
|
||||
|
||||
|
||||
===============================================================================
|
||||
謝辞
|
||||
===============================================================================
|
||||
プログラム内部仕様&情報は
|
||||
SuperH-based fx calculators (version 20)
|
||||
を参考にさせていただいています。(一部引用)
|
||||
|
||||
このツールのファイル操作部分は、
|
||||
https://community.casiocalc.org/topic/6836-wsc-fvm-v12-casio-fx-9860-series-on-calc-c-compiler/
|
||||
Wsc & Fvm V1.2 - Casio Fx-9860 Series On-calc C Compiler
|
||||
を参考にさせていただいています。(一部引用)
|
||||
|
||||
カナフォントはこちらのサイトよりカナフォントデータおよび表示ルーチンを引用させていただいています。
|
||||
http://www.d-b.ne.jp/~k-kita/fx_sdk_005.html
|
||||
|
||||
PierrotLL氏作成のMonochromeLibを使わせていただいています。(Ver.1.00以降)
|
||||
|
||||
|
||||
プログラム実行時の細かい動作に関しては、
|
||||
やす(Krtyski)様の
|
||||
e-Gadget - プログラム関数電卓
|
||||
プログラム電卓の濃い話: 今は fx-5800P / fx-9860GII と Casio Basicプログラミングが中心
|
||||
https://egadget.blog.fc2.com/
|
||||
を参考にさせていただいています。
|
||||
|
||||
このC.Basicが誕生するきっかけとなったサイトです。
|
||||
いつもありがとうございます。
|
||||
これからもよろしくお願いいたします。
|
||||
|
||||
|
||||
純正CasioBasicとの動作互換性チェックにおいて大変有用なプログラムをたくさん掲載しているPlanet-Casioと作者の皆様に感謝いたします。
|
||||
|
||||
|
||||
最後にとても興味深いグラフ電卓を発売してくださったCASIO計算機(株)に感謝いたします。
|
||||
|
||||
このアドインプログラムが皆様のお役に立つことがあれば幸いです。
|
||||
|
||||
|
||||
===============================================================================
|
||||
ライセンス
|
||||
===============================================================================
|
||||
このソフトウエアはフリーソフトウエアです。
|
||||
ライセンスはGPLv2に準じます。
|
||||
|
||||
|
||||
===============================================================================
|
||||
ご質問、ご要望、バグ報告等
|
||||
===============================================================================
|
||||
|
||||
やす(Krtyski)様のサイトにてC.Basicプロジェクト専用エントリを作成していただいています。
|
||||
https://egadget.blog.fc2.com/blog-entry-495.html
|
||||
ご質問、ご要望、バグ報告等ありましたらコメント欄にて随時受け付けています。
|
||||
|
||||
UCF
|
||||
https://community.casiocalc.org/topic/7637-cbasic-international-release/
|
||||
|
||||
Planet-Casio
|
||||
https://www.planet-casio.com/Fr/forums/topic14738-1-C.Basic.html
|
||||
|
||||
|
||||
===============================================================================
|
||||
更新履歴
|
||||
===============================================================================
|
||||
CHANGE_J.txtに独立させました。
|
|
@ -0,0 +1,136 @@
|
|||
--------------------------------------------------------
|
||||
CBasic setup format ver.1.00
|
||||
--------------------------------------------------------
|
||||
CBasic setup format 1280 bytes
|
||||
--------------------------------------------------------
|
||||
offset type name
|
||||
--------------------------------------------------------
|
||||
00 char "CB.config00"
|
||||
11 char CB_G1MorG3MDefault
|
||||
12 char ExtendPict
|
||||
13 char UseHiddenRAM
|
||||
14 char ExtendList
|
||||
15 char CB_INTDefault
|
||||
16-17 short RefreshCtrl
|
||||
18 char EditListChar
|
||||
19 char DrawType
|
||||
20 char CB_fx5800P // 0.55 new
|
||||
21 char Refreshtime
|
||||
22 char ForceReturnMode
|
||||
23 char Coord
|
||||
24 char CB_RecoverSetup
|
||||
25 char ENG
|
||||
26 char EditExtFont
|
||||
27 char Grid
|
||||
28 char CB_Round.ExpTYPE
|
||||
29 char CB_Round.MODE
|
||||
30 char MaxHeapRam // 0.49 new
|
||||
31 char Axes
|
||||
32-33 short CB_Round.DIGIT-1
|
||||
34 char DirectGBconvert // 0.49 new
|
||||
35 char Label
|
||||
36-37 short DefaultWaitcount
|
||||
38 char CB_disableOC // 0.52 new
|
||||
39 char Derivative
|
||||
40 char XInputMethod
|
||||
41 char CommandInputMethod
|
||||
42 char ExitDebugModeCheck // 0.55 new
|
||||
43 char S_L_Style
|
||||
44 char EnableExtFont // 0.48 new
|
||||
45 char ForceG1Msave
|
||||
46 char ComplexMode // 0.51 new
|
||||
47 char Angle
|
||||
48 char EditGBFont // 0.49 new
|
||||
49 char StorageMode & 1 // 0.53 new
|
||||
50 char StorageMode & 2 // 0.53 new
|
||||
51 char BreakCheckDefault
|
||||
52-53 short PageUpDownNum
|
||||
54 char (reserved)
|
||||
55 char TimeDsp
|
||||
56 char (reserved)
|
||||
57 char 1-MatBaseDefault
|
||||
58 char (reserved)
|
||||
59 char MatXYmode
|
||||
60 char CB_HelpOn // 0.80 new
|
||||
61 char CheckIfEnd
|
||||
62 char (reserved)
|
||||
63 char PictMode
|
||||
|
||||
64-71 double Xfct
|
||||
72-79 double Yfct
|
||||
|
||||
80-543 double REG.A...z.real
|
||||
544-631 double REG.VWIN
|
||||
640-871 int REGINT.A...z
|
||||
|
||||
872-873 short KeyRepeatFirstCount
|
||||
874-875 short KeyRepeatNextCount
|
||||
|
||||
880-883 char Favoritesfiles[0].filesize
|
||||
884-887 char Favoritesfiles[1].filesize
|
||||
888-891 char Favoritesfiles[2].filesize
|
||||
892-895 char Favoritesfiles[3].filesize
|
||||
896-899 char Favoritesfiles[4].filesize
|
||||
900-903 char Favoritesfiles[5].filesize
|
||||
904-907 char Favoritesfiles[6].filesize
|
||||
|
||||
908- 920 char Favoritesfiles[0].filename
|
||||
921- 929 char Favoritesfiles[0].folder
|
||||
930- 942 char Favoritesfiles[1].filename
|
||||
943- 951 char Favoritesfiles[1].folder
|
||||
952- 964 char Favoritesfiles[2].filename
|
||||
965- 973 char Favoritesfiles[2].folder
|
||||
974- 986 char Favoritesfiles[3].filename
|
||||
987- 995 char Favoritesfiles[3].folder
|
||||
996-1008 char Favoritesfiles[4].filename
|
||||
1009-1017 char Favoritesfiles[4].folder
|
||||
1018-1030 char Favoritesfiles[5].filename
|
||||
1031-1039 char Favoritesfiles[5].folder
|
||||
1040-1052 char Favoritesfiles[6].filename
|
||||
1053-1061 char Favoritesfiles[6].folder
|
||||
|
||||
1062-1074 char (reserved)
|
||||
|
||||
1075 char AutoSaveMode
|
||||
1076 char EditTopLine
|
||||
1077 char EditFontSize
|
||||
1078 char DisableDebugMode
|
||||
1079 char 0
|
||||
|
||||
1080 short CB_ColorIndexPlot
|
||||
1082 short CB_ColorIndexEditBack
|
||||
1084 short CB_ColorIndexEditBase
|
||||
1086 short CB_ColorIndexEditCMD
|
||||
1088 short CB_ColorIndexEditQuot
|
||||
1090 short CB_ColorIndexEditComt
|
||||
1092 short CB_ColorIndexEditLine
|
||||
1094 short CB_ColorIndexEditNum
|
||||
1096 short CB_FavoriteColorIndex // 0.56 new
|
||||
|
||||
1098-1279 char (reserved)
|
||||
|
||||
|
||||
1278-1279 short version (0.56 -> 56) // 0.56 new
|
||||
|
||||
|
||||
--------------------------------------------------------
|
||||
CBasic2 setup format 512 bytes
|
||||
--------------------------------------------------------
|
||||
offset type name
|
||||
--------------------------------------------------------
|
||||
00 char "CB.config60"
|
||||
11-47 char (reserved)
|
||||
|
||||
48-511 double REG.A...z.image
|
||||
|
||||
|
||||
--------------------------------------------------------
|
||||
CBasic3 setup format 620 bytes
|
||||
--------------------------------------------------------
|
||||
offset type name
|
||||
--------------------------------------------------------
|
||||
00-08 char folder[9] // Storage
|
||||
10-18 char folder[9] // SD
|
||||
32-227 char FavoriteName // Storage sizeof(Files) * FavoritesMAX // 28*7=196
|
||||
228-423 char FavoriteName // SD sizeof(Files) * FavoritesMAX // 28*7=196
|
||||
424-619 char FavoriteName // MainMem sizeof(Files) * FavoritesMAX // 28*7=196
|
|
@ -0,0 +1,13 @@
|
|||
'ProgramMode:RUN
|
||||
10->Dim List 1
|
||||
{1,2,3,4,5}->List 2
|
||||
Seq(X^<2>,X,10,50,10)->List 3
|
||||
List 2+List 3Disps
|
||||
2*List 2+List Ans*5Disps
|
||||
Max(List 2)Disps
|
||||
Min(List 2)Disps
|
||||
SortD(List 2)
|
||||
List 2Disps
|
||||
SortA(List 2)
|
||||
List 2Disps
|
||||
Augment(List 2,List 3/10)->List 4
|
|
@ -0,0 +1,16 @@
|
|||
'ProgramMode:RUN
|
||||
[[60,126,251,253,253,255,126,60]]->Mat B.B
|
||||
|
||||
Screen.G
|
||||
_ClrVram
|
||||
|
||||
_Rectangle 1,11,12,42,0,(-)1,1
|
||||
_Bmp8 &Mat B,3,13,O
|
||||
_Bmp8 &Mat B,3,23,A
|
||||
_Bmp8 &Mat B,3,33,X
|
||||
|
||||
_Bmp8 &Mat B,15,13,O,C
|
||||
_Bmp8 &Mat B,15,23,A,C
|
||||
_Bmp8 &Mat B,15,33,X,C
|
||||
|
||||
PutDispDD
|
|
@ -0,0 +1,11 @@
|
|||
'ProgramMode:RUN
|
||||
Screen.G
|
||||
_ClrVram
|
||||
|
||||
For 0->Y To 63
|
||||
For 0->X To 127
|
||||
_Pixel X,Y,3
|
||||
Next
|
||||
Next
|
||||
|
||||
PutDispDD
|
|
@ -0,0 +1,10 @@
|
|||
'ProgramMode:RUN
|
||||
[[60,75,70,50,45]]->Mat X.L
|
||||
[[20,30,45,45,30]]->Mat Y.L
|
||||
|
||||
Screen.G
|
||||
_ClrVram
|
||||
|
||||
_Polygon &X[1],&Y[1],5,1
|
||||
|
||||
_DispVram
|
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,3 @@
|
|||
ViewWindow 1,127,0,1,63,0,0,1,1
|
||||
Seq(X,X,0,63,1)->List 1
|
||||
Graph(X,Y)=(127T,List 1)
|
|
@ -0,0 +1,4 @@
|
|||
ViewWindow 1,127,0,1,63,0,1,4,1
|
||||
{10,30,18,10}->List 1
|
||||
{7,54,29,7}->List 2
|
||||
Graph(X,Y)=(List 1[T],List 2[T])
|
|
@ -0,0 +1,39 @@
|
|||
'ProgramMode:RUN
|
||||
Deg
|
||||
G-Connect
|
||||
G-Plot
|
||||
CoordOff
|
||||
GridOff
|
||||
AxesOff
|
||||
LabelOff
|
||||
ClrGraph
|
||||
ViewWindow (-)2,2,0,-1,1,0
|
||||
Cls
|
||||
2->A
|
||||
1->B
|
||||
-10->C
|
||||
5->D
|
||||
|
||||
Do
|
||||
Getkey->K
|
||||
If K<>L:Then
|
||||
K=39=>D+(D<10)->D
|
||||
K=29=>D-(D>(-)10)->D
|
||||
K=28=>B+(B<10)->B
|
||||
K=37=>B-(B>(-)10)->B
|
||||
K=27=>A+(A<10)->A
|
||||
K=38=>A-(A>(-)10)->A
|
||||
K->L
|
||||
IfEnd
|
||||
|
||||
C+D->C
|
||||
|
||||
Cls
|
||||
Text 1,1,"A(_#E690__#E691_)=":
|
||||
Text 1,23,A:
|
||||
|
||||
Text 7,1,"B(_#E692__#E693_)=":
|
||||
Text 7,23,B:
|
||||
|
||||
Graph(X,Y)=(sin ((A*T)+C),cos (B*T)
|
||||
LpWhile 1
|
|
@ -0,0 +1,77 @@
|
|||
'ProgramMode:RUN
|
||||
' OPCODE LIST extend
|
||||
'#_Str _s
|
||||
ClrMat s
|
||||
{1,32}->Dim Mat s.b
|
||||
0X00->A
|
||||
0->B
|
||||
0->M
|
||||
|
||||
Lbl 0
|
||||
|
||||
ClrText:
|
||||
FkeyMenu(1,"00xx",T):
|
||||
FkeyMenu(2,"7Fxx",T):
|
||||
FkeyMenu(3,"F7xx",T):
|
||||
FkeyMenu(4,"F9xx",T):
|
||||
FkeyMenu(5,"E7xx",T):
|
||||
M=0=>FkeyMenu(6,"_->_EXT",T):
|
||||
M=1=>FkeyMenu(6,"_->_ORG",T):
|
||||
|
||||
For 0->I To 6
|
||||
A*256+B+I->J
|
||||
MatBase(Mat s)->S
|
||||
Switch M
|
||||
Case 0:' original
|
||||
If System((-)1)<10
|
||||
SysCall(0X7FC,J,VarPtr(Str S))
|
||||
Else
|
||||
SysCall(0X128F,J,VarPtr(Str S))
|
||||
IfEnd
|
||||
Break
|
||||
Case 1:' extended
|
||||
If A=0:Then
|
||||
MOD(J,256)->s[S,S]
|
||||
0->s[S,S+1]
|
||||
Else
|
||||
Intg (J/256)->s[S,S]
|
||||
MOD(J,256)->s[S,S+1]
|
||||
0->s[S,S+2]
|
||||
IfEnd
|
||||
Break
|
||||
SwitchEnd
|
||||
Locate 1,I+1,Sprintf("%04X:",%J):
|
||||
Locate 6,I+1,Str S:
|
||||
Next
|
||||
|
||||
Getkey2->K
|
||||
Switch K
|
||||
Case 47:'EXIT
|
||||
Stop:Break
|
||||
Case 79:'F1
|
||||
0->A:Break
|
||||
Case 69:'F2
|
||||
0X7F->A:Break
|
||||
Case 59:'F3
|
||||
0XF7->A:Break
|
||||
Case 49:'F4
|
||||
0XF9->A:Break
|
||||
Case 39:'F5
|
||||
0XE7->A:Break
|
||||
Case 29:'F6
|
||||
1-M->M:Break
|
||||
Case 28:'UP
|
||||
B>0=>B-1->B
|
||||
Break
|
||||
Case 37:'DOWN
|
||||
B<249=>B+1->B
|
||||
Break
|
||||
Case 38:'LEFT
|
||||
B-7->B:B<0=>0->B
|
||||
Break
|
||||
Case 27:'RIGHT
|
||||
B+7->B:B>249=>249->B
|
||||
Break
|
||||
SwitchEnd
|
||||
|
||||
Goto 0
|
|
@ -0,0 +1,5 @@
|
|||
'ProgramMode:RUN
|
||||
18->N
|
||||
?N
|
||||
Prog "FIBOSB",N
|
||||
Ans
|
|
@ -0,0 +1,10 @@
|
|||
'ProgramMode:RUN
|
||||
Local n,a,b
|
||||
Switch n
|
||||
Case 0:Return 0
|
||||
Case 1:Return 1
|
||||
Default :
|
||||
Prog "FIBOSB",n-2->a
|
||||
Prog "FIBOSB",n-1->b
|
||||
Return a+b
|
||||
SwitchEnd
|
|
@ -0,0 +1,17 @@
|
|||
----------------------------------------
|
||||
Send(/Recv( sample
|
||||
|
||||
SRTXA.g1m -> SRRXA.g1m
|
||||
SRTXMAT.g1m -> SRRXMAT.g1m
|
||||
SRTXLIST.g1m -> SRRXLIST.g1m
|
||||
SRTXSTR.g1m -> SRRXSTR.g1m
|
||||
|
||||
SRGKEY.g1m <-> SRGKEY.g1m
|
||||
----------------------------------------
|
||||
Send38K/Receive38k
|
||||
|
||||
SR38SLST.g1m -> SR38RLST.g1m
|
||||
|
||||
SR38GKEY.g1m <-> SR38GKEY.g1m
|
||||
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
== System( コマンドで全てのオプションを使ったサンプルプログラム ==
|
||||
・SYS.g1m は C.Basic for FX Ver 2.44 build 10 以降で、SYS.g3m は C.Basic for CGVer 1.44 build 10
|
||||
以降で動作します。
|
||||
・本プログラムは、C.Basicがインストールできる全ての電卓 - 最も古い fx-9860G OS1.02 から最新の
|
||||
fx-CG50 OS3.30 - で、そしてエミュレーターで動作します。
|
||||
|
||||
== A sample program for command System( using all options. ==
|
||||
- SYS,g1m runs on C.Basic for FX Ver 2.44 build 10 or later,SYS.g3m runs on C.Basic for CG
|
||||
Ver 1.44 build 10 and later.
|
||||
- This program can run on all calculators which C.Basic can be installed, oldest fx-9860G OS1.02 through latest fx-CG50 OS3.30, and on Emulator.
|
||||
|
||||
1: 'ProgramMode:GB1
|
||||
2: Screen.T:_ClrVram
|
||||
3: 0->i:System((-)1)<10=>1->i
|
||||
4: Locate 1,i,"C.Basic for FX v"
|
||||
5: System((-)1)>10=>Locate 13,i,"CG"
|
||||
6: Locate 18,i,System(0)/100
|
||||
7: Switch System((-)1)
|
||||
8: Case 0
|
||||
9: Locate 1,1+i,"fx_(-)_9860G"
|
||||
10: Break
|
||||
11: Case 1
|
||||
12: Locate 1,1+i,"fx_(-)_9860G Slim"
|
||||
13: Break
|
||||
14: Case 2
|
||||
15: Locate 1,1+i,"fx_(-)_9860GII"
|
||||
16: Break
|
||||
17: Case 3
|
||||
18: Locate 1,1+i,"fx_(-)_9860GII_(-)_2"
|
||||
19: Break
|
||||
20: Case 4
|
||||
21: Locate 1,1+i,"Graph35+EII"
|
||||
22: Break
|
||||
23: Case 10
|
||||
24: Locate 1,1+i,"fx_(-)_CG10"
|
||||
25: Break
|
||||
26: Case 20
|
||||
27: Locate 1,1+i,"fx_(-)_CG20"
|
||||
28: Break
|
||||
29: Case 50
|
||||
30: Locate 1,1+i,"fx_(-)_CG50"
|
||||
31: Break
|
||||
32: SwitchEnd
|
||||
33: System((-)7)=>Locate 1,1,"Emulator"
|
||||
34:
|
||||
35: Locate 16,1+i,"OS .00"
|
||||
36: Locate 18,1+i,System((-)2)/100
|
||||
37: Locate 1,3,"CB VRAM"
|
||||
38: System((-)1)>10=>Locate 1,3,"VRAM "
|
||||
39: Locate 12,3,"0x00000000"
|
||||
40: Locate 14,3,Hex(System(1))
|
||||
41: Locate 1,4,"TextVRAM"
|
||||
42: Locate 12,4,"0x00000000"
|
||||
43: Locate 14,4,Hex(System(2))
|
||||
44: Locate 1,5,"GraphVRAM"
|
||||
45: Locate 12,5,"0x00000000"
|
||||
46: Locate 14,5,Hex(System(3))
|
||||
47: Locate 1,6,"WorkVRAM"
|
||||
48: Locate 12,6,"0x00000000"
|
||||
49: Locate 14,6,Hex(System(4))
|
||||
50: Locate 1,7,"ClipBoard"
|
||||
51: Locate 12,7,"0x00000000"
|
||||
52: Locate 14,7,Hex(System(10))
|
||||
53:
|
||||
54: FkeyMenu(1,"A sample for System(",L,5)
|
||||
55: FkeyMenu(6,1018)
|
||||
56: System((-)2)<104=>FkeyMenu(6,"EXIT")
|
||||
57: While Getkey1<>29:WhileEnd
|
||||
58: ClrText
|
|
@ -0,0 +1,6 @@
|
|||
'ProgramMode:RUN
|
||||
?Str 1
|
||||
Try Exp(Str 1)
|
||||
Except :' All Error
|
||||
Disp System(-9):' Error No
|
||||
TryEnd
|
|
@ -0,0 +1,55 @@
|
|||
'ProgramMode:RUN
|
||||
?Str 1
|
||||
Try Exp(Str 1)
|
||||
Except 1:"Syntax ERROR"
|
||||
Except 2:"Ma ERROR"
|
||||
Except 3:"Go ERROR"
|
||||
Except 4:"Nesting ERROR"
|
||||
Except 5:"Stack ERROR"
|
||||
Except 6:"Memory ERROR"
|
||||
Except 7:"Argument ERROR"
|
||||
Except 8:"Dimension ERROR"
|
||||
Except 9:"Range ERROR"
|
||||
|
||||
Except 11:"Non-Real ERROR"
|
||||
|
||||
Except 20:"Com ERROR"
|
||||
Except 21:"Transmit ERROR"
|
||||
|
||||
Except 22:"Recieve ERROR"
|
||||
Except 28:"Too Much Data"
|
||||
|
||||
Except 33:"For without Next"
|
||||
Except 34:"Next without For"
|
||||
Except 35:"While withot WEnd"
|
||||
Except 36:"WEnd withot While"
|
||||
Except 37:"Do withot LpWhile"
|
||||
Except 38:"LpWhile withot Do"
|
||||
Except 39:"Not Loop ERROR"
|
||||
Except 40:"Division By Zero"
|
||||
Except 41:"Undefined Label"
|
||||
Except 42:"Not enough Memory"
|
||||
Except 43:"String Too Long"
|
||||
Except 44:"No Matrix array"
|
||||
Except 45:"Illegal Ary size"
|
||||
Except 46:"Not found Prog"
|
||||
Except 47:"Too many SubProg"
|
||||
Except 48:"If without IfEnd"
|
||||
Except 49:"Then without If"
|
||||
Except 50:"Case w/out Switch"
|
||||
Except 51:"Default wo Switch"
|
||||
Except 52:"Without SwitchEnd"
|
||||
Except 53:"Without Switch"
|
||||
Except 54:"Can't find file"
|
||||
Except 55:"Illegal Element"
|
||||
Except 56:"Already Open ERR"
|
||||
Except 57:"Com Not Open ERR"
|
||||
Except 58:"Type Mismatch ERR"
|
||||
Except 59:"Out of Domain ERR"
|
||||
Except 60:"Undefined Var"
|
||||
Except 61:"Undefined Func"
|
||||
Except 62:"Not Support ERR"
|
||||
Except 63:"Too many Var ERR"
|
||||
Except 64:"Duplicate Def ERR"
|
||||
Except 65:"Address Align ERR"
|
||||
TryEnd
|
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 830 B |