MPoupe : I don't know if ram access is faster than flash access. You could do some speed test: if ram access is faster, then you can use it to store the data you would access many time.

KermMartian : Would you like a similar syntax or a kind of compatibility?
vebveb wrote:
MPoupe : I don't know if ram access is faster than flash access. You could do some speed test: if ram access is faster, then you can use it to store the data you would access many time.

Hello, I have more complicated problem. I need to access ~ 4 MB in once. Data are stored in flash most of them I do not modify. For small data it would be easy, I would load them to RAM and use. But the whole RAM capacity is 2MB, but I can use around 1 MB (non continuous areas). So there is no such question "flash or RAM ?".

BTW: flash / RAM access is +- the same, the whole Prizm OS runs from the flash, all addins run from flash.
Vebveb: I'd like complete comatibility, as far as possible, but that's something we should discuss in another topic, I think. I'd like it to be able to run FX Lua programs with some emulated screen setup, Nspire Lua programs in a virtual 320x240 display, and have native Prizm Lua programs that can use the full display.

Yeah, reading from Flash is very fast; it's writing to Flash that's a big slow-down. As MPoupe said, there's not really a choice since we have <1MB of RAM to use, including reservations on the stack, but it's not the end of the world since Flash reading is fast.
Is there somebody who wants cooperate with CGDoom development ?

BTW: slightly improved version is here: http://ourl.ca/16465/310496

Source code of this version (binaries included) is here: http://martin.poupe.org/casio/cgdoom/cgdoom0.03src.zip
Hello MPoupe.
I just bought a Casio fx-CG50 graphing calculator and I am having issues getting Doom to work on it.
When I first put it on I would get a file too fragmented error so I deleted the files and re-added them and now I'm getting a "cannot open doom.wad" error.
Any ideas what I'm doing wrong?

There is another message that comes up when I unplug the USB it says: Note: Add ins deleted by reset1 are installed. Press: [EXE] Not sure what that means. I know you need to eject a device due to write caching but I have that turned off.
Gamehead wrote:
Hello MPoupe.
I just bought a Casio fx-CG50 graphing calculator and I am having issues getting Doom to work on it.
There are lot of hacks to make it working on the calculator. I am aftraid, that CG50 differs too much to have full binary compatibility. I do not own CG50 so I am not able to update cgdoom. But I released the source code, so you can fix it for you if you want.
Here is my attempt at updating it for the CG-50. I don't have a CG-50 so someone will needed to test it.
https://github.com/ComputerNerd/cgdoom/blob/master/CGDOOM-minisdk/CGDOOM/CG_Doom.g3a
Thanks for your work. Very Happy
Unfortunately, the current version does not work on the CG50.
ProgrammerNerd wrote:
Here is my attempt at updating it for the CG-50. I don't have a CG-50 so someone will needed to test it.
https://github.com/ComputerNerd/cgdoom/blob/master/CGDOOM-minisdk/CGDOOM/CG_Doom.g3a


Now that's funny. I was thinking of doing the same thing but I kept fighting with the instructions on how to build on linux here and everywhere else: http://prizm.cemetech.net/index.php/PrizmSDK_Setup_Guide#Setting_Up_the_SDK_on_Linux

I'm new to this more technical stuff, like porting and programming so I don't know what the hell I'm doing.
Some of the instructions make it harder than it needs to be. I made something awhile ago where you can just copy and paste it into a bash file and run it. All you need to do is this:

First in your $HOME directory create a folder called casio-gcc.
Then download the latest version of GCC and binutils into it.
At the time of writting that is:
binutils-2.32.tar.xz
gcc-8.3.0.tar.xz

Then paste everything below from the code block and run it:

Code:

#!/bin/bash
set -e
set -o pipefail
TMPDIR=/tmp
tar -xf binutils* -C $TMPDIR
tar -xf gcc* -C $TMPDIR
cd $TMPDIR
export PREFIX=$HOME/casio-gcc
export PATH=$PATH:$PREFIX/bin
export TARGET=sh3eb-elf
export CFLAGS="-O2 -pipe -s -fomit-frame-pointer -ffunction-sections -fdata-sections"
export CXXFLAGS=$CFLAGS && export LDFLAGS="-Wl,--gc-sections"
mkdir -p build-binutils
cd build-binutils
../binutils-*/configure --disable-werror --target=$TARGET --prefix=$PREFIX --disable-nls --disable-tls --disable-libssp --enable-plugin --enable-plugins --enable-gold=yes
make -j8
make -j8 install
cd ..
mkdir -p build-gcc
cd build-gcc
../gcc-*/configure --target=$TARGET --prefix=$PREFIX  --without-headers --enable-plugin --enable-plugins --enable-gold=yes --enable-sjlj-exceptions --disable-hosted-libstdcxx --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --disable-nls --disable-tls --disable-libssp --disable-threads --disable-shared --enable-static --disable-__cxa_atexit --disable-libvtv --disable-libada --with-endian=big
make -j8 all-gcc
make -j8 install-gcc

make -j8 all-target-libgcc
make -j8 install-target-libgcc

Here are some helpful commands. Don't try and run the lines that start with a pound symbol. Those are comments.

Code:

# Create the casio-gcc folder.
mkdir -p $HOME/casio-gcc
# Go into the newly create directory.
cd $HOME/casio-gcc
# Run the script that you pasted (assuming you called it compile-gcc.sh)
bash ./compile-gcc.sh


After you are done clone this: https://github.com/Jonimoose/libfxcg and run make to build the examples.

Also you will need to run:

Code:

export PATH=$PATH:$HOME/casio-gcc/bin

so that the makefiles you find online work without modification because otherwise you would need to specify the entire path every-time you want sh3eb-elf-gcc.
Thank you for the time on helping me! I got stuck before on that libfxcg library part. What do you mean by cloning it? I'm unclear on this part.
You can just use the green button to download the zip file, or if you are familiar with git you can use the url to "clone" it locally. Either method works.
PN, I also tried it on my CG50 but I'm getting the same exact error screen as the previous poster did.
Thank you for testing. I will most likely need to make more changes to get it to work but I don't what those are yet.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 3 of 3
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement