Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - SimonLothar

Pages: 1 ... 4 5 [6] 7 8 9
76
Casio Calculators / Re: Compiling stuff for Prizm
« on: June 13, 2011, 12:34:53 pm »
A mini-Prizm-SDK (version 1.08).

EDIT: attachment removed. Use the new version 1.09:
http://ourl.ca/9205/224838

New with version 1.08:
Insight: direct access of the serial I/O-pins (measured a 17 kHz symmetric and sharp edged square wave with my scope, though higher frequencies are possible).
BTW: I went through a world of hurt, hunting this down!

EDIT:
The following passage of the documentation (CHM) has to be corrected. The published source is OK.
Quote
At first the outer gate has to be opened:
Set bit 3 of port 0xA4050162 to output mode, t. i. set control register 0xA4050142 accordingly.
Set bit 3 and bit 2 of port 0xA4050162. Do not ask why bit 2 has to be set, too. I do not know.

How to control the output of the serial transmit pin:
Set bit 2 of port 0xA4050130 to output mode, t. i. set control register 0xA4050110 accordingly.
Set or clear bit 2 of port 0xA4050130 to control the serial transmit pin state.

How to read the state of the serial receive pin:
Set bit 3 of port 0xA4050130 to input mode, t. i. set control register 0xA4050110 accordingly.
Read port 0xA4050130 and isolate bit 3 to obtain the serial receive pin state.

77
Casio Calculators / Re: Compiling stuff for Prizm
« on: June 11, 2011, 10:30:27 am »
A mini-Prizm-SDK (version 1.07).

New with version 1.07:
Insight: FKey-icon demo (find the FKey-bitmap pointer and display).
Insight: standard-progressbar demo.
Insight: scrollbar demo.

Update:
http://ourl.ca/9205/218794
Attachment removed

78
Casio Calculators / Re: Casio Prizm documentation
« on: June 10, 2011, 01:05:45 pm »
BTW has anyone found which version of the MMU does the Prizm use.
As far as I saw, the Prizm's MMU register structure matches the one of the 7730.

79
I just downloaded BasicExtension_001.zip and had a look a the source.

It installs a timer-handler and starts the built-in Basic-Interpreter (APP_PRGM). While the BASIC interpreter waits for input, the timer-handler injects keycodes (via PutKey) based on a fixed text, hardcoded in the G3A. The built-in BASIC interpreter receives the keycodes and acts accordingly. But alas, I cannot see, how it should be possible to change the behaviour of the BASIC interpreter this way.
Some years ago, I wrote LOADER for the fx-9860, which followed this scheme to load BASIC-programs from storage memory:
http://www.casiokingdom.org/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=542&title=FX9860G%20LOADER%202.00
If I am not totally mistaken, the upload contains some source and knowhow. But I do not know, if casiokingdom's download area is still operable at all.

If you want to change/extend the BASIC-interpreter, you either have to write a completely new interpreter as G3A (sagarvaze did this some years ago at casiokingdoms) or you have to mod the OS.

@bsl: are you one of the SDK-chums, which have been around at casiokingdoms some years ago? The old syscall-wrapper: long time no see!

80
News / Re: Casio FX-9860G & FX-9860GII OS 2.01 released
« on: May 21, 2011, 03:05:59 am »
http://www.casiocalc.org/?showtopic=5606
Good job! Especially because you do not own a slim. Respect.

81
Casio Calculators / Re: Casio Prizm documentation
« on: May 13, 2011, 03:50:45 am »
I just sent this email to Renesas based off some new found evidence
Quote
Hello I have an inquiry about a device that uses a Super H processor. This device is the Casio fx-cg10 graphing calculator which is believed to use a modified SH3. Based off a reading from the rom chip the identifier "RENESAS SH7305" and "RENESAS SH7355" are found. Now Renesas does not appear to be selling either a 7305 or 7355 brand Super H so I have reason to believe that this is a custom order. If it is at all possible would a full hardware documentation be available for this version of the Super H or at least could I know which processor it is most closely related to?

Thank you for your time,
[my name was here]
I found this identifier at the end of file produced from the spreadsheet app. In my case SHEET.g3m. There appears to be more written at this location too if anyone can decipher it.
Usually the documentation of the customized processors (7305, 7355 and 7337) is under nondisclosure agreement.
A lot of the 7305-registers are those of the 7730.

Perhaps this is interesting, too:
http://ourl.ca/9887/189504
http://ourl.ca/9887/189510




82
Casio Calculators / Re: Compiling stuff for Prizm
« on: May 03, 2011, 12:25:35 pm »
mini-Prizm-SDK
New with version 1.06:
Syscall Bdisp_WriteGraph accompanied by some demo in insight. Stay put until you have seen the crawling Alien!
In order to allow the usage of virtual class functions, the original setup.obj has to be used, when binding.
A bug has been fixed with the "Save as..." menu option.

Updated: http://ourl.ca/9205/218371
Attachment removed.

