Hello! Baltissen, GJPAA (Ruud) wrote: > Strange, are you sure? Yes - I wrote the functions so I am pretty sure that I didn't write this one ;-) > You said you tried BASIC under DOS 1.25. I haven't run any BASIC under DOS the last 15 years so I'm not quite sure of it behavior anymore. But IIRC it behaves just like BASIC on any 8-bits Commodore (= Microsoft as well). If this BASIC is not using function 8 (indirectly through DOS), how does it keep track of changes? You don't need to read anything from the screen to allow the user to input lines of text. You just need a text buffer in memory where you store the characters the user typed, and output them to the screen using INT 10,0E. The buffer does not need to be limited to 80 characters. You are probably thinking in terms of full-screen BASIC editor like on Commodores. That's not how MS-DOS, MBASIC EDLIN and other CP/M era programs handle text input; generally, they don't have full-screen editors at all, they just allow entering one line at a time. When you go into territory of full-screen editors, then you really need direct video memory access because reading individual chars with INT 10 will be too slow anyway. > Then what about other programs needing this function? (none comes to my mind right now) I haven't come up with any so far. If a program needs to read characters from the screen, it generally accesses the video memory directly instead of bothering with INT 10. > IMHO every INT function that is supported by the original IBM BIOS and can be supported, should be supported by the BIOS of the 8088 card as well. Should be doable with the new card with its 64 KB EPROM. The two main problems with "reading" characters from the screen is that the screen is really on the 6509 side. That means that: * The screen is in PETSCII; you would need to convert it back to IBM which means you need another conversion table somewhere. * There are 256 IBM characters but only 128 PETSCII characters so the conversion IBM->PETSCII is lossy. Therefore, if you read back a character, you will not always get back what you wrote. All this can be done, but I focused my efforts on functions which were really used by some software I tried. > A possible solution (for the moment ?) is reserving memory which serves as a copy of the screen. Every movement of the cursor and key input is stored here before being sent to the computer itself. So when an "Enter" is detected, the actual line is read from memory rather then being read form the screen using function 8. But I'm not happy about that. This can be done, but seems lots of effort to support a function that nobody is using. I'd rather wait till me have the proper video memory emulation on the card. Regards, Michau.Received on 2018-07-10 13:00:05
Archive generated by hypermail 2.2.0.