top | item 44372826

(no title)

jksmith | 8 months ago

This is just a "because I wanted to" project. And I get that; done a lot of those myself just to understand what the hell was going on. But the rewrite of turbo vision into FPC and compiling to half a dozen targets has been around for 20 years. Turbo vision is probably the best text mode windowing library in existence. The cool fun kicks in when you can map a whole text screen to an array like so: var Screen: Array[1..80,1..25] Of Byte Absolute $B800; // or something like that as i recall

What turbo vision brought to the game was movable, (non) modal windows. Basically a lot of rewriting that array in a loop. Pretty snappy. I made a shitload of money with that library.

discuss

order

TiredOfLife|8 months ago

> This is just a "because I wanted to" project.

It's not. They needed a small TUI editor that was bundled with Windows and worked over ssh.

https://news.ycombinator.com/item?id=44034961

jksmith|8 months ago

Well, I don't have the rights to bundle anything with windows, nor would I want to. All you'd need is a thin player to reproduce a TUI screen if done in FPC, and it wouldn't be limited to Windows. All I'm suggesting is we tend to have some recency prejudice in our development, even when it costs more time/money than it should. I'm sure I've done the same over the years.

nathell|8 months ago

array[1..25, 1..80] of Word absolute $B800:0000.

Arrays in TP were laid out in row-major order, and each character was represented by two bytes, one denoting the character itself and the other the attributes (foreground/background color and blinking). So, even better, array[1..25, 1..80] of packed record ch: char; attr: byte end absolute $B800:0000.

Replace $B800 with $B000 for monochrome text display (mode 7), e.g., on the Hercules.

throwaway127482|8 months ago

I am curious about how you made money with it, if you don't mind sharing.

jksmith|8 months ago

My first company out of uni was a company that sold a tv advertising application written in dos. It did all the reports, put together spot advert packages, measuring reach and frequency, cost per point, etc. Used Neilsen ratings for data. The company at the time paid commissions along with salary to programmers. The app still lives on in windows, but I've been out of that game for decades. Written in TP for dos, then Delphi for windows.

electroly|8 months ago

Every time I see a new modern TUI framework, my disappointment is the same: "Oh. This isn't as good as Turbo Vision."

wenc|8 months ago

Turbo Vision was truly immersive. I used it in Turbo C and also in Paradox 4.5.

So good.

macjohnmcc|8 months ago

I'd love for an interface like that on VSCode that runs in a terminal even remotely.