Jump to content
mytek

Was SpeedScript ever made into a Cart?

Recommended Posts

On 4/15/2022 at 1:46 PM, mytek said:

Me too :)

 

For me it was always about simplicity, while not giving up usability in a basic word processor/editor. I always liked the true descenders as part of the special font that was used, and really didn't miss the fewer lines as a result of this decision. Excellent readability, especially with the choice of the gray background color behind the black text 👍

 

screenshot.png.54b953e95a5b0824c1049fc7d66ac675.png

 

This program deserves to share one of the 8K slots in a U1MB.

 

To me, a long time simplicity guy (love Atariwriter and Plus), Speedscript is by far the easiest on the eyes.  Very capable, easy to learn, easy to adjust the brightness and text and background color.  I always loved the black text on a pure white field.  Man, put this on a cart, I will use it again.

  • Like 1

Share this post


Link to post
Share on other sites

Hello guys

 

Why not put The Last Word on cart instead?

 

Sincerely

 

Mathy

 

Share this post


Link to post
Share on other sites
25 minutes ago, Mathy said:

Hello guys

 

Why not put The Last Word on cart instead?

 

Sincerely

 

Mathy

 

Because this will not be a cart - it will be a multi-ROM that permits the user to choose Atari BASIC, SpeedScript, or two other 8K ROMs.

 

But really, if someone wants to ROM-ify TLW, they should reach out to ask @flashjazzcat

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, David_P said:

Because this will not be a cart - it will be a multi-ROM that permits the user to choose Atari BASIC, SpeedScript, or two other 8K ROMs.

 

But really, if someone wants to ROM-ify TLW, they should reach out to ask @flashjazzcat

Exactly, couldn't have said it better myself 👍

 

And this is not just for my recent project with the 1200XL. It can also be used in the 576NUC+ and the U1MB, all of which have 8K selectable ROM slots.

 

  • Like 2

Share this post


Link to post
Share on other sites

Okay, I have something that seems to work! It's a standard 8K left cartridge which should allow DOS boot (I've only tested it from SpartaDOS X). I'm sure there are bugs, but I thought I'd get it out as quickly as possible so other people can help find them :)

 

speedcar.rom

 

CAUTION: I spent more time writing this post than I did testing the cartridge, so please don't entrust it with your most valuable documents yet.

  • Like 4
  • Thanks 3

Share this post


Link to post
Share on other sites

Brilliant. My own work just didn't and I'm very curious as to why. But we have similar arrangements in that my chrset is also the first page of the rom. And it does need to live at 0x2000. And I see a raft of data at 0x1F00 too with it running. Perhaps after a decent time of bug hunting you would release the source code? This is the first time I've seen the title screen myself so I'm not really qualified for the bug hunt. That's a job for the several enthusiasts.

Share this post


Link to post
Share on other sites

Bah! My plan to use C000 RAM won't work because, of course, that area is actually part of the OS ROM in the XL/XE machines. Oh well.

 

Source code is up at https://github.com/eyvind/speedcar - very rudimentary, there isn't even a README yet. Assemble with 

atasm -r -f255 speed0.m65 -ospeedcar.rom

If you want a .car file instead, the only way I know how to do that is to insert it in Altirra and then export the ROM image :)

  • Like 3

Share this post


Link to post
Share on other sites
13 hours ago, gilsaluki said:

I'm  in for a TLW cart.

I may get around to that one day; not because there seems to be any functional advantage to having a word processor on a cartridge (since you need to boot DOS anyway in order for the application to be useful), but because future re-writes of TLW will probably employ the UI found in FDISK, UFLASH, etc, and will therefore be pretty big, and a banked cartridge will be the best way to make it work.

 

Regarding SpeedScript: for those not aware, this program formed the basis of 'TextPro', which was my personal favourite word processor until I wrote TLW (which I wrote because - as great as TextPro was - it never really made a clean break from some of the less appealing design decisions of SpeedScript, such as using the CIO for parts of the UI, and having a linear text buffer which resulted in text insertion at the top of large documents being very slow).

  • Like 3

