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 - MPoupe

Pages: 1 ... 9 10 [11] 12
151
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!
Hello SimonLothar,
I wrote the original TSR demo.
Yes, the source si very simple, I tried to show the concept as simple as possible. This is also the reason why I used the "old syscall-wrapper", this allowed me to use 1 simple source code file:-)
The OS extension is very far from to be ideal. The idea is to communicate from Basic to TSR by agreed variables (e.g. A,B).
The Basic must not use A for any other purposes and must keep it's value to 0 in idle. If basic wants some extra functionality (e.g. load new basic program from the flash), it setups the parameters (set up additional variables (e.g. filename to load to Str 1, filename to save to Str2) and as a last thing set variable A to the appropriate code (value).
TSR periodically check A's value and if it is nonzero, it will execute the requested operation and after then it resets A to 0.
Basic may wait for execution (for synchronous - like operations) - loop until A is zero again.
I write simple example, how it may work at http://ourl.ca/10095/197514

152
Casio Calculators / Re: Casio Prizm + truecolor ?
« on: May 03, 2011, 04:46:42 am »
Try syscall 0x0921 with argument 1.
Thank you, this solved my problem. I used your SDK 1.04 previously, now I used 1.05 with this syscall and it works nicely.
Simon, thank you for your SDK and documentation !

153
Casio Calculators / Re: Casio Prizm + truecolor ?
« on: May 02, 2011, 07:27:09 am »
So maybe there is a setting somewhere that needs to be changed for 16-bit color to work?
I think there must be such settings, I would expect some port in the display. The Menu displaying routine does it, because my test pattern was displayed in 16 bit colors for very short while.

154
Casio Calculators / Casio Prizm + truecolor ? [solved]
« on: May 02, 2011, 04:28:12 am »
Hello,
I tried to display something (in addin) by something like this:
unsigned short *VRAM = GetVRAMAddress();
int x,y;
for(y = 0;y< HEIGHT;y++)
for(x = 0;x< WIDTH ;x++)
{
   *VRAM = x;VRAM++;
}
VRAMtoDD();
GetKey(&x);
When you run this you got image with 2 color columns (alternating black and blue).
But if you press [Menu], it will change (for a fraction of second) to the expected gradient columns, then menu image will be  displayed.
So it seems display is somehow "rounding" color (using only the highest bit of the color part, or masking the pixels' color ) so it displays only base 8 color. The Menu handler sets this to true color mode and the it redraws the screen.

Does somebody know how to enable true color mode programatically?

PS: sorry for my poor English.


155
EDIT: Aw, it doesn't run on 64-bit Windows 7 :(
It is old (good) MS-DOS application - it may work in dosbox.
Source code is at http://martin.poupe.org/casio/hackdload.html
(any volunteer to port it to windows ? :-)

156
Does some kind of emulato exist for those models?
What's the CPU?
Real emulator seems to be in development - see http://mamedev.org/source/src/emu/cpu/hcd62121/hcd62121.c.html
The CPU seems to be hcd62121
If you need only simulator (not CPU emulator, but program, which interprets Casio casic language), I have written that in 1998, it is available on my page (http://martin.poupe.org/casio/download.html)
Screenshot:
<img src="http://martin.poupe.org/casio/images/example.gif">


157
Also how did you make the screenshots at http://martin.poupe.org/casio/tsr/menu.png ? I never got able to transfer any add-in to any emulator I've tried...
This screenshot is from the official Casio SDK.

158
m1ac4: I think yes, we need to know some syscall  - at least Alpha_GetData(),Alpha_SetData(),App_PRGM() ,SetTimer(),KillTimer() and all functionality you want to use from Basic. I hope that App_PRGM()  on cg behaves the same way as on fx9860.


159
DJ_O: I think usage is tricky, but easy for average user (programmer in Basic). We need to specify (and agree on) list of functions and interface (how to communicate), which the TSR will support. As a quick draft one can imagine:
variable A - code of routine to call
0 = nothing
1: get TSR version
...
127: load cas program from flash, name in Str1, filename in Str2
128: delete cas file, name in Str1
Then Basic user would do following:
1. set parameters:
"Game"->Str 1:"\\fls0\Game.g1r"->Str 2
2. specify function:
127->A
3. wait for execute (TSR will reset A to signal execution)
While A:WhileEnd
4. check result (?)
If B:Then "ERROR":Stop":IfEnd
5. use the program
Prog "Game"
6. delete it
"Game"->Str 1:128->A
7. wait for execute ...
While A:WhileEnd
8. check result (?)
If B:Then "ERROR":Stop":IfEnd

One can also imagine really asynchronous processing, we may have function, which will periodically check variables X and Y
and display user defined image (figure) here. You may create e.g. Arkanoid game with nice ball without drawing ball at all (OK you need to draw it once and store it to TSR by another command)

160
Hello,
I played a little with my fx-9860G and I have found very interesting feature. I am not sure if it was discussed somewhere, please sorry for that case.

The main idea is, that C/asm addin and CASIO basic script can run concurrently and work together.

I put more detailed description & example on my page - see "TSR - Terminate and Stay Resident for fx-9860G" on my page (http://martin.poupe.org/casio/).

Martin

161
I wonder if Martin actually has ROM dumps?
Hello,
I have ROM dump of the cfx9850G from 1997. This model has physically 32 KB RAM (not 128 KB as written above).
I tried many examinations of ROM to enable asm on original device and I did nearly proof, that this is not possible (on the old models).




162
News / Re: Casio fx-9860G video player
« on: January 24, 2011, 05:21:08 am »
One thing I thought would be to use scaled up low resolution.
Yes, and palette would save another 50% - 75% data storage.

163
News / Re: Casio fx-9860G video player
« on: January 21, 2011, 11:57:09 am »
I wonder if with some modifications for the screen code it could run on the Casio Prizm too?
Audio part definitely, the video part may be problem, because each frame has much more data. Profiling would be needed.
But now I am at the Step 0 "obtain the CASIO Prizm cg20". :-(

164
News / Re: Casio fx-9860G video player
« on: January 20, 2011, 04:45:19 am »
Hello,
I created new version of the multimedia player. It supports old formats (of my older players) and also video with audio (movies).
I improved the audio part, it has much cleaner sound and intrusion is away.
Download it at http://martin.poupe.org/casio/, sample video with audio attached.

Martin

165
News / Re: Casio fx-9860G video player
« on: January 07, 2011, 06:01:37 am »
I hope it will have more. The fx 9860G has 256KB RAM and the fx 9860G SD has 512KB.

Pages: 1 ... 9 10 [11] 12