Post Reply 
Still needed for the HP 41CL
07-18-2016, 02:40 PM
Post: #1
Still needed for the HP 41CL
Still need:

1) Some solution books for the HP 41 need to be put into ROM files: Applied Stats 1 and 2, Home Construction Estimating Solution Book, and the Small Business solutions book. At least, I don't think these are in the 41CL today. Are there *any* other HP 41 solution books not in the 41CL ?

2) In one of these roms: AMC/OSX, PowerCL, Sandmath or even YFNX (?) – we need INC and DEC for any register. These are two basic functions that nearly every program needs at some point and the waste to use ISG and a NOP continues to be something that should be added IMO. :-)

3) HP-67/97 Games pac and solutions books – some HP-67/97 games have no HP 41 equivalent. There are still “useful” programs for the HP 67/97 without corresponding HP-41 equivalents available on the 41CL and these should be gathered into a rom image or two. The .raw files exist, it just requires a bit of rom making. Can anyone help?
Find all posts by this user
Quote this message in a reply
07-18-2016, 03:23 PM
Post: #2
RE: Still needed for the HP 41CL
(07-18-2016 02:40 PM)Gene Wrote:  Still need:

1) Some solution books for the HP 41 need to be put into ROM files: Applied Stats 1 and 2, Home Construction Estimating Solution Book, and the Small Business solutions book.
At least, I don't think these are in the 41CL today. Are there *any* other HP 41 solution books not in the 41CL ?

Hello Gene,

I have all the english HP-41 Solutions Books (and some in french) in my collection.
I will publish the list tonight so you can choose which one you need.

Best regards,

Sylvain
Find all posts by this user
Quote this message in a reply
07-18-2016, 03:25 PM
Post: #3
RE: Still needed for the HP 41CL
It isn't necessarily what I need. :-) it's a matter of making sure that all possibly relevant HP 41 solution books are in the 41CL V4 memory reference.

No need for a 1984 Tax solutions book haha, but if Test Statistics isn't in there it probably should be. A complete list to compare against the V4 memory reference would be helpful.
Find all posts by this user
Quote this message in a reply
07-18-2016, 03:45 PM
Post: #4
RE: Still needed for the HP 41CL
(07-18-2016 03:25 PM)Gene Wrote:  It isn't necessarily what I need. :-) it's a matter of making sure that all possibly relevant HP 41 solution books are in the 41CL V4 memory reference.

No need for a 1984 Tax solutions book haha, but if Test Statistics isn't in there it probably should be. A complete list to compare against the V4 memory reference would be helpful.

Ah, Bon! No Tax Solution then Wink

Understood, I will create a list of the solutions books, a list of the one available in V4 and a list of the missing ones.
Then based on which solutions books you are interested, I will create a LIF file for each of them.

Sylvain
Find all posts by this user
Quote this message in a reply
07-19-2016, 12:41 AM
Post: #5
RE: Still needed for the HP 41CL
Hello Gene,

As promise, the solutions books list

Sylvain

