[WP34s] New flash handling?



#13

Marcus, could we please get a short description of the new flash structure and handling?

In the current SVN I can't even load any of my programs with "PRCL n" because PRCL now doesn't accept a parameter anymore. :-(

Franz


#14

Here is a short description:

There are no longer any regions (copies of the RAM program structure) which can be individually accessed by number. There are just four program areas:

RAM

User library

User backup

ROM

Each area (except ROM) can be divided into individual programs delimited by END. To make any program (in any area except ROM) the current program you can use CAT and navigate to a label within the program. ENTER will just position the PC while R/S or XEQ will run the program. P/R lets you inspect the program.

The following commands act on a single program only:

CLP - removes current program from RAM or library. CLP can be directly accessed from the CAT browser.

PSTO - stores the current program in the library. The program must start with a LBL'xyz' instruction which serves as kind of a file name. Programs are always appended to the end of the flash area. If a program with the same name exists, it will be deleted first. PSTO is mapped to STO in the CAT browser.

PRCL - Creates a copy of the current program at the end of RAM. The source may even be RAM so you can make a duplicate of your code on the device. No automatic removal of duplicate labels is attempted. XROM cannot be copied, all other programs are available to PRCL. Single program size is bound by some 900 steps. If needed, room in RAM is increased by clearing the statistical sums and reducing the number of registers before PRCL is performed. PRCL is mapped to RCL in the CAT browser.

LOAD and SAVE have not changed. SAVE is the only way to store something in the backup (PSTO 0 is no longer available).

In case of trouble do a manual RTN to force the PC to location zero in RAM. There may still be situations where the internal pointers get a bit mixed up.


#15

Thanks for the explanation, Marcus!

That's now indeed a completely different flash handling, and I still don't fully understand it.

Ok, let's begin with my usual daily work on my PolynomSolver (everything for the emulator of course):

I guess now I have to compile my source to wp34s-lib.dat instead of wp34s-n.dat (with n=1..9), right?

And what if I already have e.g. 10 separate programs? Do I need to have them all in one single source file to compile them to wp34s-lib.dat?

So I would always have to compile all of them again and again, even if I only change something in the source of one program?

And what's the size limit for this wp34s-lib.dat? What if I have hundred programs which would compile together to e.g. 10kB?

Quote:
If needed, room in RAM is increased by clearing the statistical sums and reducing the number of registers before PRCL is performed.
What if my program is too big to load (and PRCL reduces the stat registers), but these registers are used in my program (as it is the case in my PolySolver)?


#16

The assembler is being updated to support updating the library so you can just recompile any sources and they are automatically updated in the library.

Until then, it's better to compile into wp34s-backup.dat or wps3s.dat and run (and test) from there. Use PSTO to add the program to the library.

The automatic measures to increase the available space to load a program are only carried out if there isn't enough room beforehand. Just use REGS to decrease the number of registers before you attempt the PRCL. If you need a very long program and a lot of memory for data, run the program from the backup or from the library.


#17

Oh my god, after having worked almost every day in the last months with the WP34s I'm quite familiar with these 'n' flash files and this new stuff sounds rather complicated to me - I'm not sure if I'll like it!?

But at least the increase in possible program steps in RAM is a great advantage - my Laguerre PolySolver has now (with more than 500 steps) already reached the current size limit, and I was already thinking about removing some of its features ...


#18

Even within the limits of 510 steps you could separate parts of it and create routines with global labels which do part of the work and are called by the main program. These routines may well be stored in a program region.

I think you will be comfortable with the new features if you work with them. The main reason for the change was a better exploitation of the available flash space which is now organized in pages of 256 bytes (no longer 1 KB chunks). There is no slack, all programs in the library are contiguously aligned in the available space. Being able to have larger single programs (even in RAM for editing) is an additional benefit.

#19

You'll like it :-)

The best part you no longer have to organize the programs you want into 1kb pages. Just throw everything into the wp34s-lib.dat Also less problems with multiple programs wanting to use the hotkey labels A-D or internal LBL 0-9 etc..


#20

Quote:
You'll like it :-)

Well, maybe I would if I could! :-(

Unfortunately now not even the new assembler (not to speak of the library manager) is working with my TinyPerl.

So I guess I'll stop updating to new WP34s versions and stay with SVN 2030 (the last version before this new flash handling) ...

Franz


#21

Tiny Perl is just too tiny I'm afraid. Any hopes to upgrade your PC to a more recent model that supports ActivePerl? With the new Qt based emulators being developed you may even switch to Linux (where Perl is standard). Linux will most certainly get more juice out of the same hardware than Windows does.


#22

Quote:
... you may even switch to Linux ...

Linux??? Never!!!

That's almost as if I was to undergo a sex change! ;-)


#23

Quote:
Linux??? Never!!!

That's almost as if I was to undergo a sex change! ;-)


It's not that bad. It's more like switching from People's Party (Windows - don't ask questions, you _will_ like what we give you) to Social Democrat (Linux - have what you like, but you have to do it yourself ) :-)

Why don't you use ActivePerl? I remember it was very simple to install - though the full thing does suck > 120MB of disk because it include almost 40M of documentation and 80 Mb of libraries - it should be possible to delete most of them.


#24

Quote:
Why don't you use ActivePerl? I remember it was very simple to install - though the full thing does suck > 120MB of disk because it include almost 40M of documentation and 80 Mb of libraries - it should be possible to delete most of them.

Well, you've already written the reason yourself: 90% of all my work I'm doing on my VERY old internet notebook, and this notebook has VERY limited resources. So I definitely can't (and don't want to) install 120MB just for running one single Perl script!

But if anyone would show me a small (maybe upto 10MB) ready-to-use (no need to install dozens MBs useless libraries) Perl package, I would certainly download and use it. ;-)


Possibly Related Threads...
Thread Author Replies Views Last Post
  DIY HP 30b WP 34s serial flash/programming cable Richard Wahl 2 259 12-04-2013, 11:14 AM
Last Post: Barry Mead
  Trig vs hyperbolic handling differences in Prime CAS Michael de Estrada 3 210 11-08-2013, 06:26 PM
Last Post: Mark Hardman
  PRIME: re-format the flash drive to recover the operating system Harold A Climer 2 234 11-06-2013, 12:22 AM
Last Post: Michael de Estrada
  Bad Flash in HP Prime Han 11 505 09-27-2013, 12:38 PM
Last Post: Han
  Flash Flood Warning: 9/16/2013 (One Week from HHC13) Eddie W. Shore 8 439 09-17-2013, 09:20 PM
Last Post: Craig Ruff
  FLASH? command Andrew Nikitin 1 172 06-18-2013, 01:02 AM
Last Post: Walter B
  [EXCLUSIVE FLASH] Infos about new HP Prime ! Mic 16 558 04-02-2013, 11:06 AM
Last Post: Frank Boehm (Germany)
  No luck getting flash disk to work in 95lx Harald 7 492 03-18-2013, 08:11 AM
Last Post: Harald
  [41CL] Repairing an image in Flash Monte Dalrymple 0 131 01-24-2013, 07:01 PM
Last Post: Monte Dalrymple
  [WP34S] WP34S firmware on the AT91SAM7L-STK dev kit? jerome ibanes 1 156 10-04-2012, 04:59 PM
Last Post: Paul Dale

Forum Jump: