SixPacks mods for GCIC users
"paoloG" <[email protected]> Thu, 04 Nov 2010 11:25:00 -0000
| Newsgroups | gmane.comp.emulators.hercules390.vm |
|---|---|
| Message-ID | <[email protected]> |
Hello! Often I find fun in installing and testing Hercules on small appliances, tiny computers, NAS and so on. Recently I bought a D-LINK DNS-323 for a bargain price (about 75 Euros without HD) and I installed Hercules on it. Based on a 500 Mhz ARM processor it has a perfomance of 1-1.5 MIPS (more or less the same as a 4341-2 of 1980); this is acceptable to me as I like to have some wait time after issuing a command (it remembers me of good old times;-). So I decided to test GCIC in this environment, and I was surprised by the time required to start BROWSE or EDIT function; for example starting BROWSE of GEDIT ASSEMBLE file (3742 lines) required about 65 seconds; the same for starting EDIT. Even exiting from BROWSE OR EDIT required about 12 sec. The same functions in a VM/SP environment(using BROWSE and XEDIT) give a 0.1-0.4 seconds response time. I noticed that starting BROWSE in GCIC has a path lentgh of about 60M instructions, while the BROWSE of VM/SP has a 100k instructions path length. Surprised by such a behaviour I looked into the code of GCIC, and discoveved that the file to be BROWSED or EDITED is read into memory by the same routine in GTABLE ASSEMBLE module; for each line read is issued a GETMAIN to get an area of 8 + LRECL length. I suspected that the poor performances were related to all these GETMAINs, so I tried a quick and dirty correction: I acquired an unique area of 500k at the beginning of the routine and modified the code to cope with this unique area. I got a response time of 3 sec (instead of 65) and exiting from BROWSE or EDIT is almost immediate. Hoping this may be useful to the developer to improve an already fantastic program! Regards. Paul