Code:
------------------------------------------------------------------------
HP-41 Solutions Books
------------------------------------------------------------------------
Med.:Medium   -> L:Listing / B:Barcode / T:Tape / R:ROM@TOS
41CL:ROM ID   -> 41CL Memory Reference 2016-07-08
B...:Binding  -> S:SaddleStitching / P:PerfectBinding / N:NoBinding
Lg..:Language -> EN:English / FR:French
------------------------------------------------------------------------
Med. 41CL B Lg YYYYMM Product       Name
---- ---- - -- ------ ------------- ------------------------------------
LB.R ANTS S EN        00041-90093   Antennas
LB..      S EN        00041-90246   Applied Statistics I
LB..      S EN        00041-90292   Applied Statistics II
LB.R BSMS S EN 198010 00041-90094-C Business Stat/Marketing/Sales
LB.R CLND S EN 198103 00041-90145-D Calendars
LB..      S EN        00041-90097   Cardiac/Pulmonary
LB.R CENG S EN 198010 00041-90100-C Chemical Engineering
LB.R CHEM S EN        00041-90102-B Chemistry
LB.. CIVI S EN        00041-90089   Civil Engineering
LB.R CNTL S EN        00041-90092   Control Systems
LB.R EENG S EN 198007 00041-90088-B Electrical Engineering
LB.R FDYN S EN 198010 00041-90139-C Fluid Dynamics and Hydraulics
LB.R GSB2 S EN 198104 00041-90099-D Games
LB..      P EN 198306 00041-90440-B Games II
LB.R GEOM S EN        00041-90084   Geometry
LB.R HVAC P EN        00041-90140-D Heating/Ventilating/Air Conditioning
LB.R HMAT S EN        00041-90083-B High Level Math
LB..      S EN        00041-90096   Home Construction Estimating
LB.R LNDL S EN 198011 00041-90086-C Lend/Lease/Savings
LB.R MENG S EN        00041-90090   Mechanical Engineering
LB.R OPTO S EN        00041-90143   Optometry  I (General)
LB..      S EN        00041-90144   Optometry II (Contact Lens)
LB.R PHYH S EN 198104 00041-90142-B Physics
LB..      S EN        00041-90136-B Real Estate
LB..      S EN 198010 00041-90137-B Small Business
LB.R LENG S EN 198105 00041-90138-B Solar Engineering
LB..      S EN        00041-90384   Structural Analysis
L.T.      P EN        00041-90441   Structural Design
LB..      P EN 198305 00041-90141-C Surveying
LB.R TEST S EN        00041-90082   Test Statistics
LB.R      S EN        00041-90395   Time Module Solutions I
LB..      S EN        00041-90338   1980 Taxes
LB..      S EN        00041-90403   1981 Taxes
LB..      P EN 198402 00041-90455   1983 Taxes
LB..      P EN 198501 00041-90543   1984 Taxes
LB.. CIVU N EN                      SC-2 Civil Engineering
LB..      N EN                      SC-5 Surveying
------------------------------------------------------------------------
Find all posts by this user
Quote this message in a reply
07-19-2016, 02:21 AM
Post: #6
RE: Still needed for the HP 41CL
Thanks Sylvain. Couple of notes. These are in the 41CL:

1) Games solution book 2 - this is in the new combined Games solution book rom, I believe.
2) 0x0D7 timersln TIME Timer Solution Book
3) 0x194 cvleng CIVI HP Civil Engineering Solutions

So Angel :-) these would be the ones I would suggest be made into .rom images first - I think they would be useful.

LB.. S EN 00041-90246 Applied Statistics I
LB.. S EN 00041-90292 Applied Statistics II
LB.. S EN 00041-90136-B Real Estate
LB.. N EN SC-5 Surveying

The ones below I suspect (my opinion) might not be so useful, but they are out there.

LB.. S EN 00041-90384 Structural Analysis
L.T. P EN 00041-90441 Structural Design
LB.. S EN 00041-90144 Optometry II (Contact Lens)
LB.. S EN 00041-90097 Cardiac/Pulmonary
LB.. S EN 00041-90096 Home Construction Estimating
Find all posts by this user
Quote this message in a reply
07-19-2016, 05:53 AM (This post was last modified: 07-19-2016 08:40 AM by Ángel Martin.)
Post: #7
RE: Still needed for the HP 41CL
(07-19-2016 02:21 AM)Gene Wrote:  Thanks Sylvain. Couple of notes. These are in the 41CL:

1) Games solution book 2 - this is in the new combined Games solution book rom, I believe.
2) 0x0D7 timersln TIME Timer Solution Book
3) 0x194 cvleng CIVI HP Civil Engineering Solutions

So Angel :-) these would be the ones I would suggest be made into .rom images first - I think they would be useful.

LB.. S EN 00041-90246 Applied Statistics I
LB.. S EN 00041-90292 Applied Statistics II
LB.. S EN 00041-90136-B Real Estate
LB.. N EN SC-5 Surveying

The ones below I suspect (my opinion) might not be so useful, but they are out there.

LB.. S EN 00041-90384 Structural Analysis
L.T. P EN 00041-90441 Structural Design
LB.. S EN 00041-90144 Optometry II (Contact Lens)
LB.. S EN 00041-90097 Cardiac/Pulmonary
LB.. S EN 00041-90096 Home Construction Estimating

Guys, here's some comments:

- both Optometry I and II SB's are included in the current module, so you can scratch that one off the list.
- I've never seen the Structural Design or Structural Analysis books - nor do I have RAW files. Are they available somewhere? Without them this won't work...
- I've got some aversion to the applied stats subject, but aren't those already included?


'Cheers,
'AM

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
07-19-2016, 01:32 PM
Post: #8
RE: Still needed for the HP 41CL
(07-19-2016 05:53 AM)Ángel Martin Wrote:  - I've never seen the Structural Design or Structural Analysis books - nor do I have RAW files. Are they available somewhere? Without them this won't work...

Hello Ángel,
I have the barcodes for Structural Analysis and I have the digital cassette for Structural Design.
With the exception of Structural Design which is on tape, I have barcodes for all the solutions books.
As usual, it may take some time but creating raw file should be pretty easy.
Let me known which ones your are interested in.
Best regards,
Sylvain
Find all posts by this user
Quote this message in a reply
07-19-2016, 02:28 PM
Post: #9
RE: Still needed for the HP 41CL
(07-19-2016 01:32 PM)Sylvain Cote Wrote:  
(07-19-2016 05:53 AM)Ángel Martin Wrote:  - I've never seen the Structural Design or Structural Analysis books - nor do I have RAW files. Are they available somewhere? Without them this won't work...

Hello Ángel,
I have the barcodes for Structural Analysis and I have the digital cassette for Structural Design.
With the exception of Structural Design which is on tape, I have barcodes for all the solutions books.
As usual, it may take some time but creating raw file should be pretty easy.
Let me known which ones your are interested in.
Best regards,
Sylvain

Hi Sylvain, if it were up to me I'd go for the structural design and solutions book first - hopefully having the tape makes it easier to create RAW files - or even a complete 4k-page using something like Tape-to-CL-to-HEPAX_RAM-to-PC using serial link ...

Best,
'AM

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
07-20-2016, 03:10 AM (This post was last modified: 07-20-2016 03:11 AM by Sylvain Cote.)
Post: #10
RE: Still needed for the HP 41CL
(07-19-2016 02:28 PM)Ángel Martin Wrote:  Hi Sylvain, if it were up to me I'd go for the structural design and solutions book first

00041-90441 Structural Design HP-41 Solutions Book

I will scan the solutions book (92 pages) this weekend.

When I took the digital cassette to copy it, I realized that the pad was missing, fortunately, I was able to build another pad.
I used the Extended-IO MCOPY & MVERIFY to cloned the tape to a LIF file.
The LIF file is available HERE

Tape DIR
Code:
NAME    TYPE     REGS
STLSOL  PR,S      239
MAG     PR,S       75
UL2CON  PR,S      203
CIRCON  PR,S      172
CONBM   PR,S      144
MWALL   PR,S       56
TILTUP  PR,S       75
RIGID   PR,S       42
REBAR   PR,S       81
TRUSS   PR,S       45
W4X13   DA,S       10
W6X15   DA,S       10
W6X16   DA,S       10
W6X20   DA,S       10
W6X25   DA,S       10
W8X10   DA,S       10
W8X13   DA,S       10
W8X15   DA,S       10
W8X18   DA,S       10
W8X21   DA,S       10
W8X24   DA,S       10
W8X28   DA,S       10
W8X31   DA,S       10
W8X35   DA,S       10
W8X40   DA,S       10
W8X48   DA,S       10
W8X58   DA,S       10
W8X67   DA,S       10
W10X12  DA,S       10
W10X15  DA,S       10
W10X17  DA,S       10
W10X19  DA,S       10
W10X22  DA,S       10
W10X26  DA,S       10
W10X30  DA,S       10
W10X33  DA,S       10
W10X39  DA,S       10
W10X45  DA,S       10
W10X49  DA,S       10
W10X54  DA,S       10
W10X60  DA,S       10
W10X68  DA,S       10
W10X77  DA,S       10
W10X88  DA,S       10
W10X100 DA,S       10
W10X112 DA,S       10
W12X14  DA,S       10
W12X16  DA,S       10
W12X19  DA,S       10
W12X22  DA,S       10
W12X26  DA,S       10
W12X30  DA,S       10
W12X35  DA,S       10
W12X40  DA,S       10
W12X45  DA,S       10
W12X50  DA,S       10
W12X53  DA,S       10
W12X58  DA,S       10
W12X65  DA,S       10
W12X72  DA,S       10
W12X79  DA,S       10
W12X87  DA,S       10
W12X96  DA,S       10
W12X106 DA,S       10
W12X120 DA,S       10
W12X136 DA,S       10
W12X152 DA,S       10
W12X170 DA,S       10
W12X190 DA,S       10
W12X210 DA,S       10
W12X230 DA,S       10
W12X252 DA,S       10
W12X279 DA,S       10
W12X305 DA,S       10
W12X336 DA,S       10
W14X22  DA,S       10
W14X26  DA,S       10
W14X30  DA,S       10
W14X34  DA,S       10
W14X38  DA,S       10
W14X43  DA,S       10
W14X48  DA,S       10
W14X53  DA,S       10
W14X61  DA,S       10
W14X68  DA,S       10
W14X74  DA,S       10
W14X82  DA,S       10
W14X90  DA,S       10
W14X99  DA,S       10
W14X109 DA,S       10
W14X120 DA,S       10
W14X132 DA,S       10
W14X145 DA,S       10
W14X159 DA,S       10
W14X176 DA,S       10
W14X193 DA,S       10
W14X211 DA,S       10
W14X233 DA,S       10
W14X257 DA,S       10
W14X283 DA,S       10
W14X311 DA,S       10
W14X342 DA,S       10
W14X370 DA,S       10
W14X398 DA,S       10
W14X426 DA,S       10
W14X455 DA,S       10
W14X500 DA,S       10
W14X550 DA,S       10
W14X605 DA,S       10
W14X665 DA,S       10
W14X730 DA,S       10
W16X26  DA,S       10
W16X31  DA,S       10
W16X36  DA,S       10
W16X40  DA,S       10
W16X45  DA,S       10
W16X50  DA,S       10
W16X57  DA,S       10
W16X67  DA,S       10
W16X77  DA,S       10
W16X89  DA,S       10
W16X100 DA,S       10
W18X35  DA,S       10
W18X40  DA,S       10
W18X46  DA,S       10
W18X50  DA,S       10
W18X55  DA,S       10
W18X60  DA,S       10
W18X65  DA,S       10
W18X71  DA,S       10
W18X76  DA,S       10
W18X86  DA,S       10
W18X97  DA,S       10
W18X106 DA,S       10
W18X119 DA,S       10
W21X44  DA,S       10
W21X50  DA,S       10
W21X57  DA,S       10
W21X62  DA,S       10
W21X68  DA,S       10
W21X73  DA,S       10
W21X83  DA,S       10
W21X93  DA,S       10
W21X101 DA,S       10
W21X111 DA,S       10
W21X122 DA,S       10
W21X132 DA,S       10
W21X147 DA,S       10
W24X55  DA,S       10
W24X62  DA,S       10
W24X68  DA,S       10
W24X76  DA,S       10
W24X84  DA,S       10
W24X94  DA,S       10
W24X104 DA,S       10
W24X117 DA,S       10
W24X131 DA,S       10
W24X146 DA,S       10
W24X162 DA,S       10
W27X84  DA,S       10
W27X94  DA,S       10
W27X102 DA,S       10
W27X114 DA,S       10
W27X146 DA,S       10
W27X161 DA,S       10
W27X178 DA,S       10
W30X99  DA,S       10
W30X108 DA,S       10
W30X116 DA,S       10
W30X124 DA,S       10
W30X132 DA,S       10
W30X173 DA,S       10
W30X191 DA,S       10
W30X211 DA,S       10
W33X118 DA,S       10
W33X130 DA,S       10
W33X141 DA,S       10
W33X152 DA,S       10
W33X201 DA,S       10
W33X221 DA,S       10
W33X241 DA,S       10
W36X135 DA,S       10
W36X150 DA,S       10
W36X160 DA,S       10
W36X170 DA,S       10
W36X182 DA,S       10
W36X194 DA,S       10
W36X210 DA,S       10
W36X230 DA,S       10
W36X245 DA,S       10
W36X260 DA,S       10
W36X280 DA,S       10
W36X300 DA,S       10
S3X5.7  DA,S       10
S3X7.5  DA,S       10
S4X7.7  DA,S       10
S4X9.5  DA,S       10
S5X10   DA,S       10
S5X14.7 DA,S       10
S6X12.5 DA,S       10
S6X17.2 DA,S       10
S7X15.3 DA,S       10
S7X20   DA,S       10
S8X18.4 DA,S       10
S8X23   DA,S       10
S10X25. DA,S       10
S10X35  DA,S       10
S12X31. DA,S       10
S12X35  DA,S       10
S12X40. DA,S       10
S12X50  DA,S       10
S15X42. DA,S       10
S15X50  DA,S       10
S18X54. DA,S       10
S18X70  DA,S       10
S20X66  DA,S       10
S20X75  DA,S       10
S20X86  DA,S       10
S20X96  DA,S       10
S24X80  DA,S       10
S24X90  DA,S       10
S24X100 DA,S       10
S24X106 DA,S       10
S24X121 DA,S       10
M4X13   DA,S       10
M5X18.9 DA,S       10
M6X4.4  DA,S       10
M6X20   DA,S       10
M8X6.5  DA,S       10
M10X9   DA,S       10
M12X11. DA,S       10
M14X18  DA,S       10

