2 posts / 0 new
Last post
Commodore 128 "Easter Eggs", bytes, CP/M, and character sets
I'm sure we're all aware of the good ol' native mode SYS 32800,123,45,6 to produce the list of the extremely talented persons who brought us the Commodore 128. I think it's interesting how that when invoking the CP/M mode easter egg that Von Ertwine and Terry Ryan's names have been switched in order. Plus there is no "anti-war" message. I think I saw a video somewhere that Bil Herd had no idea that the easter egg was baked into the 128's ROM. How many bytes did the message actually take? I would assume that it would comprise of both the message and the code necessary to decrypt and display it. In addition I wonder if anyone knows if the CP/M mode 'easter egg' used a different codeset or pointed to what has been already there. I have gone over and over the CP/M mode source code, but haven't seen anything remotely resembling the "easter egg". Then again, going through the C128 ROM using the monitor doesn't even readily reveal it. Also: the C128's CP/M character set is slightly different than the C128's native mode's. CP/M actually has items such as the carat (^), vertical bar (|), backslash (\), grave accent (`), tilde (~), curly braces, etc. Maybe Bil if you're around, do you know if this is in the 128's ROM or did Von bake it into his CP/M build? By the way, whatever happened to Von Ertwine? As I understand it, he didn't actually work at Commodore but was outsourced to work on CP/M. Bil: how much collaboration & communication did you guys have with him? I've pictured him to be on his own with his trusty popcorn butter dish sitting on his 8563 in his own world. I've never really seen much to be said about him, but looking at his code he really knew his stuff!
Edited by: Don Szydlowski on 2018-05-01 22:05
anti-nuke easteregg and von ertwine

Last I recall, the anti-nuke easteregg is 155 bytes.

Coincidentally, I wrote an 'easteregg' rom generator (using nodeJS) a few weeks ago. Works a-ok as long as you're willing to drudge through "$ffd2 streaming" by yourself or by using the program below  (sorry, no easteregg editor yet) in order to create the raw bytes needed for a new message. .. Available at this link - https://csdb.dk/release/?id=170660

Here's a small basic program that will dump the easteregg to raw bytes at "bank1" $1300 ..

... so you can view / edit easteregg text with the ML monitor, after it is done .. ( by using the command : M 11300 )

10 rem this program reads easteregg from rom, decrypts to plaintext, saves to memory at b1-$1300 and dumps egg as char/hexbyte to screen -xmikex 2018
20 bank15:lc=4863:fori=1to155:x=i:y=peek(44643+i):x=xor(x,y):a=xor(y,x):y=123:x=xor(x,y):y=0:a=xor(y,x):rem y=0 for plaintext
30 printchr$(x);:bank1:pokelc+i,a:bank15:nexti:print:print
40 a$="":bank1:fori=1to155:cc=cc+1:x=peek(lc+i):x$=right$(hex$(x),2)
50 print using "##";x$;:next
60 bank15:print:end

A more polished (and compiled) form of the above script is available at the following link : https://csdb.dk/release/?id=172739


As for Von Ertwine, he is on linkedin !

https://www.linkedin.com/in/von-ertwine-078580b (this page might require linkedin signup)

Cheers !

Log in or register to post comments