HP Forums
HP 75 Cat? - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: General Forum (/forum-4.html)
+--- Thread: HP 75 Cat? (/thread-7899.html)

Pages: 1 2


HP 75 Cat? - HP-Collection - 03-07-2017 09:10 PM

Today is the start of the HP 75 software database you can download in future on my website.
I have some CMT EPROMS for the HP 75 I do not know the content. Is there a command to show a sort of catalog like the CAT2 command on the HP-41?


RE: HP 75 Cat? - rprosperi - 03-07-2017 11:35 PM

(03-07-2017 09:10 PM)HP-Collection Wrote:  Today is the start of the HP 75 software database you can download in future on my website.
I have some CMT EPROMS for the HP 75 I do not know the content. Is there a command to show a sort of catalog like the CAT2 command on the HP-41?

There is no built-in command, however the HELP LEX file will produce a list of all keywords in the machine, which includes built-in OS commands, LEX files and ROMs.

To find out which keywords there are in a new ROM (or EPROM, or new LEX file), do this:

1. Install the HELP LEX file
2. Type HELP [RTN]
3. Capture the output (print hard copy or capture log using IL-Per or pyILPer witht he PIL-Box). Note: the output is many pages long, even for an empty HP-75.
4. Power-off, Install the new ROM (or EPROM or LEX file), power-on
5. Type HELP [RTN] again
6. Capture this 2nd output
7. Compare the output lists

It can be tedious if you are comparing printed copies, but is easy if you are using the PIL-Box as you can use a text editor to compare the files and highlight the differences.

Also, the HELP command output describes the argument types for each keyword, so could help you to figure out what they do.

