VOGONS


DOS Notepad v1.0

Topic actions

First post, by cookertron

User metadata
Rank Newbie
Rank
Newbie

I mentioned a couple of weeks ago that I created a 8086 assembler, disassembler and emulator in a single agentic AI tool and to show case it's capabilities I've created Notepad, a 8086 real mode text editor written entirely in 8086 assembly. Even the text user interface (TUI) entirely written in assembly.

The text editor supports cut, copy, paste using CTRL+X/C/V and UNDO/REDO, which isn't supported in period MSDOS software.

I would appreciate it if someone could test it out on real hardware 😀

Please find the binary release and source code here github.com/cookertron/notepad

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 1 of 20, by Yoghoo

User metadata
Rank Member
Rank
Member

Nice to see a new editor. Did a quick test. It is very fast and I like it has the default Windows copy/paste keys.

I had a couple of issues. Replace does not work. Starting it with a filename does not open the existing file (example: notepad test.txt). Also it needs to be able to open multiple files at the same time to be usable for me. Lastly it would be nice if it would execute the search, replace etc when pressing enter without going to the OK button.

What is the tested max file size that is supported btw?

Reply 2 of 20, by igully

User metadata
Rank Member
Rank
Member

I made an extremely quick test.

The executable can be packed with much success:
UPX --8086 -9 NOTPAD.COM
From about 60KB in size to just 11KB.

On my test system mouse support does not work, despite driver and mouse working under Volkov Commander.
Also hotkeys for some menu items don't work, like for example, the exit one (ALT+X).

I really like the overall concept of the editor and its functionality at 11KB, it is a winner if it gets fixed.
Is there any far chance of having some Borland TASM type asm source code? Or is it just your proprietary asm stuff?

Thanks

Reply 3 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
igully wrote on 2026-02-23, 18:17:
I made an extremely quick test. […]
Show full quote

I made an extremely quick test.

The executable can be packed with much success:
UPX --8086 -9 NOTPAD.COM
From about 60KB in size to just 11KB.

On my test system mouse support does not work, despite driver and mouse working under Volkov Commander.
Also hotkeys for some menu items don't work, like for example, the exit one (ALT+X).

I really like the overall concept of the editor and its functionality at 11KB, it is a winner if it gets fixed.
Is there any far chance of having some Borland TASM type asm source code? Or is it just your proprietary asm stuff?

Thanks

Thanks for testing it out. The menu has to be opened first to be able to select 'exit' using the 'x' key. That's how I've always experienced the menu system (I think). The mouse functions are accessed through int 33h, so I will look into how the mouse driver under Volkov Commander works and see if there's a work around we can put it. As for TASM compatible source, I'll look into it but I can't promise anything. The TUI itself it over 7K lines of assembler.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 4 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
Yoghoo wrote on 2026-02-23, 14:43:

Nice to see a new editor. Did a quick test. It is very fast and I like it has the default Windows copy/paste keys.

I had a couple of issues. Replace does not work. Starting it with a filename does not open the existing file (example: notepad test.txt). Also it needs to be able to open multiple files at the same time to be usable for me. Lastly it would be nice if it would execute the search, replace etc when pressing enter without going to the OK button.

What is the tested max file size that is supported btw?

Thank you for the feedback, I have fixed those issues now.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 5 of 20, by Yoghoo

User metadata
Rank Member
Rank
Member

I tested the new version and I see that you can give a filename now from the command line and replace is working.

Some questions/improvements:

  • Show shortcut options in the menu's like: Find (CTRL-F) etc
  • I agree with igully that ALT-X to quit should be implemented
  • It would be nice to execute the search, replace etc when pressing the enter key (after typing something). Now you need to click/press OK first. Enter key should act like an OK.
  • Are you going to implement a multi file edit option in the future?

Reply 6 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
Yoghoo wrote on 2026-02-23, 18:53:
I tested the new version and I see that you can give a filename now from the command line and replace is working. […]
Show full quote

I tested the new version and I see that you can give a filename now from the command line and replace is working.

Some questions/improvements:

  • Show shortcut options in the menu's like: Find (CTRL-F) etc
  • I agree with igully that ALT-X to quit should be implemented
  • It would be nice to execute the search, replace etc when pressing the enter key (after typing something). Now you need to click/press OK first. Enter key should act like an OK.
  • Are you going to implement a multi file edit option in the future?

Shortcuts in the menu, absolutely.

I'll add the ALT-X.