Ángel,

Before going further with raw files, there is a 10 program files and a little bit more than 220 data files on the tape.
This is not very ROM friendly, are you still interested ?

Sylvain
Find all posts by this user
Quote this message in a reply
07-20-2016, 07:45 AM
Post: #11
RE: Still needed for the HP 41CL
(07-20-2016 03:10 AM)Sylvain Cote Wrote:  00041-90441 Structural Design HP-41 Solutions Book

I will scan the solutions book (92 pages) this weekend.

When I took the digital cassette to copy it, I realized that the pad was missing, fortunately, I was able to build another pad.
I used the Extended-IO MCOPY & MVERIFY to cloned the tape to a LIF file.
The LIF file is available HERE

Excellent but... how do I read that file??


(07-20-2016 03:10 AM)Sylvain Cote Wrote:  Before going further with raw files, there is a 10 program files and a little bit more than 220 data files on the tape. This is not very ROM friendly, are you still interested ?

You're right that format is very ROM-unfriendly... which makes it more interesting. Besides you may also find your tape doesn't work some day and will like to have a back up...

Here's an idea: you can load all those data files in the HEPAX RAM, add the programs to the same HEPAX page and then transfer the page as a ROM file to the PC using the CL serial link. That'll have it all ready to go, don't you think?

Let me know if that'll work for you.

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
07-20-2016, 11:52 AM
Post: #12
RE: Still needed for the HP 41CL
(07-20-2016 07:45 AM)Ángel Martin Wrote:  
(07-20-2016 03:10 AM)Sylvain Cote Wrote:  The LIF file is available HERE
Excellent but... how do I read that file??

Mix HW+SW -> HP-41 + HP-IL + PIL-Box + HP-82161A Emulator (ILPer, pyilper, ...)
or
Full emulation -> macOS: Genesis-41 (similar to the 41CL but with card reader, barcode reader, tape drive, printer, ... virtualized)

(07-20-2016 07:45 AM)Ángel Martin Wrote:  
(07-20-2016 03:10 AM)Sylvain Cote Wrote:  Before going further with raw files, there is a 10 program files and a little bit more than 220 data files on the tape. This is not very ROM friendly, are you still interested ?
You're right that format is very ROM-unfriendly... which makes it more interesting. Besides you may also find your tape doesn't work some day and will like to have a back up...

Here's an idea: you can load all those data files in the HEPAX RAM, add the programs to the same HEPAX page and then transfer the page as a ROM file to the PC using the CL serial link. That'll have it all ready to go, don't you think?

Yeah, I can do that, I will see what I can do this weekend.

Best regards,

Sylvain
Find all posts by this user
Quote this message in a reply
08-04-2016, 09:27 PM
Post: #13
RE: Still needed for the HP 41CL
Hello Angel,

Sorry for the delay but I had a lot of refreshing/learning to do on the multiple HP-41 tools and I lost a lot of time on them.

I have put on dropbox the 00041-90441 HP-41 Structural Design Solutions Book.zip file containing:

Code:
Manual File.: MAN\ -> 00041-90441 HP-41 Structural Design Solutions Book Manual
Tape File...: LIF\ -> 00041-90441 HP-41 Structural Design Solutions Book Tape
Source Files: SRC\ -> CIRCON;CONBM;MAG;MWALL;REBAR;RIGID;STLSOL;TILTUP;TRUSS;UL2CON
RAW Files...: RAW\ -> CIRCON;CONBM;MAG;MWALL;REBAR;RIGID;STLSOL;TILTUP;TRUSS;UL2CON
Data Files..: DAT\ -> programs that does the same as the 222 data files

About the DAT files, after several tryout I came up with the following ...
Because of the 64 fat entry limitation and the 222 data files, the easy path of 1 program per file was not possible.
What I came up with was to group the files using their first 3 characters and then with small parsers redirect the loading to local labels.
The global labels are: READRFR/FNFERR/M??/S??/W10/W12/W14/W16/W18/W21/W24/W27/W30/W33/W36/W4X/W6X/W8X

If you are ok with the following I could modify the original programs to support both the tape/disk data files and ROM data files by replacing the READR commands with the following code
Code:
SF 25
READR
FC?C 25
XEQ "READRFR"

Main entry point
Code:
LBL "READRFR"  ; Read Registers From ROM
ASTO 29        ; Save alpha [1..12]
ASHF
ASTO 28
CLA            ; Restore Alpha
ARCL 29        
ARCL 28
ATOX           ; Get Key[0]
X=0?
GTO 00         ; Error If alpha empty
77
X=Y?           
GTO "M??"      ; call M?? data loader if Key[0] .eq. M
RDN
83
X=Y?
GTO "S??"      ; call S?? data loader if Key[0] .eq. S
"   "          ; extracting the first three letters of the data loader
ARCL 29
ASTO X
CLA
ARCL X
ATOX
ATOX
ATOX
ASTO X         ; Get Key[0..2]
SF 25          ; set in case the data loader does not exist
GTO IND X      ; call W10/W12/W14/W16/W18/W21/W24/W27/W30/W33/W36/W4X/W6X/W8X data loader
LBL 00
LBL "FNFERR"   ; File Not Found Error
"FL NOT FOUND"
AVIEW
CLA
ARCL 29
ARCL 28
CF 23
PSE
END

Data loader sample 1 (W4X)
Code:
LBL "W4X"
RCL 29
ENTER^
"W4X13"
ASTO X
X#Y?
GTO "FNFERR"
3.83           ; Loading W4X13
STO 00
4.16
STO 01
4.06
STO 02
.345
STO 03
.28
STO 04
5.46
STO 05
1.72
STO 06
1.9
STO 07
1
STO 08
1.1
STO 09
END

Data loader sample 2 (W6X)
Code:
LBL "W6X"
RCL 29
ENTER^
"W6X15"
ASTO X
X=Y?
GTO 00
"W6X16"
ASTO X
X=Y?
GTO 01
"W6X20"
ASTO X
X=Y?
GTO 02
"W6X25"
ASTO X
X=Y?
GTO 03
GTO "FNFERR"
LBL 00         ; Loading W6X15
4.43
STO 00 
5.99
STO 01
5.99
STO 02
.26
STO 03
.23
STO 04
9.72
STO 05
2.56
STO 06
3.11
STO 07
1.46
STO 08
1.61
STO 09
RTN
LBL 01         ; Loading W6X16
4.74
STO 00
6.28
STO 01
4.03
STO 02
.405
STO 03
.26
STO 04
10.2
STO 05
2.6
STO 06
2.2
STO 07
.966
STO 08
1.08
STO 09
RTN
LBL 02         ; Loading W6X2
5.87
STO 00
6.2
STO 01
6.02
STO 02
.365
STO 03
.26
STO 04
13.4
STO 05
2.66
STO 06
4.41
STO 07
1.5
STO 08
1.64
STO 09
RTN
LBL 03         ; Loading W6X25
7.34
STO 00
6.38
STO 01
6.08
STO 02
.455
STO 03
.32
STO 04
16.7
STO 05
2.7
STO 06
5.61
STO 07
1.52
STO 08
1.66
STO 09
END

I am currently using the X-Functions ATOX to do the job of extracting characters but I could replace it with synthetic instructions.

If you are ok with the proposisiton I can do all the other data file loaders.

Best regards,

Sylvain
Find all posts by this user
Quote this message in a reply
08-05-2016, 04:39 AM (This post was last modified: 08-05-2016 11:43 AM by Ángel Martin.)
Post: #14
RE: Still needed for the HP 41CL
Well done Sylvain, a very thorough job, as usual.

Your idea of consolidating the data files in triples is as good as it gets, and will work going around the FAT limitation, so pls. go ahead and proceed as you suggest.

There'll be a few more data loader programs to write though... but considering the main programs sizes it may all fit into a 4k module, do you think? Well maybe not, there are a lot of data values in there to be entered.

I'll be preparing the module skeleton and adding the main programs while you work on the loaders. Great to work on a project with you again!

Best,
'AM


PS. Edited:- it's going to take at least 12k. Only putting the programs as-is in their current incarnation already takes 8k, with only 120 bytes left! So by the time all the data loaders and the mods to the program STLSOL are made it'll be another 4k for sure...

attached MOD file contains the unmodified programs... so far so good.


Attached File(s)
.zip  STRUCTSOLS.zip (Size: 8.3 KB / Downloads: 6)

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
08-05-2016, 12:39 PM
Post: #15
RE: Still needed for the HP 41CL
(08-05-2016 04:39 AM)Ángel Martin Wrote:  Your idea of consolidating the data files in triples is as good as it gets, and will work going around the FAT limitation, so pls. go ahead and proceed as you suggest.

Perfect, I will do the others data loader programs.

(08-05-2016 04:39 AM)Ángel Martin Wrote:  PS. Edited:- it's going to take at least 12k. Only putting the programs as-is in their current incarnation already takes 8k, with only 120 bytes left! So by the time all the data loaders and the mods to the program STLSOL are made it'll be another 4k for sure...

Man your fast! you live in a different time space continuum than me. 8-)

I like their idea of the extensible system they have implemented at the end of each programs by asking the next program to load and run.
I would like to keep that spirit even if the core programs & data are now in ROM.
It also mean that all programs will have to be modified, so 120 bytes it not a lot to work with, but it should be ok.

Best regards,

Sylvain
Find all posts by this user
Quote this message in a reply
08-05-2016, 01:42 PM
Post: #16
RE: Still needed for the HP 41CL
(08-05-2016 12:39 PM)Sylvain Cote Wrote:  Man your fast! you live in a different time space continuum than me. 8-)

I like their idea of the extensible system they have implemented at the end of each programs by asking the next program to load and run.
I would like to keep that spirit even if the core programs & data are now in ROM.
It also mean that all programs will have to be modified, so 120 bytes it not a lot to work with, but it should be ok.

The "Next Program" feature can be extracted into an independent routine called by all others, instead of residing everywhere.

However I've looked at the manual and those 222 data files may be a problem: assuming each of those requires 10 registers, we're talking of a humongous database of ~15k !! More than three ROMS just to put all that data in...

The alternative is MCODE tables, but such is a huge effort than I'm not really contemplating doing... not even in the space-time continuum I live in :-)

Or am I missing the point here?

Best,
'AM

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
08-05-2016, 02:52 PM
Post: #17
RE: Still needed for the HP 41CL
(08-05-2016 01:42 PM)Ángel Martin Wrote:  The "Next Program" feature can be extracted into an independent routine called by all others, instead of residing everywhere.

Yep, that is what I was looking at the optimization phase.

(08-05-2016 01:42 PM)Ángel Martin Wrote:  However I've looked at the manual and those 222 data files may be a problem: assuming each of those requires 10 registers, we're talking of a humongous database of ~15k !! More than three ROMS just to put all that data in...

I did not looked at that part yet, but you are right this is an issue, actually it is worst than that.
Using the raw version of the W6X who contains a parser and 4 data loader as a reference, the math gives the following:
512 bytes (RAW) / 4 (data loaders) = 128 bytes / 7 (bytes/register) = 18.29 -> rounded to 19 registers
19 registers (133 bytes, per data loader) x 222 data sets = 4218 registers or 29526 bytes.
Adding to the already used 8KB for program code we are looking at something like a 40KB ROM which does not fit into the 32KB directly available.
Even with all the tricks that can be applied, 4 x bank switching, a bank switcher function in MCODE, etc, we are still looking at a 2 slots solution for the 41CL or an MLDL (Clonix/NoV/MLDL2K/etc).

