r/DOS • u/bandrejx • 27d ago
TEAL Editor for DOS
**TEAL** is a free, fast graphical text editor for MS-DOS, designed for both classic and modern DOS systems.
Key features include:
* VGA Mode X and VESA graphics support
* Multiple files with tabbed editing
* Project management with persistent workspaces
* Project sidebar and Quick Open
* Syntax highlighting for C, C++, Pascal, TASM, Fortran, BASIC, SQL, and more
* Fast indexed project-wide search
* XMS-backed storage for large files, undo history, clipboard, and indexes
* Word wrap, configurable fonts, themes, and resolutions
* Text selection, copy, cut, paste, and operation-based undo
* Find, Replace, Go to Line, and bracket matching
* Numbered anchors for quick navigation across project files
* Auto-indent, smart indent, and configurable tab handling
* Persistent tabs, cursor positions, anchors, and project settings
* Configurable JSON-based themes and editor preferences
* Intentionally no mouse support
I wrote TEAL because I always wanted a more modern-looking, distraction-free, and reliable development tool. It also became a fun way to learn C (while porting my old Pascal libraries). It’s still in beta, so it may be a bit memory-hungry, especially when working with large projects.
Like I said, it’s completely free, so feel free to use it however you like. If you enjoy it and would like to support the project, you can buy me a coffee. I’d also appreciate it if you dropped me a message here to let me know. If there’s enough interest, I’ll continue expanding and improving it.
Since TEAL is currently in beta, I’d be grateful for any bug reports. If you encounter any issues, please include information about your system and DOS environment so I can reproduce the problem more easily.
Amber, which is also included, is essentially just a lighter version of TEAL.
Minimum requirements: 486 DX4/80, 8 MB RAM, XMS manager, VGA capable of 640x480
Recommended configuration: Pentium 200, 64 MB RAM or more, a fast(er) VGA card
Download it here:
https://drive.google.com/file/d/18fFU9B7Ud7PL8v3GnRAtaOAeTOBX9Kie/view?usp=share_link
6
u/0xbenedikt 27d ago
Nice project. Why JSON for the config when you're doing C/Pascal?
6
3
u/bandrejx 27d ago
I needed a parser anyway for visual theme support and different parsers for generic code highlighting.
11
u/Revolutionary_Ad6574 27d ago
"distraction free" at this point this word is as meaningless as "quietly" or "cozy". Also a Google Drive? Not GitHub? Seriously?
-3
u/bandrejx 27d ago
Well, it’s not a word processor. It has bells. Whistles. Lots of stuff a non-developer will probably never use.
Amber on the other hand, has most of this features disabled, so it might more fit your style?
10
u/PapercutsOnPenor 27d ago
Why no github repo? Only dumb people download and run executables without seeing the source
-2
u/Glittering-Cut-2425 27d ago
Yeah OP would very like to see your games collection on your 486 machine 🤣
4
u/PapercutsOnPenor 27d ago
Yeah silly me. Why would I even begin mentioning github or source code. OP clearly provided even a screenshot, and hey what can really happen with a zip file of hazy binary as you download it to your daily driver, then drag it to your whatever retro contraption you have?
It's for 486, so by the law of nature, it of course can't possibly contain funky 3rd party libraries, and it definitely can't be vibed slop or low quality code! I'm dumb and paranoid.
Thanks u/Glittering-Cut-2425 for showing my place. You're the man! I'll end my sw dev career now.
3
u/tpimh 27d ago
Looks nice, but requiring 486? What instructions is it using that are not on 386?
3
u/bandrejx 27d ago
Tbh, I never tested it on a 386. It should be enough, but I can't promise it works fast enough.
1
u/MFFVD 26d ago
how can 386 be slower than 486?
2
u/bandrejx 26d ago
486 has a generally faster architecture, less bottlenecks, L1 cache, faster memory operations etc.
3
u/Boring_Disaster3031 27d ago
Are you using teal when developing teal? Can you turn off the autosuggestions? As an aside, I'm currently writing code in Turbo C++ using their IDE.
3
u/bandrejx 27d ago
I started out using CLion, but eventually settled into a workflow that switches between TEAL, CLion (mostly for refactoring), and Sublime Text. In my opinion, the Borland IDE is simply too limited for modern development.
Autosuggestions do not pop out by default, you can call them up via ctrl+space (when inside of a project).4
u/Boring_Disaster3031 27d ago
It’s a fun thing that I’m doing to force myself not to have any crutches at all. I’m a retired computer scientist, and it brings back old memories.
3
u/bandrejx 27d ago
TEAL is actually the third iteration of this editor that I’ve developed over the years. The first version was written in Turbo Pascal using Turbo Vision, and the second was a C++ project based on Turbo Vision 2 and both were developed in native UI under DOS.
Those were mostly fun proof-of-concept projects, but I eventually lost interest because they ended up looking much like every other application built with Turbo Vision.
But as a DOS OG myself, I totally get where you’re coming from. :)
3
3
u/AllGovernmentsAreDad 26d ago
This looks neat. Sorry some other people are kinda being assholes about this. I hope to see it on some sort of git repo, but would understand being demotivated by a lot of the responses here.
2
u/bandrejx 18d ago
Hi! TEAL version 0.483 is out:
- Stability and crash fixes
- Memory, Lexer and XMS cache optimization
- Font cache optimization
- Scrollbar added
- Word-wrapping completely redone
- Faster incremental rendering
- Multi-tab and project/sidebar improvements
1
u/bandrejx 10d ago
Teal 0.6
- Reworked the way the text engine works
- Refactored the cell rendering API so switching between BIOS/VESA modes can be handled by it
- Text mode implementation (BIOS mode 80x25 / 80x50 added etc.)
- reworked scrollbar functionality
1
u/bandrejx 1d ago
Teal 0.606
- GUI handled by API and reworked rendering engine brings additional stability
- Windows and GUI widgets now look nicer
- some minor business logic changes
2
u/Tiny_Campaign3041 3d ago
I tried to run it on FreeDos (NOT in virtual mode!),- doesn't start but it says "not enough memory". (Same with Amber) What do I need? Much looking fwd to run it on my machine.
1
u/bandrejx 2d ago
The absolute minimum for TEAL is 350 KB of free conventional memory (below 640 KB) and around 1-1.5 MB of XMS memory.
You can check the available memory in both regions by running the mem command.
I tested TEAL 0.58 on FreeDOS (on an IBM 300GL), and it worked as long as I loaded HIMEMX.EXE in FDCONFIG.SYS.
2
2
u/NoctisBE 27d ago
I'm not going to harp on about the drive link, or git repo even if I agree with others.
Instead, some positive remarks. I love the UI and layout, and I love the fact that it runs under native DOS. I'll give it a go on a VM.
Also, out of curiosity, what fonts are you using? They look really clean!
3
u/bandrejx 27d ago
The original PSF sources are SPLEEN5.PSF (5x8), SPLEEN6.PSF (6x12) and SPLEEN16.PSF monospaced bitmap font by Frederic Cambus.
3
1
1
u/bandrejx 27d ago
To answer the questions about why I’m not releasing the source code:
I’m not comfortable sharing it yet.
It’s not because there’s anything questionable or “evil” in it. The reason is much simpler: most of the code was originally ported from my very old Pascal libraries, and many parts are still quite messy and difficult to work with. I don’t want to release it until I’ve cleaned it up and brought it to a standard I’m happy with.
To be honest, I didn’t expect people to react so negatively to a project I built primarily for myself. I wasn’t even sure whether I wanted to publish it in the first place, but I thought others might find it useful.
3
u/YakumoFuji 26d ago
I only ever release dos stuff as compiled com/exe.
I think its wild people are moaning about the source like everyone is gonna build it and have all the bespoke libraries you used. (I know I use a tonne of homemade libraries and tools that my source trees require)
3
5
u/ExplodedPenisDiagram 27d ago
If you don't just release it, you never will. Nobody gives a shit if it's messy.
2
u/YumekoDream 27d ago
agreed, messy code and software development are synonym, have you looked at legacy company code? it's... a daily occurence to just say out loud "who the hell coded like this"
don't be shy, and if someone really wants the source code, they will make it a decompiling project out of it lol so it's better now than later
2
u/armadillo_pie_ 27d ago
This looks really good; it's a tool I'd use, provide feedback on, maybe even contribute a PR or two.... if there were code available. Otherwise, not going to touch it, unfortunately.
I'd suggest ripping off that bandaid, hosting the code some place, continuing to improve it in public, and perhaps accepting some useful PRs if you receive them. If you want users, that is.
-2
1
u/MichalNemecek 25d ago
I'm curious, what's the intention behind no mouse support?
5
u/bandrejx 25d ago
‘I hate mice. The mouse involves you in arm motions that slow you down.’
— Jef RaskinOk, so I might add mouse support at the later date, but it might just not be a top priority for me.



19
u/inotocracy 27d ago
This is pretty cool, but there is no way I'm downloading a precompiled project and running it. Could you publish the source code with build instructions?