(SOLVED) 41CL - DOUBLE HEPAX ACCESS and MMU CONFIG
|
08-19-2019, 06:13 PM
Post: #21
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, I have the need to use the same Hepax RAM area from
two different MMU configurations. But the solution to have more than one Hepax RAM set is also very interesting! But I am still in doubt: To make place to my config in MMU 0, that is a copy of 9PWR, I think to remove the modules 4TBX and ROMX from ports B and C respectively, than to install HEP2 in port B and the four Hepax RAM pages in ports C to F. Equally, I need to free the ports B to F in 9HIL ho hold a new install of HEP2 and to make space for the same Hepax RAM pages from C to F locked before the install of MMU F in MMU 0. to do so, I think to modify the 9HIL, deleting the DACQ, the DEV2 and EXTI or EXIO. And moving YFNX from port D to port 9. Then installing MASS in port A, HEP2 in port B and ports C to F ready to receive the Hepax RAM pages installed in the modified version of 9PWR. All this is exact or I am wrong?? Again, thank you very, very much to ALL you!!! |
|||
08-19-2019, 06:50 PM
Post: #22
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
I am at work, so I cannot gives you a detailed example but since you seems to want to create your own setup, what I would do is:
Sylvain |
|||
08-20-2019, 01:48 AM
Post: #23
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-19-2019 06:50 PM)Sylvain Cote Wrote: I am at work, so I cannot gives you a detailed example but since you seems to want to create your own setup, what I would do is: If you don't want to step on the pre-initialized alternate configurations, numbers 1, 2 and 3 are left for custom user configurations. These custom configurations can still be used with the PLUG functions: 1 uses the alias 9CFA, 2 uses the alias 9CFB, and 3 uses the alias 9BAS |
|||
08-20-2019, 03:40 AM
Post: #24
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-20-2019 01:48 AM)Monte Dalrymple Wrote: If you don't want to step on the pre-initialized alternate configurations, numbers 1, 2 and 3 are left for custom user configurations.Understood, the reason I was not using set 1 to 3 was because of Ángel CL modules who I think uses them, at least set 1 if I remember correctly. I need to re-read Ángel manuals for those CL modules. (08-20-2019 01:48 AM)Monte Dalrymple Wrote: These custom configurations can still be used with the PLUG functions: 1 uses the alias 9CFA, 2 uses the alias 9CFB, and 3 uses the alias 9BASThanks, I was not aware of those names. Podalirius questions gave me an excuse to shave off my laziness and finally dig into the multiple MMU configuration feature. It took me quite a while to really understood what he wanted which made me do a lot of reading and testing which was outside of what he was asking, but in the end I have a better understanding on how things are working. The CFGINI is a good startup which gave me the understanding on how to setup the MMU configuration table. In my case, I use HP-IL and the magnetic card reader all the time, so the actual MMU configuration table is not working for me, but I now know how to setup my own custom table. Thank you! Sylvain |
|||
08-20-2019, 04:24 AM
(This post was last modified: 08-20-2019 04:25 AM by Sylvain Cote.)
Post: #25
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-19-2019 06:13 PM)Podalirius Wrote: To make place to my config in MMU 0, that is a copy of 9PWR, I think to remove the modules 4TBX and ROMX from ports B and C respectively, First, we need to create a common base config for the sets 4 and F. Code: MMUDIS // disable MMU MMU configuration Set 4 (9PWR) before and after update Code: default updated Second, procedure to make this happen: Code: RCLCFG 4 // copy MMU configuration Set 4 (9PWR) to Set 0 Code: STOCFG 4 // overwrite MMU configuration Set 4 (9PWR) with your updated MMU configuration Set 0 MMU configuration Set F (9HIL) before and after update Code: default updated Third, procedure to make this happen: Code: RCLCFG F // copy MMU configuration Set F (9HIL) to Set 0 Code: STOCFG F // overwrite MMU configuration Set F (9HIL) with your updated MMU configuration Set 0 Next message will address backup and restore. Sylvain |
|||
08-20-2019, 12:53 PM
Post: #26
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, I tried to install your instructions, but I have a little problem:
I executed: ON <--, MEMORY LOST MMUDIS MMUCLR "YFNX" PLUG1U "YFNF" PLUG2L without it I am not able to use CFGINI MMUEN I saved this in MMU 0 and MMU 1 as a backup XEQ CFGINI XEQ RCLCFG 4 "WARP 7" XEQ PPLUG ERROR LOCK I tried UNLOCK 7 OK "WARP 7" PPLUG ERROR DUPLICATE ROM 15 BAD CONFIGURATION I stopped. I need more help or I am useless at 41CL!! Maybe it is because my first pocket computer was an hp 48SX, than I used/programmed hp 48GX, 49G and now the 50g. It is possible that I not understood the logic of the 41CL. Anyway, I thank you so much!! |
|||
08-20-2019, 02:06 PM
Post: #27
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-20-2019 12:53 PM)Podalirius Wrote: ON <--, MEMORY LOSTYou are lucky here that the 41CL keep its RAM content through the ML process (08-20-2019 12:53 PM)Podalirius Wrote: XEQ CFGINIYou are right CFGINI is part of YFNF and it was not mapped in my procedures. You need to use CFGINI only once basically, CFGINI is copying the default MMU configuration table from ROM to RAM. After that, you use the RAM based MMU configuration table with either the 9??? setup with PLUG/PPLUG or RCLCFG/STOCFG 1..F functions to play with configuration sets. Warning: each time you use CFGINI you erase any modification that you may have done with the RAM based MMU configuration table. Also, in my procedure I assumed that you have a properly configured 16K HePaX RAM block located at 0x808 to 0x80B. (08-20-2019 12:53 PM)Podalirius Wrote: XEQ RCLCFG 4Sorry for that, it was late, I was tired and did not double/triple check the procedure. I am at the office right now (GMT-5h) and cannot do any test, but I am pretty sure I know what is going on. Until I am back home and able to test it, an untested tentative solution would be this procedure: Code: MMUDIS // disable MMU Code: MMUEN // enable MMU Code: "YFNX" // 41CL Extreme Functions Code: "HEPX B" // HePaX ROM (1 page 4 banks) (08-20-2019 12:53 PM)Podalirius Wrote: I stopped. I need more help or I am useless at 41CL!!The 41CL is way more powerful than the original HP-41C/CV/CX, but with that level of power comes some complexities. At the moment we are playing with the virtualization part, well a small part of it, which allow us to plug virtual modules into virtual ports through configuration sets. Sylvain |
|||
08-20-2019, 04:29 PM
(This post was last modified: 08-20-2019 04:41 PM by Podalirius.)
Post: #28
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, I tried it until the moment to make the Hepax,
until: "YFNX" // 41CL Extreme Functions PLUG1U // mapping YFNX ROM to page 0x9 MMUEN // enable MMU With MMUEN, the error: DUP XROM 07 CONFIGURATION BAD I lost all the Hepax, but no problem, all my software is stored via HP-IL. I think, with humility, that the great problem occurs because RCLCFG don't copy the requested page, but overlap frequently the modules, and every time if one port (on source or destination) are void. The same by all the other related commands. In fact, after a RCLCFG or EXCFG, the resulting page is a mix of the source and of destinazion page. I think that is more easy if delete the port in destination, if is deleted in source. (But this is my opinion with very humility) All DUP XROM errors that occurs in traing to setup the MMU are due to this behaviour. Thank you very, very much! With best regards. |
|||
08-20-2019, 05:11 PM
Post: #29
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-20-2019 04:29 PM)Podalirius Wrote: Hi, I tried it until the moment to make the Hepax,Hein! maybe XROM 15 because we are playing with YFNX, but XROM 07 is assigned to HePaX ROM, this is surprise, it means that you have the HePaX ROM also plugged somewhere else, a leftover. I told you it was untested but glad that you tested it ... anyway I will try the configuration tonight and I will see. (08-20-2019 04:29 PM)Podalirius Wrote: I lost all the Hepax, but no problem, all my software is stored via HP-IL.Almost sure that it is only unmapped but not lost. (08-20-2019 04:29 PM)Podalirius Wrote: I think, with humility, that the great problem occurs because RCLCFG don't copy the requested page, but overlap frequently the modules, and every time if one port (on source or destination) are void.Maybe, but before pointing in that direction, I will do more tests to explore all the possibilities. On my side I have created three custom MMU configurations, apart for YFNX who is always locked and sometime has some unexpected behaviour, all the unlocked ROM mapped switch correctly between configurations, including HePaX RAM's. Sylvain |
|||
08-20-2019, 11:14 PM
Post: #30
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-20-2019 12:53 PM)Podalirius Wrote: Hi, I tried to install your instructions, but I have a little problem: The step "YFNX" PLUG1U is the problem. As the manual clearly states, YFNX must be in the same page between the current and new configuration. When you do the RCLCFG 4 the new YFNX is loaded into page 7 and locked. But at the same time the old YFNX is still in page 9 and locked. You cannot unlock YFNX. It protects itself from user errors by always locking itself. I am working on a change to YFNX which will allow YFNX to be in a different page in the new configuration, but it's going to take a while. There are a lot of edge cases to handle and not a lot of space in the image. |
|||
08-21-2019, 12:00 AM
(This post was last modified: 08-21-2019 11:06 AM by Sylvain Cote.)
Post: #31
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Podalirius,
I just tried my procedure and it worked successfully, the first time and without any error. Again, I am assuming that you have a properly configured 16K HePaX RAM block located at 0x808 to 0x80B. If that is not the case then it will not work! Below is the same procedure as above but with validation point along the way: Code: MMUDIS // disable MMU Code: CAT 2 // should display // IMAG:XR Load MMU secondary configuration table with default values and load set 4 into set 0 Code: CFGINI // copy MMU configurations from ROM to RAM Code: CAT 2 // should display // IMAG:XR Swapping WARP and YFNX ROM position and unmap pages 0xB to 0xF Code: MMUDIS // disable MMU Code: CAT 2 // should display // IMAG:XR Now, to make the transition easy as possible, YFNX in set 0x4 must be in the same position as YFNX in set 0xF. Map HePaX RAM & ROM => Warning: The following will fail if your HePaX RAM is not properly configured! Code: "%808 C" // based on your previous message your HePaX RAM is from 0x808 to 0x80B Code: CAT 2 // should display // IMAG:XR Save updated set 0 configuration to set 4 Code: STOCFG 4 // copy MMU configuration from set 0 to set 4 (9PWR) or save updated set 0 configuration to set 1 (not overwritten by CFGINI) Code: STOCFG 1 // copy MMU configuration from set 0 to set 1 (9CFA) Sylvain edit1: typo edit2: add save to configuration 1 |
|||
08-21-2019, 06:23 AM
Post: #32
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi,
ALL WORKS VERY WELL !!! and my Hepax with all programs is still present! If I will able to use the 41CL as my needs, it is ALL your merit!!! Again and always a very big THANK YOU!!! also because I begin to understand some things! I accepted the advice of Mr. Monte and I stored the configuration on MMU 1 (9CFA) to not destroy the original settings and think to store the future configuration for HP-IL on MMU 2 (9CFB). I hope this is correct! With best regards. |
|||
08-21-2019, 11:03 AM
Post: #33
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-21-2019 06:23 AM)Podalirius Wrote: ALL WORKS VERY WELL !!! and my Hepax with all programs is still present!Great! it was my pleasure. (08-21-2019 06:23 AM)Podalirius Wrote: I accepted the advice of Mr. Monte and I stored the configuration on MMU 1 (9CFA) to not destroy the original settings and think to store the future configuration for HP-IL on MMU 2 (9CFB).Everything that is working for you is correct. Sylvain |
|||
08-21-2019, 12:00 PM
Post: #34
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
About the 9HIL configuration, from what you said of what you want, basically nothing is kept from that configuration, so here we will do our own configuration.
The procedure ... Code: MMUDIS // disable MMU Code: "4LIB 4" // Library 4 Code: "%808 C" // based on your previous message your HePaX RAM is from 0x808 to 0x80B Code: CAT 2 // should display // IMAG:XR Switching between the two configurations Code: "9CFA" // custom configuration based on 9PWR |
|||
08-21-2019, 05:40 PM
Post: #35
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, also HP-IL works fine, but I have a problem
in swapping pages: After tested HP-IL with my pyILBOX, I decided to swap on 9CFA that is "my" standard configuration. I typed "9CFA" XEQ PPLUG and my programs are all NOT EXISTENT, so i typed CAT 2 and I discovered: CAT 2 on 9CFA............................CAT 2 on 9CFB TIME 3A....................................EXT FCN 3B CL TIME.....................................CL EXT FCN YFNX 4C....................................TIME 3A SYS FNS...................................CL TIME SER FNS...................................AMC"OS/X MISC FNS.................................OSX BANK2 YFNF 3A...................................YFNX 4C EXT FCN 3B.............................SYS FNS CL EXT FCN.............................SER FNS ................................................MISC FNS ................................................X MASS STG ................................................HEPAX'4H It is evident that the HP-IL configuration on 9CFB is OK, but I don't understand from where arrive this configuration on 9CFA! When I typed CAT 2 on 9CFA, I immediately stopped with R/S and advanced with SST. At last SST the 41CL display 0.0000, but on 9CFB, at last line of CAT 2, continue to display the last line and to exit I have to press <-- (Backspace). Another problem or I typed a mistake? I am sorry ho make this help so long! Now I am very stressed by a problem at an eye, but tomorrow I reinstall your 9CFA configuration, then I repeat the tests. Thank you so much!! |
|||
08-21-2019, 07:34 PM
Post: #36
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, my passion for computers is more stronger then eyes :-)
I reinstalled 9CFA and ALL WORKS VERY WELL!!! I am sorry for my mistake. A little doubt: to swap from MMU 0 to one of the MMU installed by CFGINI, is enough to type "9???" PPLUG or I have to use the code that Mr. Monte posted in this help? For example, to change to another configuration: MMUDIS MMUCLR "YFNX" PLUGH MMUEN RCLCFG ? Of course I don't select 9HIL because we have your configuration! Again, Thank you so much!! With best regards. |
|||
08-22-2019, 01:59 AM
(This post was last modified: 08-22-2019 02:10 AM by Sylvain Cote.)
Post: #37
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
(08-21-2019 07:34 PM)Podalirius Wrote: I reinstalled 9CFA and ALL WORKS VERY WELL!!!No need to be sorry, learning is a difficult path and mistakes are part of it. (08-21-2019 07:34 PM)Podalirius Wrote: A little doubt: to swap from MMU 0 to one of the MMU installed by CFGINI, is enough to type "9???" PPLUG or I have to use the code that Mr. Monte posted in this help?Actually you do not swap, well ... you can, but in all our examples up to now, we never did. So for our limited view of things, you override your MMU configuration set 0 with another MMU configuration set 1 to F with RCLCFG or from one of the "9???" with PLUG or PPLUG. (08-21-2019 07:34 PM)Podalirius Wrote: For example, to change to another configuration:In general yes but you must map the "YFNX" module to the same page as the configuration you want to import. Ex #1: for set 4 or "9PWR", "YFNX" is mapped to page 7 (PLUGH) Ex #2: for set F or "9HIL", "YFNX" is mapped to page D (PLUG3U) (08-21-2019 07:34 PM)Podalirius Wrote: Of course I don't select 9HIL because we have your configuration!Not so sure, if you save it like my last post suggested it (STOCFG 2) then you use "9CFB" not "9HIL". Configuration names and numbers ... Code: Name Set MMU-Type Description Code: "9PWR" 4 Secondary Power-User Configuration Code: "9MEC" A Secondary Mechanical Engineering Configuration Some of the functions affecting MMU Registers ... Code: Function Parm From Description Code: PLUG "Name" YFNX Copy specified configuration name to active configuration (set 0) Code: LOCK 0 to F YFNX Lock specified page in active configuration (set 0) Also, like Monte said in an earlier port, you can lock the HePaX ROM+RAM in place, preventing an override of your HePaX setup by another configuration. In your case to lock the pages, the procedure is: Code: LOCK B // lock HePaX ROM To unlock the pages, the procedure is: Code: UNLOCK B // unlock HePaX ROM Sylvain edit: typo & added some details |
|||
08-22-2019, 10:39 AM
Post: #38
|
|||
|
|||
RE: 41CL - DOUBLE HEPAX ACCESS
Hi, some little bit of specifications:
- I was sorry for respect of you and your work to help me. - I am a scholar, to study (and learn) is in my nature. I tried some experiments with MMU configuration exchange, before to read your last message. (The risk is very low, to reinstall 9CFA and 9CFB is a matter of minutes). With 9CFA active on MMU 0 to change to have 9SCI STOCFG 1 // A backup MMUDIS MMUCLR In 9SCI configuration, YFNX is in port 7 so "YFNX" PLUGH MMUEN RCLCFG 6 (9SCI) I verified with CAT 2 and all is OK. To return to have 9CFA in port 0 MMUDIS MMUCLR In 9CFA, YFNX is in port 9 so "YFNX" PLUG1U MMUEN RCLCFG 1 (9CFA) Again I verified with CAT 2, and all is OK. I think to begin to understand the mechanism of MMU. At this point all the help I asked is at his end, but you proposed me a procedure to save MMU configurations via HP-IL, still I am not here to abuse of you to make my 41CL without any effort!!! I ask you, if possible, to give me some suggestions so that I can try to make it by myself. In case of problems, I can ask new help. With all my gratitude, I thank you SO MUCH!!!! With best regards. |
|||
08-22-2019, 02:30 PM
Post: #39
|
|||
|
|||
RE: (SOLVED) 41CL - DOUBLE HEPAX ACCESS and MMU CONFIG
(08-22-2019 10:39 AM)Podalirius Wrote: Hi, some little bit of specifications:Well, this is probably a cultural thing here. I am a Quebecer (French Canadian from Quebec) exchanging with an Italian from Europe in English which is non-native for both. Anyway, it was my decision to jumped in to help you with your 41CL, after that it was my responsibility as much as I could to bring you to a certain level of understanding. (08-22-2019 10:39 AM)Podalirius Wrote: I tried some experiments with MMU configuration exchange, before to read your last message.That's the spirit! (08-22-2019 10:39 AM)Podalirius Wrote: With 9CFA active on MMU 0 to change to have 9SCIIf you make a modification that you want to keep then it make sense to save your configuration to your set (here 9CFA) otherwise you should only read from it. That lower the risk of overwriting your configuration with a wrong one. (08-22-2019 10:39 AM)Podalirius Wrote: ...Great! ... you are now the expert on this subject and you answer the next 41CL user question on MMU configuration sets ... just kidding ... LOL. (08-22-2019 10:39 AM)Podalirius Wrote: At this point all the help I asked is at his end, but you proposed me a procedure to save MMU configurations via HP-IL, still I am not here to abuse of you to make my 41CL without any effort!!!Doing a backup/restore of HePaX RAM to/from a HP-IL medium is relatively easy. Since the HePaX RAM external structure is based on ROM format, most MLDL (Machine Language Development Lab) utility ROM has a way to backup/restore ROM to/from HP-IL medium. Doing a backup/restore of the MMU configuration sets to/from a HP-IL medium is more problematic. The problem is that I need to bring the information from/to the 41CL FPGA MMU world into the HP-41CX world before being able to make a backup/restore to/from a HP-IL medium. I need to do some reading of Monte documents and do some experimentation before I can come up with the solution. There will be some days before I will come back to you. Sylvain |
|||
08-22-2019, 05:33 PM
Post: #40
|
|||
|
|||
RE: (SOLVED) 41CL - DOUBLE HEPAX ACCESS and MMU CONFIG
(08-22-2019 02:30 PM)Sylvain Cote Wrote: Doing a backup/restore of the MMU configuration sets to/from a HP-IL medium is more problematic. My limited understanding of the Hepax RAM format says that it might be fairly simple. If you look at page 804 in RAM where the MMU registers are, the first 12 bytes are almost unused. And everything above 804400 is unused. So the Hepax page pointers can be easily set. The word at 804000 is used for the 41C register address, which means that you probably will need to copy page 804 to some other RAM page before you can make it into a Hepax RAM page for transfer. I am assuming that the Hepax RAM can be filled with binary data. If this is not the case then it become more complicated, but there is plenty of space in the page to massage the data to/from any required format. |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 2 Guest(s)