(08-05-2016 01:42 PM)Ángel Martin Wrote:  The alternative is MCODE tables, but such is a huge effort than I'm not really contemplating doing... not even in the space-time continuum I live in :-)
Common, the GREAT Angel not tackling a challenge! hi! hi! hi! just teasing here Wink

Taking a step back, we could offer an hybrid solution with the code in ROM and the data in an external IL storage (tape,disk,pilbox+soft)

Sylvain
Find all posts by this user
Quote this message in a reply
08-05-2016, 04:55 PM
Post: #18
RE: Still needed for the HP 41CL
(08-05-2016 02:52 PM)Sylvain Cote Wrote:  
(08-05-2016 01:42 PM)Ángel Martin Wrote:  However I've looked at the manual and those 222 data files may be a problem: assuming each of those requires 10 registers, we're talking of a humongous database of ~15k !! More than three ROMS just to put all that data in...

I did not looked at that part yet, but you are right this is an issue, actually it is worst than that.
Using the raw version of the W6X who contains a parser and 4 data loader as a reference, the math gives the following:
512 bytes (RAW) / 4 (data loaders) = 128 bytes / 7 (bytes/register) = 18.29 -> rounded to 19 registers
19 registers (133 bytes, per data loader) x 222 data sets = 4218 registers or 29526 bytes.
Adding to the already used 8KB for program code we are looking at something like a 40KB ROM which does not fit into the 32KB directly available.
Even with all the tricks that can be applied, 4 x bank switching, a bank switcher function in MCODE, etc, we are still looking at a 2 slots solution for the 41CL or an MLDL (Clonix/NoV/MLDL2K/etc).

Well maybe we're both wound around the axle here and it's not that bad: each data file won't take 10 registers, times 7 bytes = 70 bytes - but only as many bytes as needed, which it's a function of the constants values. Looking at those values the average is around 5-6 bytes per value, for a total of 50-60 bytes per data file...

Friday evening, my brain is fried so this may be complete BS... let's ruminate on it a little longer before we make a call one way or another.

"To live or die by your own sword one must first learn to wield it aptly."
Find all posts by this user
Quote this message in a reply
08-05-2016, 06:12 PM (This post was last modified: 08-05-2016 06:41 PM by Sylvain Cote.)
Post: #19
RE: Still needed for the HP 41CL
I did some other tests and I have some corrections to the numbers I had given.
First I took what Windows gave me and regenerating the raw files with HP41UC I realized the numbers were different so to be sure I have manually counted the bytes used from the binary raw file.

Some stats ...
W6X Total = Header + W6X15 (parser+loader) + W6X16 (parser+loader) + W6X20 (parser+loader) + W6X25 (parser+loader) + Trailer (-RTN+END)
W6X 265 bytes = (10 + 8) + (11 + 50) + (11 + 50) + (11 + 50) + (11 + 51) + (-2 + 4)

Header -> 18 bytes
Code:
LBL "W6X"
RCL 29
ENTER^
...
GTO "FNFERR"

W6X15 data parser -> 11 bytes
Code:
"W6X15"
ASTO X
X=Y?
GTO 00

W6X15 data loader -> 50 bytes
Code:
LBL 00
4.43
STO 00 
5.99
STO 01
5.99
STO 02
.26
STO 03
.23
STO 04
9.72
STO 05
2.56
STO 06
3.11
STO 07
1.46
STO 08
1.61
STO 09
END

There are 16 global labels [(16 x (Header + Trailer)) -> 16 x 20 bytes -> 320 bytes]
There are 222 data parser + loader [222 x ~(11 + 50 bytes) -> 222 x ~61 bytes -> 13542 bytes]
For a total of 13862 bytes so let say 14KB for the data loader part which is a little less than half of what I wrongly calculated before.

Sylvain

edit 1 : typo

edit 2: There are 24 x 5 chr name, 103 x 6 chr name, 95 x 7 chr name that translate to the following:
222 data parser + loader [(24 x ~(11 + 50 bytes)) + (103 x ~(12 + 50 bytes)) + (95 x ~(13 + 50 bytes))] -> 1464 + 6386 + 5985 -> 13835 bytes
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 8 Guest(s)