I see what you mean about pressing enter. It's because the 'OK' or 'REPLACE' button isn't in focus, if you TAB onto it and then press RETURN it will 'push/use' that button.

The multi-file feature would be nice but the code 16-bit real mode only so space in LMB is limited. Plus with the undo/redo buffer too it might be pushing it. If I enabled the A20 line that would give me an extra 64kb to play with but it would make it incompatible with older 8086 systems.

There may be another work around I'm not seeing. Watch the project on github 😀

thanks for the feedback.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 7 of 20, by igully

User metadata
Rank Member
Rank
Member

Another quick test at your new version:

I started notepad.com in my networked D: volume which is 2 GB in size and has plenty of files in the root drawer and several other files in subdirectories. Using MS-DOS 6.22.
File -> Open - launches the corresponding open file dialog but:
- I am unable to change drive letter when expected to (by selecting ..\).
- Files and directories listed are limited to the first 32 found. I have many more and they aren't shown.
- When one button is highlighted (either OK or CANCEL) you can only switch between them using TAB. Ideally arrow/cursor keys should work too.

That is it for now. Thanks again.

Reply 8 of 20, by igully

User metadata
Rank Member
Rank
Member

Non-functioning active mouse driver being used is CuteMouse v2.0 alpha 4, which works with everything else I have thrown at it.

On non-supported MDA display adapters, no text warning message is given. The program just crashes the machine.

It would be a nice addition to have MDA supported too.

Reply 9 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie

UPDATES:
MDA not supported message (yet, maybe later)
Drive select drop-down in the file open/save dialog window (A, B, C, [Z for DOSBOX])
Pressing RETURN in an open dialog window triggers the first available event. So pressing RETURN in the search dialog will trigger the 'ok' event.
Memory status across three scratch areas, CLIP/UNDO/TEXT. This shows what you have to work with and it's not a lot!
Menu items now include shortcut keys.
Shortcut keys added globally, when menu access is available: alt-x (exit), ctrl-n (new) etc.
Mouse controllable scrollbar on the main text window.
Increased number of files in the file dialog box from 32 to 128

BUG FIXES:
Dead software mouse code still running despite moving to purely hardware mouse.

STILL TO ADD:
Element switching using arrow keys when text input element not active. "Do you really, really, really, really want to quit?", left and right arrow to select buttons YES/NO etc
Crystalise code by removing unused TUI library code to reduce file size.
Figure out how to access files in chunks rather than load the whole thing into memory. Implementing this should allow access to larger files and multi-file windows.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 10 of 20, by Yoghoo

User metadata
Rank Member
Rank
Member
cookertron wrote on Yesterday, 15:02:

Shortcut keys added globally, when menu access is available: alt-x (exit), ctrl-n (new) etc.

Nice to see those quick updates! Unfortunately CTRL-N, CTRL-O and CTRL-S are not working for me.

If I can add another feature request it would be nice to add an option in the Find window to search from the top of the file, from current position or from selection (bit like the Replace window).

Reply 11 of 20, by DaveDDS

User metadata
Rank Oldbie
Rank
Oldbie

Looks pretty good - A lot of my stuff uses plain text docs, configuration files etc. and it would be really nice to have as simple little editor to give those who don't know what a .TXT file is, and don't have an editor (except of course EDLIN - lets not even go there) - unfortulately many of these find my own editor a bit complex and too "key oriented"*1.

Any chance you could enhance it to support Tabs in the text file. I just tried it and files with Tabs in them just show the PC 0x09 character set entry with no adjustmend of the spaciing. I'd like it if the Tab width could also be set. I use Tabs a LOT - for example, in .ASM I use 8, in C I use 4, in lots of other places I use tabs when I have to space out far in a file without using a lot of spaces.

----

*1Sorry to "blather on" about something I wrote 40 years ago - Its just the editor I still use the most and on many different systems...
I'm hoping this might give you some useful ideas!

Back in the mid 1980s I worked for a company that used a lot of VAXs. These D.E.C. systems had a pretty good text eitor called EDT, this is a full visual "what you see is that you get" editor, and kept the screen pretty "clean". Vaxs used RS-232 serial terminals, and EDT worked on VT-100s, so no memory mapped video display etc.

I grew to rely on it so much I "wrote my own". Originally in 6809 .ASM for a system I was building at the time, but later ported it to 'C' and built versions for: DOS, Windows, Linux as well as other non-PC flavors of UNIX and even some proprietary systems you've probably never heard of that I worked on over the years.

Use: edt <file> [c=initial_cmd -showIh -Video_inhibit]

