Post Reply 
71B EPROM Programming
02-01-2018, 03:43 AM
Post: #21
RE: 71B EPROM Programming
(02-01-2018 02:29 AM)polbit Wrote:  Am I missing any essential software?

TEST64KE LEX

A LEX file is included on each EPROM shipped from CMT that can be loaded into your ROM image if you desire and if there is room available. TEST32KE or TEST64KE executes by typing ROMTST and pressing RETURN. ROMTST returns ROM OK if the ROM is OK or ROM BAD if the checksum does not add up to "1". If more than one ROM is inserted into the HP-71 with this file loaded, only the first ROM searched with this function will be tested.

117 bytes
Find all posts by this user
Quote this message in a reply
02-02-2018, 02:53 AM (This post was last modified: 02-02-2018 03:00 AM by Mark Hardman.)
Post: #22
RE: 71B EPROM Programming
Thank you everyone for the deluge of suggestions. I have six 71Bs--two with the 1BBBB ROM--so the SHOWPORT LEX would still be useful. I'm thinking that I cannot go wrong with Joe's LEX collection (sans JPCF01); adding in the FRAM71 Toolkit, KEYBOARD and DISLEX still leaves more than 17K free. I'm still digging through Joe's wonderfully well organized site for more ideas, but will likely not be able fill 32K completely. Adding TEST32KE LEX uses another 117 bytes (every little bit helps). Maybe there are some BAS files I could add.

On another subject. I will mainly use the JPC ROM in my 2CDCC that has the (sadly underused) FRAM71 installed. Is there anything useful that could be added to the ML for supporting that configuration?

What a wonderful time to be alive!

Ceci n'est pas une signature.
Find all posts by this user
Quote this message in a reply
02-02-2018, 03:05 AM
Post: #23
RE: 71B EPROM Programming
(02-02-2018 02:53 AM)Mark Hardman Wrote:  On another subject. I will mainly use the JPC ROM in my 2CDCC that has the (sadly underused) FRAM71 installed. Is there anything useful that could be added to the ML for supporting that configuration?

Absolutely! Some cool key assignments courtesy of Bob.

DEF KEY ‘fE’,’PEEK$(“”,)’&CHR$(8)&CHR$(8)&CHR$(8)&CHR$(27)&”N”;
DEF KEY ‘fO’,’POKE “”,””’&CHR$(8)&CHR$(8)&CHR$(8)&CHR$(8)&CHR$(27)&”N”;

FRAM71 users may wish to add "2C000" into the assignment.

Dave
Find all posts by this user
Quote this message in a reply
02-02-2018, 07:27 PM (This post was last modified: 02-04-2018 03:10 AM by rprosperi.)
Post: #24
RE: 71B EPROM Programming
(02-02-2018 02:53 AM)Mark Hardman Wrote:  I'm still digging through Joe's wonderfully well organized site for more ideas, but will likely not be able fill 32K completely. Adding TEST32KE LEX uses another 117 bytes (every little bit helps). Maybe there are some BAS files I could add.

Too much memory space to fill is NEVER acceptable....

Here are some suggestions:

1. CURLEX LEX file (109 bytes). Advances cursor by 1 'screen full' at a time when pressing [g] [->], rather than all the way to the end. Avail on Joe's LEX page.

2. SYSLEX LEX file (643 bytes). Lets you access a variety of system settings, such as command stack depth, DELAY settings, etc.; very useful though some of these are also accessible via JPC ROM commands. Avail on Joe's LEX page.

3. FILECOPY - Short BASIC program that lets you copy files between 71Bs connected together via HP-IL. See here.

4. MCOPY LEX file 932 bytes) - Lets you copy complete disk/tape/virtual disk to another with a single command, e.g. COPY :TAPE(1) TO :TAPE(2). Note this LEX does not add any new keywords, it extends the built-in COPY command via poll handler.

