Productivity Apps / Project Ideas

Basic and Machine Language

Moderator: Moderators

Post Reply
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Productivity Apps / Project Ideas

Post by Bobbi »

I have been looking through the images on zimmers.net with a particular interest in productivity apps (ie: anything but games!) I have put together a .d64 image with useful stuff like Speedscript, Practicalc, MightyTerm, Waterloo Basic, Basic v4, Pet Loader etc.

I am trying to find ways to actually use a Vic in my day-to-day development workflow somehow ;)

I am also looking for a fun 6502 development project.

It seems to me there is a "gap in the market" for a text editor with the following features: 40 column display, ability to edit files bigger than memory, storage on disk or tape in plain ASCII. I am thinking to write something like this in 6502 assembly, starting with the 40 column hires mode and gradually building up the text editor functionality.

Is anyone aware of a text editor which can handle 40 columns, or can manage buffers bigger than RAM?

Are there any other productivity applications I am overlooking?

If I do go ahead and implement this thing, any feature requests? (Don't hold your breath, it may take me a while to actually code this in spare moments here and there ...) Initially I was thinking it should be a vi clone, but I am not sure I can be bothered to replicate the functionality of an existing editor - could be a lot of work!
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Productivity Apps / Project Ideas

Post by Mike »

Bobbi wrote:[...]Waterloo Basic[...]
Quite some time ago, I did a bug-fixed and slightly extended version of Waterloo BASIC. You find it here. Be aware though, it's a *.bin file which is missing the 2 bytes with the load address. This version has also been included on Mega-Cart.

The repository linked to above also contains an image of the Programmer's Aid cartridge relocated to $B000. This one is a *.prg file with proper load address.
Is anyone aware of a text editor which can handle 40 columns, or can manage buffers bigger than RAM?
vi had been ported to the VIC-20 around 2010. See here. Besides other screen sizes, it also does 40x22 characters (the VIC chip easily supports 40x24 in that mode - at that time I wrote an e-mail to Soci asking for the two extra rows, sadly enough, nothing happened upon the exchange ... :()

However, vi itself is not exactly my cup of tea. Neither does this implementation support file sizes bigger than RAM. The latter feature being a chapter in itself, really ...
Are there any other productivity applications I am overlooking?
... but if you bring such an editor into existence, then, IMO it would best be accompanied by a symbolic assembler capable of assembling itself and the binary of the editor. ;)

And for existing apps, here's a shameless plug for MINIPAINT. :mrgreen:

The Announcement Board of Denial also contains quite some productivity apps (not only games!) in the Software Releases threads.
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

I will check out that vi clone. I will also add Minipaint to my disk of useful stuff :)
I agree a self-hosting editing and symbolic assembler would be pretty neat-o.
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

Minipaint rocks :)

Did you have any luck getting vi65 to run with more than 22 columns? I can run the 22 column version, but the 32 or 40 column versions give a corrupt display. The program does seem to be running though because ':q' quits!
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Productivity Apps / Project Ideas

Post by Mike »

Ah, yes. This had been the other reason I wrote to Soci. Both v0.1 and v0.2 versions put the text screen (which serves as address generator into the bitmap) at $0400.

This is a big blunder and only happens to "work" (by mistake, really) on extremely old versions of VICE, but not on real hardware. Unless the VIC-20 has been *internally* expanded with +3K as I had done with my VIC-20. And not necessary either: the 160x192 resolution can be made to work on an unmodified VIC-20, in the address range of $1000..$1FFF (i.e. the upper 4K of the built-in RAM).

As noone can be expected to modify their VIC-20s just to run vi, this means a 40 column version of vi still does not exist. Sadly this was the only candidate that came to my mind. :(
Minipaint rocks :)
... and it comes along with a full programming suite for any conceivable batch processing task. 8)
Last edited by Mike on Sun Oct 23, 2016 3:28 pm, edited 1 time in total.
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