See this article about the HELP LEX file (Message #7), with examples and links:
http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/archv015.cgi?read=76286


RE: HP 75 Cat? - Dave Frederickson - 03-07-2017 11:51 PM

(03-07-2017 11:35 PM)rprosperi Wrote:  1. Install the HELP LEX file

HELP LEX can be found on the HPCC88 LIF disc image in Joe Horn's O.L.D. project.
http://hhuc.us/2014/files/Speakers/08,09%20Joseph%20Horn/Online%20LIF%20Disk%20Project/SWAP/

Here's the doc.
http://hhuc.us/2014/files/Speakers/08,09%20Joseph%20Horn/Online%20LIF%20Disk%20Project/SWAP/HPCC88/HELPDOC.75.txt


RE: HP 75 Cat? - rprosperi - 03-08-2017 12:09 AM

(03-07-2017 11:51 PM)Dave Frederickson Wrote:  HELP LEX can be found ...

Thanks, I was just looking for the links to add. You're quick!


RE: HP 75 Cat? - Dave Frederickson - 03-08-2017 12:53 AM

(03-08-2017 12:09 AM)rprosperi Wrote:  
(03-07-2017 11:51 PM)Dave Frederickson Wrote:  HELP LEX can be found ...

Thanks, I was just looking for the links to add. You're quick!

No, I was already drafting a reply to Matthias' question but you beat me to it. Smile


RE: HP 75 Cat? - J-F Garnier - 03-08-2017 01:45 PM

(03-07-2017 11:35 PM)rprosperi Wrote:  
(03-07-2017 09:10 PM)HP-Collection Wrote:  I have some CMT EPROMS for the HP 75 I do not know the content. Is there a command to show a sort of catalog like the CAT2 command on the HP-41?
There is no built-in command, however the HELP LEX file will produce a list of all keywords in the machine, which includes built-in OS commands, LEX files and ROMs.

This will give information on the LEX files included in the EPROM module, but many custom application modules are made mainly of Basic programs.

The built-in CAT command can't access the content of modules, but the PODPMS1C LEX (on the chhu01.dat image) extents the CAT to ROM ports.

Matthias, the following may look too complex for what you need (it's not actually), but I will document anyway as it may interest other HP75 owners.

Procedure (using the PIL-Box and ILPer):
Use the chhu01.dat file as HDRIVE2 image file.
Plug the EPROM module to be scanned in the left port of the HP75.
On the HP75, first assign the IO identifiers. With ILPer, there will be four, assign them to P1, M1, M2 and I1:
>assign io
Device # 1='Tongue1' (sorry for the smiley, don't know how to disable it but it's ":p1"
Device # 2=':m1'
Device # 3=':m2'
Device # 4=':i1'
then declare the display is device (not mandatory, but it makes the process easier to follow on ILPer):
>display is ":p1"

The following is a capture of the ILPer window, showing the commands applied to one of my CMT EPROM module:

Load the PODPMS1C LEX:
>copy "podpms1c:m2" to "podpms1c"
>cat all
Name Type Len Time Date
PODPMS1C L 2552 00:36 04/07/85
workfile B 0 00:00 01/01/00

Now, do cat ":rome", ":romf", "romg" to ":romh" to explore the 4 8KB banks of the EPROM moduile. Some maybe empty ("bank not initialized"). Press the down arrow to go through each catalog.
>cat ":rome"
ERROR: bank not initialized
>
>cat ":romf"
ERROR: bank not initialized
>
>cat ":romg"
Name Type Len Time Date
RUNL PL 150 00:53 01/01/00
LCROM1 B 7570 22:20 04/19/86
>
>cat ":romh"
Name Type Len Time Date
LCROM2 B 8102 19:08 04/15/86
>
In this particular CMT module, only two banks are used. There is a small LEX providing a support function, and two 8KB Basic programs. It's actually a software to manage video tape rental. Not a big interest.

Now, if you want, you can make ROM images of each bank and save them on HDRIVE1:

>copy "all:romg" to "rom1g"
>copy "all:romh" to "rom1h"
>cat all
Name Type Len Time Date
ROM1H R 8160 00:09 01/01/00
ROM1G R 7761 00:09 01/01/00
PODPMS1C L 2552 00:36 04/07/85
workfile B 0 00:00 01/01/00
>
>copy "rom1g" to "rom1g:m1"
>copy "rom1h" to "rom1h:m1"


J-F


RE: HP 75 Cat? - rprosperi - 03-08-2017 02:34 PM

(03-08-2017 01:45 PM)J-F Garnier Wrote:  The built-in CAT command can't access the content of modules, but the PODPMS1C LEX (on the chhu01.dat image) extents the CAT to ROM ports...

Thanks for documenting this J-F, it's news to me too.

Something new and interesting to check out with the new EMU75 emulator!

Once a ROM "image" file is created this way, can that image simpy be copied into a PMS bank and used directly? If so, this is quite similar to the 71B ROMCOPY procedure.

Thanks!


RE: HP 75 Cat? - charger73 - 03-08-2017 02:42 PM

Quote: but I will document anyway as it may interest other HP75 owners.

oh yes, this IS very interesting.


RE: HP 75 Cat? - J-F Garnier - 03-08-2017 04:18 PM

(03-08-2017 02:34 PM)rprosperi Wrote:  Thanks for documenting this J-F, it's news to me too.

(03-08-2017 02:42 PM)charger73 Wrote:  oh yes, this IS very interesting.

A little background: the PODPMS1C LEX is a hacked version of the official PMSCMDS LEX from HP to manage the PMS. It allows to explore the contents of ROM modules, instead of creating new modules with the PMS.
It is mentioned in the "swapprop" text file in chhu03.lif archive :
"Bob Bradley and John R. Baker deserve a special honorable mention:
Bob contributed an incredible 57 files that take us several giant step forwards
into the such fields as HP-75 machine language & HP-75/71 FORTH.
Among other gems, Bob provides a "lobotomized" version of the "PMSCMDS" file
that allows you to copy ANY HP-75 ROM to RAM... Also, PODPMS1C supports
up to 96K of Plug-in Module Simulator expansion!"


And it's quite new for me too and is the result of recent investigations, as I'm currently have a new interest for the HP75 :-)

J-F


RE: HP 75 Cat? - HP-Collection - 03-08-2017 07:19 PM

(03-08-2017 01:45 PM)J-F Garnier Wrote:  Matthias, the following may look too complex for what you need (it's not actually), but I will document anyway as it may interest other HP75 owners.

Hi JF
Thanks a lot for the extended description - you know what I need Wink
I will try your procedure first on your Emu75 and after success with real machines.

Matthias


RE: HP 75 Cat? - J-F Garnier - 03-08-2017 08:07 PM

(03-08-2017 07:19 PM)HP-Collection Wrote:  I will try your procedure first on your Emu75 and after success with real machines.
(03-08-2017 02:34 PM)rprosperi Wrote:  Something new and interesting to check out with the new EMU75 emulator!

This procedure will not work exactly as described on my Emu75, because the port numbering is not managed in the same way. The cat ':rome' ...':romh' will have to be changed for other identifiers between ':roma' and ':romp' , just experiment to find out the right ones !
[hint: for the first plug-in ROM in the emu75.ini file: ':romm', ':rome', ':romi', ':roma' ]

Since Emu75 has been mentioned in this thread, here is where my test version can be found: Emu75/DOS.

(03-08-2017 02:34 PM)rprosperi Wrote:  Once a ROM "image" file is created this way, can that image simpy be copied into a PMS bank and used directly? If so, this is quite similar to the 71B ROMCOPY procedure.

Sure, using the regular PMSCMDS LEX, see the PMS manual.

J-F


RE: HP 75 Cat? - rprosperi - 03-08-2017 11:12 PM

(03-08-2017 08:07 PM)J-F Garnier Wrote:  This procedure will not work exactly as described on my Emu75, because the port numbering is not managed in the same way. The cat ':rome' ...':romh' will have to be changed for other identifiers between ':roma' and ':romp' , just experiment to find out the right ones !
[hint: for the first plug-in ROM in the emu75.ini file: ':romm', ':rome', ':romi', ':roma' ]

For those playing along at home, in addition to extending the CAT command, these are the keywords in the PODPMSC1 LEX file, though since it was hacked from the original PODCMDS LEX file, it's not yet clear if/how most work, what inputs and outputs are, etc.:

Code:
=========================================
20483 a  STMT: BUILD           PODPMSC1 LEX file
20483 a  STMT: PRIVATE
20483 a  FNC#: CHECKSUM($)
20483 a  FNC#: ROMAVAIL($)
20483 a  FNC#: ROMID($)e.g.    ROMID$(":romf") rtns decimal ID of the rom in bank f
20483 a  FNC#: ROMSIZE($)      ROMSIZE(":romf") produces "ERROR" on EMU75
20483 a  FNC#: PMSREV          PMSREV returns 2 on EMU75, even when PMS is not enabled in the .ini file
=========================================

With only the I/O ROM in Port1, results (in EMU75) are:

:rome
iorom2 L 8168 bytes

:romi
iorom3 L 8164

:romm
iorom1 L 8166

Adding VisiCalc into Port-2 adds:

:roma
vcassem1 PL 8169

:romf
vcassem3 PL 4802
vcbasic3 PB 3289

:romj
vcbasic4 PB 8067

:romn
vcassem2 PL 8169

Quite a non-intuitive rom-mapping scheme. Seems like there are 4 sets of 4 rom banks, though they appear to be loaded/assigned in some unexpected order. I will check further with a real 75C. Why does EMU75 allocate ROMs in different order than a real 75, does'n that mean you had to re-write a lot of code to do the ROM mgmt?

Also, it appears that the PMSCMDS and PODPMS1C LEX files cannot be resident at the same time in EMU75. I installed the latter (with the former already loaded), and upon restart of EMU75, I get an "ERROR" display and the LCD display output is disabled. It took a few moments to realize the LEX files conflict, but upon PURGEing PMSCMDS, EMU75 normal behavior was restored. Is this an EMU75 issue or does the conflict also exist in real h/w (I don't have a PMS yet)? I'd guess that when Bob Bradley (or whoever) hacked the original LEX, perhaps he didn't change the LEX ID.

[Update 1]

On a real 75D (rom aaaaaa) with a VisiCalc ROM in Port1, results are:

:rome
vcassem3 PL (same files sizes as above)
vcbasic3 BL

:romf
vcbasic4 PB

:romg
vcassem1 PL

:romh
vcassem2 PL

So, on a real 75, it appears the ROM banks are be allocated like this:

PMS:
4 x 8KB RAM/ROMs, :roma, - :romd

Port1:
4 x 8KB ROMs, :rome - :romh

Port2:
4 x 8KB ROMs, :romi - :roml

Port3L
4 x 8KB ROMs, :romm - :romp

Will update this after checking out a 75 in a POD (which plugs-in to Port3).

Anyone - Please correct the above if you know more/better

Thanks


RE: HP 75 Cat? - HP-Collection - 03-09-2017 07:23 AM

(03-08-2017 08:07 PM)J-F Garnier Wrote:  [hint: for the first plug-in ROM in the emu75.ini file: ':romm', ':rome', ':romi', ':roma' ]

So, this is not the first port, but the first page of each port (3-0)


RE: HP 75 Cat? - J-F Garnier - 03-09-2017 07:59 AM

(03-08-2017 11:12 PM)rprosperi Wrote:  Quite a non-intuitive rom-mapping scheme. Seems like there are 4 sets of 4 rom banks, though they appear to be loaded/assigned in some unexpected order. I will check further with a real 75C. Why does EMU75 allocate ROMs in different order than a real 75, does'n that mean you had to re-write a lot of code to do the ROM mgmt?
The ROM-enable slot numbers vs the physical ports is a bit strange (non-consecutive slots), the PODPMS1C LEX translates the roma-romp identifiers to the slots.
In my emu75 test version, I used a simpler slot scheme, it doesn't hurt anything, but makes the PODPMS1C translation ineffective. This may change in final emu75 version.

Quote:Also, it appears that the PMSCMDS and PODPMS1C LEX files cannot be resident at the same time in EMU75. I installed the latter (with the former already loaded), and upon restart of EMU75, I get an "ERROR" display and the LCD display output is disabled. It took a few moments to realize the LEX files conflict, but upon PURGEing PMSCMDS, EMU75 normal behavior was restored. Is this an EMU75 issue or does the conflict also exist in real h/w (I don't have a PMS yet)? I'd guess that when Bob Bradley (or whoever) hacked the original LEX, perhaps he didn't change the LEX ID.
Having 2 LEXs with same LEX numbers will for sure confuse the HP75 OS. Don't do that!

Quote:So, on a real 75, it appears the ROM banks are be allocated like this:

PMS:
4 x 8KB RAM/ROMs, :roma, - :romd

Port1:
4 x 8KB ROMs, :rome - :romh

Port2:
4 x 8KB ROMs, :romi - :roml

Port3L
4 x 8KB ROMs, :romm - :romp

Will update this after checking out a 75 in a POD (which plugs-in to Port3).

Anyone - Please correct the above if you know more/better

On the real HP75, the roma-romd identifiers of PODPMS1C select the internal ROM slots (altrom, melrom)
This is only true for PODPMS1C, this is the one big part of the patch. In the regular PMSCMDS LEX, the roma-roml select the PMS RAM banks only (so only roma-romb for one real PMS in any port).

For more details, you can refer on the HP75 group to the documents:
- Faline source code: source code of the PMSCMDS LEX,
- ROM_mapping_search Documents the ROM slot addresses, and the search orders for the system (to be read at least 3 times to fully understand it :-),
- and of course the PMS manual.

J-F


RE: HP 75 Cat? - HP-Collection - 03-09-2017 09:01 AM

Does somenone has a OCS Text module? I do not find any infos except the rom image.
Also infos for the "Visiplot", the "Address" and the "Write39" (yea, there is one on ebay) module are welcome.
Noone hast the rom image of the "Surveying Pac" and the "Data Communications Pac"?

How can I build a .bin of the Forth75 finles?

still trying to do a helpfull job for you
Matthias


RE: HP 75 Cat? - Paul Berger (Canada) - 03-09-2017 01:20 PM

(03-09-2017 09:01 AM)HP-Collection Wrote:  Does somenone has a OCS Text module? I do not find any infos except the rom image.
Also infos for the "Visiplot", the "Address" and the "Write39" (yea, there is one on ebay) module are welcome.
Noone hast the rom image of the "Surveying Pac" and the "Data Communications Pac"?

How can I build a .bin of the Forth75 finles?

still trying to do a helpfull job for you
Matthias

I think that OCS Text is actually "ODS Data Utilities" the OCS I believe came from a typo I made and the text came from the way I named the files when dumping them. On the hp75 group on groups.io M. Garnier says "It was an application-specific ROM, too specific for general use:" I have the ROM and have looked at the keywords but have not spent and time trying to figure out what they do. There is no known documentation for the ROM.

Paul.


RE: HP 75 Cat? - HP-Collection - 03-09-2017 01:37 PM

(03-09-2017 01:20 PM)Paul Berger (Canada) Wrote:  I think that OCS Text is actually "ODS Data Utilities" the OCS I believe came from a typo I made and the text came from the way I named the files when dumping them. On the hp75 group on groups.io M. Garnier says "It was an application-specific ROM, too specific for general use:" I have the ROM and have looked at the keywords but have not spent and time trying to figure out what they do. There is no known documentation for the ROM.

Paul.

Can you please verify? The OCS_Text.bin reports CAT "MODEM/TAPE/BOOT/HEADERS". Is this *really* identical to your rom module?


RE: HP 75 Cat? - J-F Garnier - 03-09-2017 04:02 PM

(03-09-2017 01:37 PM)HP-Collection Wrote:  
(03-09-2017 01:20 PM)Paul Berger (Canada) Wrote:  I think that OCS Text is actually "ODS Data Utilities" the OCS I believe came from a typo I made and the text came from the way I named the files when dumping them.
Can you please verify? The OCS_Text.bin reports CAT "MODEM/TAPE/BOOT/HEADERS". Is this *really* identical to your rom module?

I've a ODS ROM image from the actual module (that I don't have anymore :-), and I checked that it is 100% identical to the OCS image Paul did.

>cat ":romm"
Name Type Len Time Date
LOGLEX PL 4619 10:24 10/09/84
MODEM B 1151 14:19 10/13/84
TAPE B 918 14:19 10/13/84
BOOT B 495 14:19 10/13/84
HEADERS B 914 13:42 10/11/84

J-F


RE: HP 75 Cat? - HP-Collection - 03-09-2017 05:28 PM

Hi Jean-Francois

Thanks for checking. So, I do not have to do it anymore..... I'm now looking for the following informations (marked red) - help is always welcome.....

HP75C Software list - BETA


RE: HP 75 Cat? - Dave Frederickson - 03-09-2017 08:14 PM

(03-09-2017 05:28 PM)HP-Collection Wrote:  Hi Jean-Francois

Thanks for checking. So, I do not have to do it anymore..... I'm now looking for the following informations (marked red) - help is always welcome.....

HP75C Software list - BETA

Please add:
Diagnostic ROM, 00075-60903
Diagnostic ROM Overlay, 7121-4125
Bar Code Module, 82725A
Math ROM, 00075-15015
I/O ROM, 00075-15001

Solution Books:
Electronics, 75-13008
Finance, 75-13009
Games I, 75-13006
Games II, 75-13007
I/O Utilities, 75-13013
Math I, 75-13003
Math II, 75-13004
Math III, 75-13005
Real Estate, 75-13010
Statistics, 75-13011
Test Statistics, 75-13012
Media Duplication, 75-13015
Graphics, 75-13016

FWIW, 82726A (WRITE39) is a blank custom ROM.