5. ULIB52 - A collection of nearly every User Community LEX files which HP issued LEX IDs for. Although somewhat large (6KB) it provides 54 useful commands for all kinds of day-to-day 71B use/programming, etc. This collection was carefully reassembled by JFG over the years, see the full description here, a bit over halfway down. Strongly recommended if you have the room.

Note that if you do include this, you can omit some of the others, e.g. ULIB52 contains all the same commands (with identical LEX IDs) as STRINGLX.

6. KEYBOARD LEX file (Rev C, 1401 bytes) - As Dave mentioned in another thread, this file fixes bugs in the version included in the FORTH/Assembler ROM, which makes a difference when using remote terminals such as pyILPer provides. But make sure the EPROM that contains this LEX is in a lower PORT than the FORTH ROM. See link 2 posts down.

7. PLEX BASIC Program - Prints out all the LEX files installed, and all the commands within each LEX file (a super HELPLX) including argument types, LEX IDs, etc. which is very helpful when writing BASIC programs and you need the exact command spelling, argument order, etc. Available in the OLDP archives.

There are many equivalent programs available as well, SYSCAT, SYSTCAT, and others. Check them out, you may prefer the output style of one over another.

And some things to NOT include in the EPROM:

A. RPN BIN file - RPN Calculator binary program (by C. Capener). Although very tempting to include this so one always has an RPN calculator handy, it uses the poor technique of writing data into itself, and therefore is not compatible with read-only storage.

Note that the RPN BIN program came with RPNLEX (172 bytes) which provided a means to access the RPN stack registers from BASIC programs.

There is also another LEX file (by John Baker, one of the real 71 LEX gurus), also called RPNLEX (much larger), which provides a different RPN Calculator, which likely could be included, but as I use the BIN program (stored in an IRAM) I'm not real familiar with this 2nd one, and am not sure what it provides. Available in the OLDP archives.

B. TAPECATB BASIC program (by Tapani Tarvainen, another of the 71 masters) - excellent program (from many perspectives - useful, coding techniques, etc.) for creating detailed CATalogs of HP-IL media, that include details such as starting/ending sectors, actual byte counts, etc. The output format for this utility is so useful, it has been copied many times by most similar programs since it appeared. Available in the OLDP archives.

Although this is a must-have program, the storage device it examines and reports on is hard-coded and you will, sooner or later, need to use another.

One option is to include it in EPROM, and if/when you need to change drives, just copy it to RAM, change the line (1250) and proceed.

Another option is to modify it to ask for the target drive. (Been on the to-do list for about 10 years...)

Hope this suggestions help, feel free to ask about them if unclear.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
02-04-2018, 01:50 AM
Post: #25
RE: 71B EPROM Programming
Bob, thank you, this is great!

I cannot seem to find the Rev C of KEYBOARD LEX file. Is it somewhere online? I finally got my Forth/Assembler ROM (and 128K RAM, Thanks Paul!) so this will definitely come in handy.
Find all posts by this user
Quote this message in a reply
02-04-2018, 03:06 AM
Post: #26
RE: 71B EPROM Programming
(02-04-2018 01:50 AM)polbit Wrote:  Bob, thank you, this is great!

I cannot seem to find the Rev C of KEYBOARD LEX file. Is it somewhere online? I finally got my Forth/Assembler ROM (and 128K RAM, Thanks Paul!) so this will definitely come in handy.