If I understand you correctly it needs memory at 0400 which is the location of the 3K RAM pack but the memory needs to be internal so VIC can access it? That is a bit of an oopsie on the part of the implementer.

On the other hand it gives me more of a reason to develop a 40 column text editor that actually works on real hardware!
User avatar
Mike
Herr VC
Posts: 4816
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Productivity Apps / Project Ideas

Post by Mike »

Bobbi wrote:If I understand you correctly it needs memory at 0400 which is the location of the 3K RAM pack but the memory needs to be internal so VIC can access it?
Exactly. Even though there exist register values which would suggest that text screen or character generator could be pointed into the range $0400..$0FFF, that memory is actually inaccessible for the VIC chip, if it is added as external RAM expansion. The VIC chip cannot access *anything* at the expansion port. I modified my VIC-20 to make this address range visible to VIC with an internal RAM expansion, in 2010. But for other reasons. :)
That is a bit of an oopsie on the part of the implementer.
You say it.
On the other hand it gives me more of a reason to develop a 40 column text editor that actually works on real hardware!
+1 :)
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

I agree that a hardware hack seems a bit much to run a text editor. Even vi!
User avatar
orion70
VICtalian
Posts: 4337
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: Productivity Apps / Project Ideas

Post by orion70 »

Bobbi wrote:I have been looking through the images on zimmers.net with a particular interest in productivity apps (ie: anything but games!) I have put together a .d64 image with useful stuff like Speedscript, Practicalc, MightyTerm, Waterloo Basic, Basic v4, Pet Loader etc.

I am trying to find ways to actually use a Vic in my day-to-day development workflow somehow ;)
May I address your search in TOSEC archive. There, you can find as much as 150 files in 8 "applications" directories, mostly in PRG form. Happy digging :)

Also, please try my own software collection, containing several apps here and there.

Last but not least, take a look at the thread dedicated to Practicalc Plus, which is a beefed-up version of Practicalc with (primitive) graphics and other new features.
Bobbi wrote:It seems to me there is a "gap in the market" for a text editor with the following features: 40 column display, ability to edit files bigger than memory, storage on disk or tape in plain ASCII. I am thinking to write something like this in 6502 assembly, starting with the 40 column hires mode and gradually building up the text editor functionality.

Is anyone aware of a text editor which can handle 40 columns, or can manage buffers bigger than RAM?
You'd really fill a major gap in VIC's productivity offer. Can't wait... Thanks in advance, and don't forget to implement printing features :).
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

It may take a while but I do plan to actually implement this!

I have started out playing with some ideas for a 40 column mode. Once that is in better shape I will start work on the core of the editor. The first versions may be a bit feature poor but I plan to eventually add some 'word processing' functions like printing, justification / word wrap etc. First version will probably be more suitable as a programmer's editor.

It's a spare time project so it may take a while. (Right now I have too many bugs to look at in my day job, so progress is slow!)
Boray
Musical Smurf
Posts: 4064
Joined: Mon May 03, 2004 10:47 am

Re: Productivity Apps / Project Ideas

Post by Boray »

If I would make a text editor, I would do it in with normal 8x8 characters on a 26x33 screen. That is visible in PAL and you get 858 characters on screen compared to 880 with a 40x22 screen. You would get a more readable screen and as it uses the normal 8x8 characters it would also support special keyboards like the Swedish one with ÅÄÖ. It would also be MUCH easier to program and probably require less RAM and CPU. But if you live in NTSC land I guess this isn't an option.
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
Bobbi
Vic 20 Afficionado
Posts: 355
Joined: Thu Oct 13, 2016 11:35 am
Location: Toronto
Occupation: Programmer

Re: Productivity Apps / Project Ideas

Post by Bobbi »

Yes I would like this to work on my NTSC VIC.

This is the third VIC I have owned but the first NTSC one! (I grew up in UK.) It is amazing how much bigger the PAL screen is than NTSC. On the other hand I like having smaller borders in 22x23 text mode!

For this project I guess "harder to program" is a feature, not a bug!
Post Reply