ENTERPRISE KLUB
2021. november 6., 1055 Budapest, Nyugati tér 9. 14-19 óráig
Belépés kizárólag klubtagok részére! (Klubkártyával vagy előfizetéssel!)
Welcome, Guest. Please login or register.


Author Topic: 80-column text and clipping the right hand side of characters (Read 3231 times)

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 83.0 Firefox 83.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #15 on: 2020.December.16. 22:31:51 »
Wow - I'd be very interested in seeing these patches once you've got them working.

Do you (or anyone else) want to try a patched version of IS-DOS, with a modified version of the IS-DOS fast video driver that uses the 7-pixel/2-palette Nick setting for the 80-column text.

It also includes modifications to speed up the core font drawing by 3x, erase-line by 4x, and erase-to-end-of-line by 6x ... unfortunately the overhead in the IS-DOS code is so large that this only speeds up the IS-DOS VT52 emulation by about 25% in my tests, but any speed improvement is welcome IMHO.

Online gflorez

  • EP addict
  • *
  • Posts: 3219
  • Country: es
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 83.0 Firefox 83.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #16 on: 2020.December.17. 00:35:37 »
Off-topic:

Some time ago I was interested on adding mouse control to the EDITOR device on text mode, much the same as was done on MS-DOS on PCs, on character boundaries.

The stock Boxsoft mouse driver only allowed a pointer on graphics modes, but with my few skills on assembler I managed to add the two text modes(40/80) on user screens.

The idea was to manage also an Editor screen, but I was not able to do EXOS calls within an interrupt, to move the text cursor to the mouse pointer position when a click being done.

The most promising solution was to modify the Editor driver that comes on the language Rom, but such option was very difficult for me to try....

---

It seems that you are comfortable modifying Roms, so may be you could be interested on such project. The good point on adding a mouse to the Editor control is that almost all Enterprise text-programs use it, so the integration could be total.

----

Also a mouse driver in Rom would be a great advance, because by now it is a loadable extension.
« Last Edit: 2020.December.17. 00:45:26 by gflorez »

Offline geco

  • EP addict
  • *
  • Posts: 6303
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 78.0 Firefox 78.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #17 on: 2020.December.17. 08:33:20 »
I would like to test it, "text 80" mode is slow, and any speed up is welcome :)

Offline dangerman

  • User
  • *
  • Posts: 99
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 81.0 Firefox 81.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #18 on: 2020.December.17. 20:55:17 »
Do you (or anyone else) want to try a patched version of IS-DOS, with a modified version of the IS-DOS fast video driver that uses the 7-pixel/2-palette Nick setting for the 80-column text.

Sounds great. Back in the day, I used to use WordStar under IS-DOS so maybe I could dust that off.

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 83.0 Firefox 83.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #19 on: 2020.December.19. 04:51:08 »
Sounds great. Back in the day, I used to use WordStar under IS-DOS so maybe I could dust that off.

Yes, it's all a case of "Back In The Day" for me, too! :lol:

The first text editor that I used at a professional programming job was VEDIT for CP/M, way back in 1982.

The same original author still develops VEDIT for Windows, and makes sure that it keeps on working, even though there are not many active users still around.

It remains one of the most powerful text editors that I have ever used, especially after BRIEF and MultiEdit both stopped being updated, and became unusable on modern systems.


I would like to test it, "text 80" mode is slow, and any speed up is welcome :)

Yes, I agree! :cool:

Offline BruceTanner

  • EP lover
  • *
  • Posts: 566
  • Country: gb
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #20 on: 2020.December.19. 10:33:20 »
The first text editor that I used at a professional programming job was VEDIT for CP/M, way back in 1982.
All of EXOS, IS-BASIC, and EXDOS were written using vedit(plus)! (Using the new MS-DOS 1 initially). :mrgreen:

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #21 on: 2020.December.19. 21:38:41 »
All of EXOS, IS-BASIC, and EXDOS were written using vedit(plus)! (Using the new MS-DOS 1 initially). :mrgreen:

Haha, cool! :mrgreen:

I *thought* that I remembered using VEDIT when I worked my summer in the IS basement, but I wasn't sure enough to claim it out loud.

I used the CP/M version before that in my job before University, writing educational software at a small company in Birmingham.  I think that they're the ones that I pirated a CP/M copy from, all those years ago, but it could easily have been IS.  I certainly couldn't afford to buy my own back then! ;-)

I was using VEDIT under IS-DOS for my Enterprise port of Cauldron, and then for my first two Amstrad games when at Ocean.


BTW ... do you know if anyone has the source code for IS-DOS?  There are a couple of speedups that I can think of that would really require rebuilding it from source, rather than just hacking the binary.

Offline BruceTanner

  • EP lover
  • *
  • Posts: 566
  • Country: gb
  • OS:
  • Unknown Unknown
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #22 on: 2020.December.19. 21:57:02 »
BTW ... do you know if anyone has the source code for IS-DOS?  There are a couple of speedups that I can think of that would really require rebuilding it from source, rather than just hacking the binary.
Zozo got some source files from Verner but not in a usable form at the moment... work in progress! The trouble is all the source files from EXOS, IS-BASIC, EXDOS, IS-DOS and utilities are all mixed up on various floppies. It's as if someond did a backup of everything onto floppies but got the floppies mixed up during the backup process.

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #23 on: 2020.December.20. 20:15:39 »
The trouble is all the source files from EXOS, IS-BASIC, EXDOS, IS-DOS and utilities are all mixed up on various floppies. It's as if someond did a backup of everything onto floppies but got the floppies mixed up during the backup process.