Share this post


Link to post
Share on other sites
Posted (edited)
7 hours ago, Eyvind Bernhardsen said:

Okay, I have something that seems to work! It's a standard 8K left cartridge which should allow DOS boot (I've only tested it from SpartaDOS X). I'm sure there are bugs, but I thought I'd get it out as quickly as possible so other people can help find them :)

 

speedcar.rom 8 kB · 7 downloads

 

CAUTION: I spent more time writing this post than I did testing the cartridge, so please don't entrust it with your most valuable documents yet.

 

It works!!! Looking Good 👍

 

Screenshot.thumb.png.d0daaecf3069ae07d5349ba2125abfc2.png

 

 

Since my current application has both a stock and PS/2 keyboard present, I think I'll add a SpeedScript command in my current project that allows the Home, End, PageUp, and PageDown keys to use the key strokes that do the same in SpeedScript. Although now that we have the source code, maybe down the road the TK-II alternatives could get added. Only a thought, but I am very impressed and happy to see it in its present form :)

 

 

TK-II_Nav-Key_codes.png.e7756e70cfa502ec3a05156664772d6e.png

 

 

So now I think I'll also program a new EEPROM for my 576NUC+ that has: Altirra Basic, Basic Rev C, Assembkler/Editor, and SpeedScript ;)

 

Should be very useful, and in homage to Atari I'll call it The Programmer ROM.

 

atari_programmer_join_resize.jpg?2afa42

 

 

 

EDIT: BTW, I thought this might be useful to others wishing to test or use this conversion.

 

2146577941_SpeedScriptkeymap.thumb.gif.159e58e55f0c3e93bdb48e693bc66cfd.gif

Edited by mytek
  • Like 4
  • Thanks 2

Share this post


Link to post
Share on other sites

Ok now I'm testing it in a ROM, along with SIO2PC as my disk drive.

 

So I cued up a copy of DOS2.5 in the SIO2PC, and rebooted the system with the SpeedScript ROM being used in one of the 8K Language SLOTS on what I'll call my PB1200 system (1200XL with TKII-PB1200 board, RAMBO XL 256K upgrade, and a UAV).

 

DOS loaded and setup a 130XE style ram disk - no problem, and then dropped into SpeedScript - ready to go.

 

I then wrote some text and used CTRL+S to save it to disk, then followed this with CTRL+M to get a dos menu, and verified that the file had indeed been written to disk.

 

Next I pressed SHIFT+OPTION+the "clear key" and acknowledged that I did want to erase all text at the prompt.

 

And finally I pressed CTRL+L and reloaded the TEST.TXT file, which it did.

 

That's all the time I have today, but I would like to update my 576NUC+ ROM, adding SpeedScript one of the SLOTS, and then do some printing with FujiNet in the near future.

 

Very cool to have this 8K jewel of a word processor. Makes for a quick and easy way to write some text. And although TLW on cart would be super cool, I think for only needing 8K SpeedScript is still quite capable.

 

  • Like 5
  • Thanks 1

Share this post


Link to post
Share on other sites

So, is next up shrinking BCalc or SpeedCalc to a 8K ROM as well, to have a system with selectable built-in word processor or spreadsheet?

Share this post


Link to post
Share on other sites

I've found a couple of bugs on RESET, still trying to fix one of them:

  • SpeedScript always sets the BOOT? flag, which means that the OS thinks DOS has booted and will lock up as it calls DOSINI during reset if there's no DOS. BOOT? and COLDST are set correctly before the cartridge is started, so I've fixed this by not setting those flags.
  • When testing in Altirra, performing any kind of delete after a reset complains that the delete buffer is full. I've tried to fix that by making it handle cartridge reset more like a disk reset, but that makes reset turns on caps lock for some reason. I'm still working on this one.