I thought I had shared this file in the past, but I can't find it, so here's a link where you can download a .LIF file with Rev C of the KEYBOARD LEX file.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
02-04-2018, 03:20 AM (This post was last modified: 02-04-2018 03:21 AM by Paul Berger (Canada).)
Post: #27
RE: 71B EPROM Programming
(02-02-2018 07:27 PM)rprosperi Wrote:  6. KEYBOARD LEX file (Rev C, 1401 bytes) - As Dave mentioned in another thread, this file fixes bugs in the version included in the FORTH/Assembler ROM, which makes a difference when using remote terminals such as pyILPer provides. But make sure the EPROM that contains this LEX is in a lower PORT than the FORTH ROM. See link 2 posts down.
For those of us that are running FORTH from an image stored on a FRAM has anyone thought to update the soft FORTH image with this updated LEX? If not I will do it as I am in the middle of reconfiguring the FRAM one of my 71s.
Find all posts by this user
Quote this message in a reply
02-04-2018, 05:41 AM (This post was last modified: 02-04-2018 07:05 PM by Dave Frederickson.)
Post: #28
RE: 71B EPROM Programming
(02-04-2018 03:20 AM)Paul Berger (Canada) Wrote:  
(02-02-2018 07:27 PM)rprosperi Wrote:  6. KEYBOARD LEX file (Rev C, 1401 bytes) - As Dave mentioned in another thread, this file fixes bugs in the version included in the FORTH/Assembler ROM, which makes a difference when using remote terminals such as pyILPer provides. But make sure the EPROM that contains this LEX is in a lower PORT than the FORTH ROM. See link 2 posts down.
For those of us that are running FORTH from an image stored on a FRAM has anyone thought to update the soft FORTH image with this updated LEX? If not I will do it as I am in the middle of reconfiguring the FRAM one of my 71s.

We've patched the hard-coded part of the ROM, why not the soft-coded part. I should update the FRAM71 Toolkit as well.
Find all posts by this user
Quote this message in a reply
02-04-2018, 04:26 PM
Post: #29
RE: 71B EPROM Programming
I should have mentioned, there's some file overhead that needs to be taken into account.

Estimating EPROM Size
An approximation to the amount of memory required for an EPROM
module is done by multiplying the number of files by 25 bytes
(for the file headers), adding the data lengths (from CAT) of all
the files, and adding an additional 11 bytes for EPROM module
overhead.
Find all posts by this user
Quote this message in a reply
09-25-2018, 08:54 AM
Post: #30
RE: 71B EPROM Programming
Hi Bob and all 71 Friends

I am trying to find the PLEX you mention below - it is helpful to see what LEX-Words are in a file.

Do(es) you (anyone) know where to find it?

Best regards, KimH



(02-02-2018 07:27 PM)rprosperi Wrote:  
(02-02-2018 02:53 AM)Mark Hardman Wrote:  I'm still digging through Joe's wonderfully well organized site for more ideas, but will likely not be able fill 32K completely. Adding TEST32KE LEX uses another 117 bytes (every little bit helps). Maybe there are some BAS files I could add.

Too much memory space to fill is NEVER acceptable....

Here are some suggestions:

1. CURLEX LEX file (109 bytes). Advances cursor by 1 'screen full' at a time when pressing [g] [->], rather than all the way to the end. Avail on Joe's LEX page.

2. SYSLEX LEX file (643 bytes). Lets you access a variety of system settings, such as command stack depth, DELAY settings, etc.; very useful though some of these are also accessible via JPC ROM commands. Avail on Joe's LEX page.

3. FILECOPY - Short BASIC program that lets you copy files between 71Bs connected together via HP-IL. See here.

4. MCOPY LEX file 932 bytes) - Lets you copy complete disk/tape/virtual disk to another with a single command, e.g. COPY :TAPE(1) TO :TAPE(2). Note this LEX does not add any new keywords, it extends the built-in COPY command via poll handler.

5. ULIB52 - A collection of nearly every User Community LEX files which HP issued LEX IDs for. Although somewhat large (6KB) it provides 54 useful commands for all kinds of day-to-day 71B use/programming, etc. This collection was carefully reassembled by JFG over the years, see the full description here, a bit over halfway down. Strongly recommended if you have the room.

Note that if you do include this, you can omit some of the others, e.g. ULIB52 contains all the same commands (with identical LEX IDs) as STRINGLX.