83
Casio Calculators / Re: Casio Prizm + truecolor ?
« on: May 02, 2011, 11:54:24 am »
Does somebody know how to enable true color mode programatically?
Try syscall 0x0921 with argument 1.

84
Casio Calculators / Re: Casio Prizm documentation
« on: April 21, 2011, 11:29:05 am »
And how is the .gp3 difference handled?
I'd say: calc-type dependent branches inside of the OS. The same procedure as every year...

Btw, the time stamp must be different, too! ;)
Yes, it is.

85
Casio Calculators / Re: Casio Prizm documentation
« on: April 21, 2011, 11:04:58 am »
The differences between a fxCG10 and a fxCG20 (first 7 MB) are (apart from the calc-ID and the checksum)

fx-CG10: 0x303[1] : 0x41
fx-CG10: 0x305[1] : 0x5A

fx-CG20: 0x303[1] : 0x44
fx-CG20: 0x305[1] : 0xAA

Or have a look at "fx_calculators_SuperH_based.chm".

86
Casio Calculators / Re: Compiling stuff for Prizm
« on: April 21, 2011, 04:21:07 am »
A mini-Prizm-SDK (version 1.05).

New with version 1.05: corrected the syscall name Bdisp_AllCr_VRAM() to Bdisp_AllClr_VRAM(). Support of assembler modules as additional project sources for the main program as well as for the tools library. Centralized common libraries (f. i. syscall library), hence the directory structure has been changed. Two new important syscalls: PrintMini and PrintMiniGlyph. Changed INSIGHT's moving-boxes example to a moving-balls example to demonstrate glyph-drawing. The console based version is not longer included.

EDIT:
Update http://ourl.ca/9205/204915

87
Casio Calculators / Re: Compiling stuff for Prizm
« on: April 09, 2011, 06:47:27 am »
Okay I'm working on getting a shell up and running now, but I can't find a syscall that meets one of my needs. What I need to do is to create a list of the files contained in a directory. None of the MCS or Bfile syscalls seem to accomplish this so I'm wondering if such call dos exist, is it undocumented or do I need to write a routine to find this information.
These are the syscalls for enumerating the storage memory:

syscall 0x1DB6: int Bfile_FindFirst( const unsigned short *filename, int*FindHandle, FONTCHARACTER *foundfile, FILE_INFO *fileinfo );

FONTCHARACTER is unsigned short in the current implementation (as in the legacy systems).
typedef struct tag_FILE_INFO
{
    unsigned short id;
    unsigned short type;
    unsigned long fsize;
    unsigned long dsize;
    unsigned int property;
    unsigned long address;
} FILE_INFO;
The members of the FILE_INFO-struct are not filled as documented in the legacy SDK!
The function checks the length of the filename first. In case it should be greater than 0x10A the function returns errorcode -3.
Every FindHandle has to be closed with Bfile_FindClose, if is is not needed any more!
syscall 0x1DB8: int Bfile_FindNext( int FindHandle, FONTCHARACTER *foundfile, FILE_INFO *fileinfo );
syscall 0x1DBA: int Bfile_FindClose( int FindHandle );

Concerning enumeration of the MCS: I have still to check, if it can be done in the same fashion like with the legacy systems. But the interesting thing is, that Bfile_FindFirst returns "@MainMem" as found file with a search pattern "\\fls0\*.*".

The other thing I was wondering about was if it is better to do a syscall using the 80020070 address or to just call directly to the the syscall. My only concern with calling directly was that some OS's could use different locations for the calls making some older programs unusable.
At any rate the use of absolute addresses should be avoided.

88
Casio Calculators / Re: Casio Prizm documentation
« on: April 09, 2011, 04:22:53 am »
So why would Casio need ... synco and ... ICBI.
Because the Prizm processor is SH-4A-based (of course heavily customized). I do not think, that the processor is able to lie, when it says "I am a member of the SH-4A family", which it does, when you read the PVR.

89
Casio Calculators / Re: Casio Prizm documentation
« on: April 08, 2011, 02:03:36 pm »
Well, at least Insight can be compiled with -cpu=sh4 and -fpu=single
But I did not notice any difference.
Smart idea.
There will be differences, if you declare float-variables. The compiler uses fpu-commands, indeed. But, alas, the Prizm crashs with "Illegal Code Err", t. i. no fpu-support in the processor.

90
Casio Calculators / Re: Casio Prizm documentation
« on: April 08, 2011, 04:43:16 am »
So why would Casio need to clear the pipeline with synco and invalidate the cache block with ICBI. Where do they use these commands.
According to the 7780 manual, p.68, SYNCO "Prevents the next instruction from being issued until instructions issued before this instruction have been completed". It is used every time the LCD-registers are accessed.
ICBI is used in the boot code several times. The corresponding register always loaded with 0xA0000000. If I remember well, it occurs a few times inside of the OS as well.

Pages: 1 ... 4 5 [6] 7 8 9