Index wersja polska wersja polska

Information specific to the FX-730P calculator

Additional characters

additional characters specific to the Casio FX-730P


BASIC tokens

    $80 SIN     $90 LEN(    $A0 FOR     $B0 VAC     $C0 DEFM    $D0 DIM
    $81 COS     $91 VAL(    $A1 NEXT    $B1 SET     $C1 SAVE    $D1 ERASE
    $82 TAN     $92 MID(    $A2 GOTO    $B2 PUT     $C2 LOAD    $D2
    $83 ASN     $93 KEY     $A3 GOSUB   $B3 GET     $C3 VERIFY  $D3
    $84 ACS     $94 CSR     $A4 RETURN  $B4 CLEAR   $C4 LIST    $D4
    $85 ATN     $95 TO      $A5 IF      $B5         $C5 RUN     $D5
    $86 LOG     $96 STEP    $A6 PRINT   $B6         $C6 NEW     $D6
    $87 LN      $97 THEN    $A7 INPUT   $B7         $C7 PASS    $D7
    $88 EXP     $98 DEG(    $A8 MODE    $B8 POL(    $C8 SRAM    $D8
    $89 SQR     $99 HEX$(   $A9 STOP    $B9 HYP     $C9 LRAM    $D9
    $8A INT     $9A STR$(   $AA END     $BA REC(    $CA WRITE#  $DA
    $8B FRAC    $9B DM$(    $AB ON      $BB FACT    $CB STAT    $DB
    $8C ABS     $9C MID$(   $AC READ    $BC NPR(    $CC         $DC
    $8D SGN     $9D ALL     $AD RESTORE $BD EOX     $CD         $DD
    $8E RND(    $9E BEEP    $AE DATA    $BE NCR(    $CE         $DE
    $8F RAN#    $9F LET     $AF REM     $BF EOY     $CF         $DF

The &H prefix is stored as 2 characters though there exists a corresponding token (code $B6).

Function KEY$ is stored as token KEY (code $93) followed by character $.

All commands expanded by # (like READ#, SAVE#) are stored in 2 bytes. The only exception is the command WRITE# which is stored as a single byte (code $CA).


Memory interface

The CPU communicates with the RAM through a 4-bit bus, similar as in the FX-700. However, instead of dedicated RAM chips HD61914, a standard 8kB static RAM is used along with an MB64H193 interface chip. This ASIC almost exactly emulates the behaviour of the HD61914, with one exception - it assigns 8 data bits (instead of 4) to each memory address location.

The ASIC also contains a 1-bit output port which drives the built-in piezo buzzer. The buzzer port is controlled by following commands (sent in an OP=0 cycle):
- code $1 sets the port
- code $2 clears the port


File format

Additional file types

First byte of the file name segment for various file types:

$Cx
- password protected programs saved with SAVE
$Bx
- password protected programs saved with SAVE ALL
$Ax
- password protected memo files saved with SAVE#
$9x
- memo files saved with SAVE#

Memo fields are stored as strings of characters terminated by $FF. Large files are split in multiple segments.

Password protection

Password protected files contain an additional password data segment following immediately the name segment. The password is stored as a string of characters terminated by $FF. It isn't encrypted in any way.
Example:

    Password data segment:
    $02                         data segments begin with $02
    $21 $24 $33 $20 $FF         PASS "BETA"
    $F1                         data segment end marker

Undocumented features

Data transfer

Undocumented commands SRAM and LRAM allow to copy the RAM contents between two FX-730P calculators. The image below shows the wiring diagram for the data transfer cable.

wiring diagram for the data transfer cable

Usage instruction:

  1. Turn both calculators off, then connect them with the cable.
  2. Turn the "destination" calculator on, then type LRAM and press EXE. The display shows LRAM Ready.
  3. Turn the "source" calculator on. The "destination" calculator freezes, i.e. stops responding to the keyboard.
  4. Type SRAM on the "source" calculator then press EXE. After a while the display shows Ready (or Error9 if something went wrong).
  5. Turn both calculators off and disconnect the cable. The "destination" calculator contains now an exact copy of the "source" calculator's RAM.

Direct RAM access

This undocumented feature was submitted by Xerxes to the Silicium discussion forum. Quoted message:

On some CASIO pockets an equivalent to PEEK and POKE exists. I have tested the commands on the FX-730P and FX-795P.

MODE19(A,B) works like POKE A,B
MODE18(A,B$) is similar to PEEK A

An example how to use MODE18:

10 A=1234
20 MODE18(A,B$)
30 B$="&H"+B$
40 PRINT VAL(B$);

Both commands are usable in program mode only.