6. KEYBOARD LEX file (Rev C, 1401 bytes) - As Dave mentioned in another thread, this file fixes bugs in the version included in the FORTH/Assembler ROM, which makes a difference when using remote terminals such as pyILPer provides. But make sure the EPROM that contains this LEX is in a lower PORT than the FORTH ROM. See link 2 posts down.

7. PLEX BASIC Program - Prints out all the LEX files installed, and all the commands within each LEX file (a super HELPLX) including argument types, LEX IDs, etc. which is very helpful when writing BASIC programs and you need the exact command spelling, argument order, etc. Available in the OLDP archives.

There are many equivalent programs available as well, SYSCAT, SYSTCAT, and others. Check them out, you may prefer the output style of one over another.

And some things to NOT include in the EPROM:

A. RPN BIN file - RPN Calculator binary program (by C. Capener). Although very tempting to include this so one always has an RPN calculator handy, it uses the poor technique of writing data into itself, and therefore is not compatible with read-only storage.

Note that the RPN BIN program came with RPNLEX (172 bytes) which provided a means to access the RPN stack registers from BASIC programs.

There is also another LEX file (by John Baker, one of the real 71 LEX gurus), also called RPNLEX (much larger), which provides a different RPN Calculator, which likely could be included, but as I use the BIN program (stored in an IRAM) I'm not real familiar with this 2nd one, and am not sure what it provides. Available in the OLDP archives.

B. TAPECATB BASIC program (by Tapani Tarvainen, another of the 71 masters) - excellent program (from many perspectives - useful, coding techniques, etc.) for creating detailed CATalogs of HP-IL media, that include details such as starting/ending sectors, actual byte counts, etc. The output format for this utility is so useful, it has been copied many times by most similar programs since it appeared. Available in the OLDP archives.

Although this is a must-have program, the storage device it examines and reports on is hard-coded and you will, sooner or later, need to use another.

One option is to include it in EPROM, and if/when you need to change drives, just copy it to RAM, change the line (1250) and proceed.

Another option is to modify it to ask for the target drive. (Been on the to-do list for about 10 years...)

Hope this suggestions help, feel free to ask about them if unclear.
Find all posts by this user
Quote this message in a reply
09-25-2018, 01:39 PM
Post: #31
RE: 71B EPROM Programming
(09-25-2018 08:54 AM)KimH Wrote:  Hi Bob and all 71 Friends

I am trying to find the PLEX you mention below - it is helpful to see what LEX-Words are in a file.

Do(es) you (anyone) know where to find it?

Best regards, KimH

That file, as well as most of the others (noted as in the OLDP) can be found in the Online LIF Disk Project, created by Joe Horn. Here is a link to the post the describes it and includes a link to download it:

http://www.hpmuseum.org/forum/thread-2520.html

You will need a PIL-Box or some other means to copy the PLEX file to the 71B; if you don't have any means to do that, I can post a listing of the file, but it's a lot of typing.

HTH

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
09-27-2018, 06:58 AM
Post: #32
RE: 71B EPROM Programming
Hi Bob,

thanks a lot for this - amazing collection!!

Thanks to Joe Horn for making this available!

/KimH


(09-25-2018 01:39 PM)rprosperi Wrote:  
(09-25-2018 08:54 AM)KimH Wrote:  Hi Bob and all 71 Friends

I am trying to find the PLEX you mention below - it is helpful to see what LEX-Words are in a file.

Do(es) you (anyone) know where to find it?

Best regards, KimH

That file, as well as most of the others (noted as in the OLDP) can be found in the Online LIF Disk Project, created by Joe Horn. Here is a link to the post the describes it and includes a link to download it:

http://www.hpmuseum.org/forum/thread-2520.html

You will need a PIL-Box or some other means to copy the PLEX file to the 71B; if you don't have any means to do that, I can post a listing of the file, but it's a lot of typing.

HTH
Find all posts by this user
Quote this message in a reply
Post Reply 




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