Yuk, that sounds like a horrible mess to go through! :(

I suspect that there could be enough unique code/text sequences in IS-DOS that a regex search could be run to identify some of the IS-DOS source files ... but I could also easily be wrong about that.

As it is, it looks like there is still $90 bytes of unused space in the IS-DOS BDOS/BIOS section of the program that can be used for extra code, and I'll give that a try.

There is also the possibility of just overwriting the code for the regular IS-DOS VT52 video output that uses EXOS channels, and making the "FAST" video be the only option for CP/M programs.  I'd prefer to avoid doing that, but it is certainly a possibility.
« Last Edit: 2020.December.21. 02:21:19 by elmer »

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #24 on: 2020.December.20. 22:16:41 »
The most promising solution was to modify the Editor driver that comes on the language Rom, but such option was very difficult for me to try....

That makes the most sense to me, because if I understand you, then what you want to do is really best handled at a low level, i.e. inside the "EDITOR:" driver.


It seems that you are comfortable modifying Roms, so may be you could be interested on such project. The good point on adding a mouse to the Editor control is that almost all Enterprise text-programs use it, so the integration could be total.

I'm sorry, but I think that what you are proposing is probably going to be too big a modification to handle by simple hacking. You would really want to build that capability into a new "EDITOR:" driver that you make entirely from source code.

As it is, the only reason that I can make such deep changes to IS-DOS, is because I could find some unused memory inside the program itself ... which is not unusual given the tools that we all had available in the 1980s.  ROMs were usually built with more care to use every byte available, because wasted space meant wasted money (i.e. a larger ROM chip).


Also a mouse driver in Rom would be a great advance, because by now it is a loadable extension.

I am afraid to say that I generally prefer the idea of extensions rather than ROMs, because it is easier to update an extension file than to burn a new ROM, and also because you can use self-modifying code in RAM extensions (for speed). ;-)

Online gflorez

  • EP addict
  • *
  • Posts: 3219
  • Country: es
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #25 on: 2020.December.20. 23:57:26 »
I think that it is not necessary to modify the Editor, only to include the click management on the Editor loop.

The Editor driver on the language Rom is a copy of the original one on the EXOS Rom, and I discovered(or was Bruce Tanner?) on the Hungarian disassembly the point where the loop is started again.

The idea I had was to make a branch to the free space at the end of the Rom and then check if the mouse driver is active on the Editor screen(only checking a System variable). If yes, execute the events scheduled on the mouse driver, printing legal codes on the Editor channel. The easiest of all events is to move the text cursor to the mouse pointer position with the Esc=<y><x> sequence, or a double click can execute a Carriage Return on the pointer position, that the Basic would interpret as Enter.

Once the events executed, the control is returned to the Editor loop.

Writing to the Editor channel is the only way to not corrupt its pointers and still be compatible.

--------

Ok, this mouse thing is only my desire, and I can understand that it is not important for other users.

Thanks for giving me your opinion.


Offline dangerman

  • User
  • *
  • Posts: 99
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 81.0 Firefox 81.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #26 on: 2020.December.22. 21:14:57 »
This is exciting stuff. Hopefully over Christmas I'll find some time to check the ISDOS patch out (family permitting!)

And regarding the mouse - I think calling the mouse driver from a modified EDITOR driver would be a really nice idea. It expect it would be hard to do this in a system-friendly way without a modified EDITOR device. That's just what the EDITOR is for - it's a higher level interface to the keyboard and video devices and could also handle the mouse device.


Online gflorez

  • EP addict
  • *
  • Posts: 3219
  • Country: es
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #27 on: 2020.December.23. 12:04:40 »
The first text editor that I used at a professional programming job was VEDIT for CP/M, way back in 1982.

It works on IS-DOS!  I have selected VT52 as the terminal driver, and redefined some keys.

It allows the edition of very big files without memory paging, taking chunks of the file from disk, but I have still not tried this option.

I have downloaded it from here. At the end of the page there are two zips with files v2.33b. Create a disk image, or format a disk, and throw all files inside it.

On IS-DOS, execute:  INSTALL VPLUSZC.SET VEDIT.COM

First, you will need to configure the program.


Offline BruceTanner

  • EP lover
  • *
  • Posts: 566
  • Country: gb
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #28 on: 2020.December.23. 13:54:08 »
Good find gflorez! :ds_icon_cheesygrin:

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: 80-column text and clipping the right hand side of characters
« Reply #29 on: 2020.December.23. 18:21:11 »
It works on IS-DOS!  I have selected VT52 as the terminal driver, and redefined some keys.

Yes, I know ... as I said a few messages ago, I used it on IS-DOS in the 1980's to write 3 games!

I also posted my copy of VEDIT v2.31, customized for the Enterprise, here earlier this year. ;-)


It allows the edition of very big files without memory paging, taking chunks of the file from disk, but I have still not tried this option.

It does this automatically when it needs to, you don't need to set any specific options (except to install it properly).


I have downloaded it from here.

Yes, IIRC that's where I downloaded a copy of v2.33 many years ago, when Ted Green released it as freeware back in 2008.

I still haven't set it up for the Enterprise, yet, but I'll have to do so soon.


On IS-DOS, execute:  INSTALL VPLUSZC.SET VEDIT.COM

First, you will need to configure the program.

That works, but you really need to do a bit more than that if you want to customize it to take full advantage of the Enterprise's capabilities.

Personally, I created a custom terminal (because VEDIT's VT52 doesn't use reverse-video, i.e. using a 2nd palette), and then I hacked VEDIT v2.31 to support using the Enterprise's function keys and to automatically select IS-DOS's fast video driver.