

I believe READ BUFFER was mainly used for legacy applications which were written prior to the invention of READ MODIFIED (in particular applications originally written for the 3270's 1960s predecessor, the IBM 2260, which didn't have any such concept.)Ī childhood memory from when I was little: Most 3270 apps would define fields on the screen using START FIELD (SF) special characters, which is essentially what you mean by "protect mode protocol" (3270E added START FIELD EXTENDED, SFE, which allowed you to do fancier things like change the text colour, or define a field as numeric only, so the terminal would not allow alphabetic characters to be input into it), and then read only the modified fields back using READ MODIFIED.

When the host gets around to it – on a busy mainframe system with thousands of terminals, the interrupt would be queued while the host had finished processing data from other terminals – the host would send the controller either a READ BUFFER command (which would send the host the entire contents of the screen) or a READ MODIFIED command (which would only send the modified fields). In terms of what actually happens (from what I understand), the 3270 controller sends the host an interrupt to say some terminal has data ready. Saying "whole screenfuls of data at a time" was me simplifying things for the benefit of the uninitiated. This forced greater changes in the UI compared to the other ports, because a lot of things which are easy to implement with character mode terminals are essentially impossible in 3270. By contrast, 1-2-3/M was written to work with the block mode 3270 terminals commonly used on IBM mainframes, which send to/from the terminal whole screenfuls of data at a time, rather than individual characters (somewhat similar, in principle, to classic HTML forms). From what I understand, it is more different from 1-2-3 for DOS than the Unix or VMS ports were the Unix and VMS ports work with character mode terminals (such as VT100 compatibles), which while rather different from the terminal model used on MS-DOS or text mode OS/2 (direct memory access to the screen buffer), nonetheless are close enough that the bridge can be gapped–which (on Unix) is classically the job of the curses library (and its various descendants). Not that I ever used it or saw it, but just I have become fascinated with it from reading descriptions of it. I wonder if anyone still has a copy of Lotus 1-2-3/M? It was the port to the IBM mainframe operating systems MVS (nowadays known as z/OS) and VM/CMS (nowadays z/VM). This was widely thought to be lost – I’m told it couldn’t compete with a more popular UNIX office suite called SCO Professional, so there were not many copies sold. It turns out that the BBS also had a warez copy of Lotus 1-2-3 for UNIX.
