What would you include if you redid your 128's ROMS?

Started by gsteemso, May 08, 2009, 08:48 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

gsteemso

Kernal ROM replacements are nothing new. Most of us probably have JiffyDOS or a similar fastloader, for example. (Note that a cartridge ROM sorta counts here too.) The trouble is, when you buy one off somebody, you're limited to that one modification unless you're a skilled assembly programmer and can get your merged code into an EPROM somehow.

So, if you could redo the 128's system ROMs using today's codebase, what would you include?

Here are some ideas to start us off:

- JiffyDOS
- a better MONITOR function
- improved 80-column text handling (video-interlace mode for 80x50 work, autosense of whether the 80-column screen is in "fat 40" mode, etc.)
- improved RS-232 routines that work out of the box, so you can simply write your communications program code instead of fighting with stuff that was theoretically already there

If you used an expansion cartridge instead of a Kernal replacement, you could include transparent IEEE-488 handling and Ethernet capability as well. That starts to get into the realm of "dream expansions" like µIEC and SuperCPU though, so we should probably limit ourselves to considering only what can fit in a ROM.

What would you want to include?
The world's only gsteemso

airship

I love Dan's Megabit ROM for the internal socket, and I've got JiffyDOS in the Kernal of my C128. But I've got a blank ROM socket just sitting there on my 1764 REU that I'd love to populate with something. I don't know if BDD's 80 column display manager and clock-calendar routines could be made to work from ROM, but that would fill a void.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

commodorejohn

I'd strip out BASIC entirely except for the necessary functions for load-and-run ML programs, remove RS-232 support, and replace it with file-copy functions and (hopefully) built-in FAT12 support.

gsteemso

Another possibility that just occurred to me is to include GEOS support right in the ROMs. (For example, update the drive ROMs to know about VLIR files.)

Another one that would be useful for all models of commodore using a VIC or VIC-II chip would be to fix the Kernal "How big is the text screen" function to actually reflect the current settings of the display hardware.
The world's only gsteemso

megabit

I would like to find a good fast save routine that I can put in BASIC ROM that will work with all the disk drives. I know that JiffyDOS will fast save, but I don't like switching back and forth. I have routines in BASIC ROM and KERNAL ROM that I use when I'm fooling around with my 128.

In BASIC:

When I first started playing with the operating system, I changed the ready prompt from READY to OK DAN, I'M READY.

QUIT has been changed to PSCN - the routine will print text from the screen to a printer (device 4).

OFF has been changed to LLT - the routine will print a basic listing to a printer (device 4). It works like the LIST CMD, it will print one line or any number of lines.

BACKUP has been changed to DMERGE - the routine will merge two basic programs and renumber them. It has the same CMD structure as DLOAD, DSAVE, etc. I don't have a dual drive, so I don't use BACKUP.

A routine called DRVSW that will look on the serial bus for any 1571 drives and switch them to 1541 mode. It works like a toggle switch, call it again and the drives will switch back to 1571 mode. It comes in handy when you need a 1541 formatted disk using the HEADER CMD.

Revamped the internal MONITOR also, better displays, print routines, disk drive access.

In the KERNAL:

Disabled the autoboot routine from startup and reset. I don't like to force the stepper motor on my disk drive to track 1 sector 0 every time I turn the 128 on or reset it.

Changed the function keys for my pleasure.

A routine that makes a little tic sound every time a key has been pressed.

Dan...

megabit


Blacklord

Quote from: megabit on May 10, 2009, 12:24 AM

Well, I quess I killed this topic. Sorry.

No, I think you managed to cover just about everything :)

darylknowles

Hi there!  It's been over 20 years since I've talked Commodore!  (Does anyone remember BX Basic?)

I would probably remove the BASIC rom, although from what I remember some of the 'system' stuff was burried in there and indeed my extentions would have been impossible without it. 

I would probably remove anything that supported the 40-column mode and see about booting into an 80 column graphic mode OS. 

RobertB

Quote from: darylknowles on May 10, 2009, 07:31 AMDoes anyone remember BX Basic?
I haven't heard of that one.  From where does it come?

                     Truly,
                     Robert Bernardo
                     Fresno Commodore User Group
                     http://videocam.net.au/fcug
                     July 25-26 Commodore Vegas Expo - http://www.portcommodore.com/commvex

BigDumbDinosaur

Quote
I don't know if BDD's 80 column display manager and clock-calendar routines could be made to work from ROM, but that would fill a void.
80CDM could work from ROM without alteration.  CC128 would require a few changes, as it has some self-modifying code in it to sniff the stack to determine if any part of the screen kernel that accesses the VDC was interrupted.  Both programs bury their data tables under the kernel ROM at the very top of memory—CC128 writes into the unused RAM above the MMU registers at $FF00.  As long as that area is protected, nothing should go askew.
x86?  We ain't got no x86.  We don't need no stinking x86!