InteractiveHelp: F10 'H' F10

Dave Dunfield - https://dunfield.themindfactory.com

This is the interactive help (sorry it's a bit "crisp" - designed to fit on one 80x24 screen.

     -Special keys-                  -Commands-               -Line ranges-
PgUp = Page backward C = Copy line(s) * = Current line
PgDn = Page forward D = Delete line(s) / = Entire file
^PgUp = Start of file F = File info n = line # (1+)
^PgDn = End of file nH = Set Htab size 0 = End of file
Home = Start of line I = Insert new line(s) = = Tagged lines
End = End of line L = List (unformatted) r,r= range to range
F8 = Redraw screen M = Move line(s)
^-> = Word right P = Print (formatted)
^<- = Word left Q = Quit editor
INS = Insert/Overwrite QQ = Quit with no save '"' can be
DEL = Delete character Rfile = Read & insert file any character
BKSPC = Delete previous S"old"new = Substitute text <-- not in "old"
F1 = showEOL T = Tag lines
F2 = showCursor V = Visual mode
F3 = Move line to top W[file] = Write file
F4 = Tag line(s) X[file] = eXit/write file -Examples-
F5 = Del to end of line ?text = Search for text D
F6 = Del end of line $[cmd] = Execute DOS command 1,10C
F7 = Insert deleted line (null) = Move to line range =M
F10 = Line mode command 0Rmy.fil
F9 = Re-execute command /Wmy.fil

FWIW it can work in either Visual or Line mode (like EDLIN - handy if you want to feed it a bunch of editing commands).
It's also a "full strean" editor, you can use RETURN(new line) within search and substitute strings.

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Reply 12 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
Yoghoo wrote on Yesterday, 18:07:
cookertron wrote on Yesterday, 15:02:

Shortcut keys added globally, when menu access is available: alt-x (exit), ctrl-n (new) etc.

Nice to see those quick updates! Unfortunately CTRL-N, CTRL-O and CTRL-S are not working for me.

If I can add another feature request it would be nice to add an option in the Find window to search from the top of the file, from current position or from selection (bit like the Replace window).

You're right about the shortcut keys I've fixed that. I'll add the search parameters to the find dialog too. Thanks for the continued feedback.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 13 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
DaveDDS wrote on Yesterday, 21:44:
Looks pretty good - A lot of my stuff uses plain text docs, configuration files etc. and it would be really nice to have as simp […]
Show full quote

Looks pretty good - A lot of my stuff uses plain text docs, configuration files etc. and it would be really nice to have as simple little editor to give those who don't know what a .TXT file is, and don't have an editor (except of course EDLIN - lets not even go there) - unfortulately many of these find my own editor a bit complex and too "key oriented"*1.

Any chance you could enhance it to support Tabs in the text file. I just tried it and files with Tabs in them just show the PC 0x09 character set entry with no adjustmend of the spaciing. I'd like it if the Tab width could also be set. I use Tabs a LOT - for example, in .ASM I use 8, in C I use 4, in lots of other places I use tabs when I have to space out far in a file without using a lot of spaces.

----

*1Sorry to "blather on" about something I wrote 40 years ago - Its just the editor I still use the most and on many different systems...
I'm hoping this might give you some useful ideas!

Back in the mid 1980s I worked for a company that used a lot of VAXs. These D.E.C. systems had a pretty good text eitor called EDT, this is a full visual "what you see is that you get" editor, and kept the screen pretty "clean". Vaxs used RS-232 serial terminals, and EDT worked on VT-100s, so no memory mapped video display etc.

I grew to rely on it so much I "wrote my own". Originally in 6809 .ASM for a system I was building at the time, but later ported it to 'C' and built versions for: DOS, Windows, Linux as well as other non-PC flavors of UNIX and even some proprietary systems you've probably never heard of that I worked on over the years.

Use: edt <file> [c=initial_cmd -showIh -Video_inhibit]

InteractiveHelp: F10 'H' F10

Dave Dunfield - https://dunfield.themindfactory.com

This is the interactive help (sorry it's a bit "crisp" - designed to fit on one 80x24 screen.

     -Special keys-                  -Commands-               -Line ranges-
PgUp = Page backward C = Copy line(s) * = Current line
PgDn = Page forward D = Delete line(s) / = Entire file
^PgUp = Start of file F = File info n = line # (1+)
^PgDn = End of file nH = Set Htab size 0 = End of file
Home = Start of line I = Insert new line(s) = = Tagged lines
End = End of line L = List (unformatted) r,r= range to range
F8 = Redraw screen M = Move line(s)
^-> = Word right P = Print (formatted)
^<- = Word left Q = Quit editor
INS = Insert/Overwrite QQ = Quit with no save '"' can be
DEL = Delete character Rfile = Read & insert file any character
BKSPC = Delete previous S"old"new = Substitute text <-- not in "old"
F1 = showEOL T = Tag lines
F2 = showCursor V = Visual mode
F3 = Move line to top W[file] = Write file
F4 = Tag line(s) X[file] = eXit/write file -Examples-
F5 = Del to end of line ?text = Search for text D
F6 = Del end of line $[cmd] = Execute DOS command 1,10C
F7 = Insert deleted line (null) = Move to line range =M
F10 = Line mode command 0Rmy.fil
F9 = Re-execute command /Wmy.fil

FWIW it can work in either Visual or Line mode (like EDLIN - handy if you want to feed it a bunch of editing commands).
It's also a "full strean" editor, you can use RETURN(new line) within search and substitute strings.

That looks very complicated. I'll download it from your website and have a look. As for the TAB support yes I get that included. Thank you for testing.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 14 of 20, by igully

User metadata
Rank Member
Rank
Member

Thank you very much for this new update. Mouse now works as it should!

Last edited by igully on 2026-02-25, 02:27. Edited 1 time in total.

Reply 15 of 20, by aVd

User metadata
Rank Newbie
Rank
Newbie

Hi, @cookertron!
You have very nice DOS text editor project. I really like the idea for DOS editor with standardized key shortcuts. It seems to work with good speed even on 8088 XT machine.

Here are some notes and suggestions after a quick test I made. When left clicking with mouse somewhere, the <Backspace> key does'n work until some other key is used. <Ctrl>+<Y> combo for "Redo" is not standard - <Ctrl>+<Shift>+<Z> is usually the standard combination for the opposite of "Undo" (<Ctrl>+<Z>). Also I didn't notice any change in behavior when trying to use <Ins> key - you may see how DOS Edit handles it. Also, the versions number - why all the bugfix minor revisions are stuck to 1.0? You may change to 1.0b, 1.0c, 1.02, 1.03... or something like this. Why there's no key shortcut for "Help-About"? Maybe it will be more convenient if a single press of <Alt> key activates "File" menu, even without dropdown submenu "unfolded", for further navigation with cursor keys. There's no option for saving file when exit with unsaved changes - this may be added too. There's no "Close file" option with same functionality when closing file with unsaved changes - not sure, if this is needed without multiple file opened for edit implemented functionality.

Maybe there will be more things to be fixed in the future, but these are "my $0.05" after the first quick test.

DOS fan | "artificial intelligence" - not a fan... not a fan at all

Reply 16 of 20, by DaveDDS

User metadata
Rank Oldbie
Rank
Oldbie
cookertron wrote on Yesterday, 23:18:

That looks very complicated.

Which is exactly why we could benefit from a simpler more straightforard editor (to be fair, I've been using and enhancing EDT for >40 years, it's definately more oriented to "what I want/am used to" than "easy for a newbie")

I'll download it from your website and have a look.

Ok, I think the ones on my site may be a bit out of data - I've just updated the main EDT distribution (EDT.ZIP) with the latest. (In other archives it's still a bit out of data - will get updated as I update those archives.

As for the TAB support yes I get that included. Thank you for testing.

Thanks, without Tab support it's basically useless for much of my material, but with it will be a lot better!

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Reply 17 of 20, by aVd

User metadata
Rank Newbie
Rank
Newbie
aVd wrote on Today, 01:59:

Maybe there will be more things to be fixed in the future, but these are "my $0.05" after the first quick test.

Yep, there's more. On the second quick test: <Alt>+<X> combo works, but none of these "New" <Ctrl>+<N>, "Open" <Ctrl>+<O> and "Save" <Ctrl>+<S> key shortcuts are unusable. "Edit" and "Search" related key combos seems OK.

DOS fan | "artificial intelligence" - not a fan... not a fan at all

Reply 18 of 20, by cookertron

User metadata
Rank Newbie
Rank
Newbie
aVd wrote on Today, 01:59:
Hi, @cookertron! You have very nice DOS text editor project. I really like the idea for DOS editor with standardized key shortcu […]
Show full quote

Hi, @cookertron!
You have very nice DOS text editor project. I really like the idea for DOS editor with standardized key shortcuts. It seems to work with good speed even on 8088 XT machine.

Here are some notes and suggestions after a quick test I made. When left clicking with mouse somewhere, the <Backspace> key does'n work until some other key is used. <Ctrl>+<Y> combo for "Redo" is not standard - <Ctrl>+<Shift>+<Z> is usually the standard combination for the opposite of "Undo" (<Ctrl>+<Z>). Also I didn't notice any change in behavior when trying to use <Ins> key - you may see how DOS Edit handles it. Also, the versions number - why all the bugfix minor revisions are stuck to 1.0? You may change to 1.0b, 1.0c, 1.02, 1.03... or something like this. Why there's no key shortcut for "Help-About"? Maybe it will be more convenient if a single press of <Alt> key activates "File" menu, even without dropdown submenu "unfolded", for further navigation with cursor keys. There's no option for saving file when exit with unsaved changes - this may be added too. There's no "Close file" option with same functionality when closing file with unsaved changes - not sure, if this is needed without multiple file opened for edit implemented functionality.

Maybe there will be more things to be fixed in the future, but these are "my $0.05" after the first quick test.

Thanks for testing! CTRL+SHFT+Z is the norm so I'll add that combo and silently leave the CTRL+Y combo in there just in case. The menu combos you mentioned your lastest reply have been fixed, I just haven't had time to commit it to GitHub yet.

VERSIONS! I've always hated version numbers, they remind me of line numbers in really old micro BASIC:

10 Print "Hello world!"
11 LET $A = $B
20 goto 10

Oh crap now I need to add something between 10 and 11. Perhaps I've over thinking 😁
You are right and I'll get my act together with it, I'll also include a CHANGELOG.md in the repo for those interesting in the development.

Close file is a bit pointless at the minute seeing as only a single file can be opened but I'm working on a plan to allow editing of multiple files of any size and have more space for clip, undo/redo scratch areas. That'll be an epic improvement as currently text space is limited to 8KB, not bad for small projects but developers won't stand for it.

Currently F10 activates the menu but that isn't obvious and is probably archaic so yes I will bind the ALT key up event to activate the menu.

Asus P5A v1.06, Gigabyte GA-6BXDS, Soyo SY-5EMA (faulty), Viglen 486, Asus SP97-V

Reply 19 of 20, by aVd

User metadata
Rank Newbie
Rank
Newbie
cookertron wrote on Today, 09:47:

Thanks for testing! CTRL+SHFT+Z is the norm so I'll add that combo and silently leave the CTRL+Y combo in there just in case. The menu combos you mentioned your lastest reply have been fixed, I just haven't had time to commit it to GitHub yet.

You're welcome. I'm glad, if I can help with some bugs report and suggestions. I'll check your github repo for the latest version of code later.

cookertron wrote on Today, 09:47:
VERSIONS! I've always hated version numbers, they remind me of line numbers in really old micro BASIC: […]
Show full quote

VERSIONS! I've always hated version numbers, they remind me of line numbers in really old micro BASIC:

10 Print "Hello world!"
11 LET $A = $B
20 goto 10

Oh crap now I need to add something between 10 and 11. Perhaps I've over thinking 😁
You are right and I'll get my act together with it, I'll also include a CHANGELOG.md in the repo for those interesting in the development.

It's not something important, but it's strange all different revisions to go under version 1.0. Now I have three different notepad.com files with different size and bugs and they're all showing "v1.0" 🤣

cookertron wrote on Today, 09:47:

Close file is a bit pointless at the minute seeing as only a single file can be opened but I'm working on a plan to allow editing of multiple files of any size and have more space for clip, undo/redo scratch areas. That'll be an epic improvement as currently text space is limited to 8KB, not bad for small projects but developers won't stand for it.

Just a thought. It may be useful in case of multifile editing.

cookertron wrote on Today, 09:47:

Currently F10 activates the menu but that isn't obvious and is probably archaic so yes I will bind the ALT key up event to activate the menu.

I'll check this out. Thanks for your response and your work on this text editor program.

I forgot something important. Find and Replace functions now work fine, but finding text is case sensitive. Maybe a checkbox with option for "case sensitive text on/off" in find "field" will be nice addition.

BTW I tried the disassembly function of agent86.exe on the latest notepad.com just for the experiment, but it just started to generate some JSON-like file for too much time, so I canceled the process before it finish the job (after more than 10 minutes). This is not the thing, that I was expected and I'm still curious how the disassembled code looks.

DOS fan | "artificial intelligence" - not a fan... not a fan at all