I also moved variables around a bit to save memory. The print buffer is 256 bytes, so I put that in $1F00 and moved the self-modifying code and the rest of the variables after the character set, freeing up 256 bytes for text (it's more than you might expect because text memory always starts on a page boundary). There is now only 1kB less space available than in the executable version, and that's because of the extra copy of the character set.

 

Another small fix: The program moves buffers into the DOS memory area when booted from cassette but doesn't consider that it might be booted from cartridge. I changed the test so it checks if DOS is booted instead, making another 2.25kB available for text if you don't boot from disk.

 

Here's a somewhat fixed version with more free memory while I poke at the RESET problem some more.

 

speedcarpre2.rom

  • Like 5

Share this post


Link to post
Share on other sites

The caps lock thing might be a quirk in Altirra's keyboard handling. I set a write breakpoint for the caps lock flag (SHFLOK), and while it's cleared by the OS during reset it somehow gets set to $40 without triggering the breakpoint by the time SpeedScript starts. I verified that this happens to the .EXE version of SpeedScript as well, so I'm reasonably sure it's not my code.

 

What I want to do is run the DOSINI routine, JDOS, instead of the full INIT (which clears SHFLOK) after reset, since that is what happens in the disk-based version. The quick and dirtyish solution is to clear SHFLOK in the JDOS routine, which solves the problem and shouldn't do any harm. Here's a build that does that.

 

Please let me know if you find anything that still doesn't work right!

 

speedcarpre3.rom

  • Like 1

Share this post


Link to post
Share on other sites

@Eyvind Bernhardsen I don't recall where I downloaded this from, and I just stumbled upon it when I was going through my folders of Atari stuff today. It has a lot of hand written notes in the source code section that may or may not prove useful.

 

SpeedScript - Manual & Source.zip

  • Thanks 1

Share this post


Link to post
Share on other sites

Since nobody has complained, I think I'll call this cartridge done. I did squeeze in an extra feature at great expense and at the last minute: this release binds the 1200XL's shift-F1 through shift-F4 keys to SpeedScript's paragraph (not page) up/down and home (top of document)/end functions. Those should correspond to your pgup/pgdn/home/end TK-II mappings, @mytek, but I've only tested in emulation so far so I'm not sure that they are correct.

 

speedcarpre4.rom

 

I'll make a proper release of this on github (with binary downloads) this weekend, so as always, please let me know if you find any bugs.

  • Like 2
  • Thanks 2

Share this post


Link to post
Share on other sites
1 minute ago, Eyvind Bernhardsen said:

Since nobody has complained, I think I'll call this cartridge done. I did squeeze in an extra feature at great expense and at the last minute: this release binds the 1200XL's shift-F1 through shift-F4 keys to SpeedScript's paragraph (not page) up/down and home (top of document)/end functions. Those should correspond to your pgup/pgdn/home/end TK-II mappings, @mytek, but I've only tested in emulation so far so I'm not sure that they are correct.

 

speedcarpre4.rom 8 kB · 1 download

 

I'll make a proper release of this on github (with binary downloads) this weekend, so as always, please let me know if you find any bugs.

I'll give them a test, and then let you know a bit later today  :)

 

  • Thanks 1

Share this post


Link to post
Share on other sites

Works perfect for me as well 👍

 

Thank you for doing this. Nice to see those extra key functions getting some use.

 

  • Like 1

Share this post


Link to post
Share on other sites
7 hours ago, Eyvind Bernhardsen said:

Thanks for the testing, @Atari8guy and @mytek!

Your welcome, but more thanks should go to you for making my request a reality.

 

7 hours ago, Eyvind Bernhardsen said:

I would have liked to get a proper page up/page down, but I don't understand SpeedScript's screen formatting well enough to do it yet. Maybe in a future release :)

I like the previous/next paragraph function, but if you do decide to make it go a page at a time, it might be nice to retain the paragraph feature as a SHIFT+PageUp/PageDn instead.

 

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...