HP-41C Extended Functions - 4K module?
|
03-01-2018, 04:16 PM
Post: #1
|
|||
|
|||
HP-41C Extended Functions - 4K module?
Is the HP-41C Extended Functions module a 4K module? Is it bankswitched? I checked the very good reference at http://calc.fjk.ch/db/hp41mod.php, but the table column that specifies module size is blank for all versions of this module.
It only has one ROM ID (25) which I expect means that it is not a conventional 8K module occupying two 4K I/O address spaces. I think the HP-41CX was the first commercial application of bankswitching, and the Extended Functions Rom was introduced about a year and a half before the HP-41CX. I thought that the HP-41 Advantage Module (1985?) was the first commercially available bankswitched module from HP, and if so that would indicate that the Extended Functions module is not bankswitched and fits fully in a 4K page. When the Time Module and the Extended Functions Module were built into the CX, they added the CX Time and Extended Functions, and as such, the HP-41CX was advertised to have and additional 12K ROM over the HP-41CV (4K for Time, 4K for Extended Functions, and 4K for CX Extended Functions?), but this still does not answer the question definitively. The CX Time and Extended Functions are not many, and may only continued to fill up a (possible) partially used 2nd bank of an Extended Functions module. Does anyone know for sure if the Extended Functions module ROM code fits fully in 4K? Did HP publish this information for the Extended Functions module? |
|||
03-01-2018, 04:50 PM
Post: #2
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
To my knowledge ...
The Extended Functions/Memory module contains a 4KW (10 bits word) ROM and 127 extended RAM registers (889 bytes). Unlike the 41CX (page 3), the module uses one of the lower port address (page 8, 10, 12 or 14) for it's ROM part. There is no code for page switching in it. |
|||
03-01-2018, 05:43 PM
Post: #3
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
Sylvain is correct, it is a 4K module with RAM for the extended memory.
Both the Time module and the Extended functions are 4K modules with extra abilities. They are both filled to the brim and there is little room for anything else. I suspect that HP had more that could not be fitted in and had to prioritize. When HP made the 41CX they added extra abilities, like extended catalogs. As both the mainframe (12K OS code was full), and the TIME modules and Extended function took 4K each (also full), the extra code had to go somewhere. The solution was another page (the banked one). This called for some reorganization of the code (preserving entry points). Now there were plenty of room making it possible to add extra functions. In fact, there is even a large gap of unused memory in the 41CX. Håkan |
|||
03-01-2018, 05:57 PM
Post: #4
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
(03-01-2018 04:50 PM)Sylvain Cote Wrote: To my knowledge ... Thanks for the contribution. However, a correction that I am aware of. The Extended Functions/Memory module contains 128 RAM registers (896 bytes) 040H through 0BFH (inclusive). One register is consumed by the operating system to keep track of what address the next module occupies in the RAM address space (either starting at 201H or 301H, depending on whether the first X Memory module was inserted into Ports 1/3 or Ports 2/4). Similarly, the Extended Memory Modules (HP82181A) have 239 registers, 238 for use by the user, and one register containing pointers to the other extended memory blocks. |
|||
03-01-2018, 06:05 PM
Post: #5
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
(03-01-2018 05:43 PM)hth Wrote: Sylvain is correct, it is a 4K module with RAM for the extended memory. Thanks for the good information. I knew there was some extra space in the HP-41CX ROM allocation as Monty (41CL architect) was able to add functionality (to restore the 41CL functions in case they get unmapped by accident). As an aside, it is not hard for me to believe that the extended functions ROM space was totally consumed in order to provide the significant functionality that module provided. However, the TIME module provides relatively few functions (29) for its 4K ROM space, and many of these simply set a Boolean flag (e.g. MDY, DMY, CLK12, CLK24, CLKT, CLKTD) and none seems to have a lot of required code to support their functions. I would have assumed that module would have a bunch of space left over. |
|||
03-02-2018, 04:09 AM
Post: #6
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
The Time module offers significant functionality based on programming that are both elegant and tricky using a growing and shrinking buffer to keep track of the alarms, calendar routines, a clock and stop watch. It can show an updating clock, sleeps between updates, handles alarms that go off at any point, switch to running a program on demand from an alarm and reschedule alarms as needed.
The Time module makes use of a whopping five poll vectors (out of seven in total) only leaving the "pause loop" and "memory lost" alone. Compare this to the Extended Functions which uses no poll vector code at all. Even the HP-IL module only uses two different poll vector routines for an 8K ROM, and relies on polling. The Time module sleeps and handles events, it is playing in a completely different league. In my opinion the Time module is the best module HP ever made for the HP-41, only challenged by the HP-IL module. I advice you to take a look at the VASM listings to consult the Time module source code, you may change your mind about it. The Extended Functions is a quick burger from your local fast food service joint. The Time module is an exquisite dinner where everything is carefully composed together. Håkan |
|||
03-02-2018, 07:24 AM
Post: #7
|
|||
|
|||
RE: HP-41C Extended Functions - 4K module?
(03-02-2018 04:09 AM)hth Wrote: The Extended Functions is a quick burger from your local fast food service joint. The Time module is an exquisite dinner where everything is carefully composed together. What a marvelous allegory. Thank you Håkan. Greetings, Massimo -+×÷ ↔ left is right and right is wrong |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 2 Guest(s)