MS-DOS Kermit v2.27 for ACT Apricot =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= There should be no problem with assembling and linking this version, except that the module 'msxdmb' should be linked first. This is to ensure that the object segments are linked in the correct order. Leaving out that module prevents proper use of PUSH, RUN, DIR, SPACE, and LOCAL. What actually happens is this: 1) MS-DOS allocates the entire free memory to the currently running program, so Kermit needs to de-allocate the space it doesn't use. 2) Kermit locates the end of itself by assuming that its stack seg is its highest point in memory. It then calls the MS-DOS function to shrink the allocated memory down to that point. 3) Kermit then calls the MS-DOS function to load and execute the required program, which goes into the free memory. 4) Program loads, but Kermit has placed parameter control blocks in its own data seg which tends to be placed ABOVE the stack seg by the linker, so it gets zapped by the newly loaded program....... 5) Sudden death ensues...... Actually, I think you're left in an inferior command process, if you try to EXIT back to Kermit, the whole thing dies because its data seg has been blown away. Any questions/problems should be addressed to: Ralph Mitchell Computer Centre Brunel University Uxbridge Middlesex UB8 3PH ------------------------------------------------------------------------------- Computer Centre Brunel University Uxbridge Middlesex UB8 3PH 14 August 1985 Dear Alan, This file should arrive along with an updated copy of MSXAPR.ASM: o The various procedures have been sorted by name so that it's easier to find them... o It now displays a mode line on line 25 when in CONNECT state. This is displayed in high intensity rather than inverse video, but that could be changed. I think inverse video can be a bit hard on the eyes... o The keyboard is re-programmed so that CTRL-[ and CTRL-] return real control characters instead of printing characters. This does not revert to normal on leaving Kermit. Thanks to Dr. Akers for this fix. o On Apricot PC and XI keyboards there is a dot-matrix LCD micro- screen with six touch switches. The screen normally displays the time and date. In CONNECT state it now also displays the words 'BREAK CLOSE STATUS PUSH HELP LOG' and the keys are programmed to supply the appropriate escape sequences for each of these functions. This reverts to normal when the esc char is typed. Note: The LOG key toggles logging on and off only if logging is enabled. i.e. It mimics CTRL-[Q or CTRL-[R, depending on the current state of the switch. o The screen is NEVER saved when leaving CONNECT state. This is because I haven't yet figured out how to restore it. The problem is that the screen memory holds 25.6 lines in a kind of circular buffer and the screen is scrolled by changing a pointer in the CRTC (I think). The extra 6/10 of a line means that for every time a complete screen scrolls up, the origin (top left) is advanced by 48 characters. I've tried saving and restoring the CRTC registers, but it only works if the screen hasn't scrolled since the last clear-screen. If anyone has any ideas I'd be only too pleased to try them out... o Key re-definitions are not available at the present time. o XON/XOFF are handled by the Apricot 'hardware'. It is only possible to change it by re-initializing the SIO, which drops DTR and RTS. This is not always desirable, so I have left it permanently on. Apart from these differences, Apricot Kermit is just like the IBM-PC version. Regards Ralph Mitchell