| retrohackers.org https://retrohackers.org/ |
|
| basic keywords https://retrohackers.org/viewtopic.php?f=8&t=23 |
Page 1 of 2 |
| Author: | hannenz [ Thu Jan 12, 2006 10:52 am ] |
| Post subject: | basic keywords |
i found out that the BASIC Keywords added by the RR-ROM are located at Offset $250e. But where are the corresponding adresses to them...?! Is there an easy way to _add_ new keywords, else i'd like to change one i never use ("merge" for example) to fit my own purposes (execute the jumpback routine of TMP+REU) |
|
| Author: | Devia [ Thu Jan 12, 2006 11:07 am ] |
| Post subject: | |
Well I located the code for the TASS keyword once so I should be able to do the process again If I find them.. and still understand them, I'll do a map of the keywords if it's not gonna be too big a job. |
|
| Author: | hannenz [ Thu Jan 12, 2006 12:22 pm ] |
| Post subject: | |
thanks. |
|
| Author: | Frantic [ Thu Jan 12, 2006 3:50 pm ] |
| Post subject: | |
I would like this too. I remember changing "TASS" -> to "JCH" once though when patching a RR-rom with the JCH editor for goto80 once and that worked fine, but having a clear list of the ones which are available and instructions on how to add new ones would be very nice too of coz. |
|
| Author: | hannenz [ Fri Jan 13, 2006 11:19 am ] |
| Post subject: | |
ok, i found out myself now: the keywords are located at ROM-Offset $2507. the corresponding adresses (minus 1, as usual) are located @$2572. Code: ROM-Offset Keyword Adress (add 1!)
----------------------------------------------- 2507 / $8273 2508 $ $82d1 2509 % $8248 250a ^ ArrowUp $8261 250b Pound $8297 250c @ $829d 250d & $8276 250e old $821e 2511 delete $81fd 2517 linesave $8176 251f merge $8617 2524 auto $86d4 2528 monitor $8997 252f append $822e 2535 copy $82ea 2539 boot $84ae 253d zap $84c7 2540 backup $82c9 2546 plist $85ac 254b "slist" $85a9 2552 on $82f7 2554 off $82f4 2557 find $80e0 255b renum $8163 2560 info $81c0 2564 tass $80e6 2568 ssget $80ee 256d tool $8104 2571 0-Byte ----------------------------------------------- |
|
| Author: | Zone64 [ Fri Jan 13, 2006 12:23 pm ] |
| Post subject: | |
Good work, hannenz! Now we can add some REU commands, like STASH and FETCH, and I can say C128-mode goodbye forever. |
|
| Author: | hannenz [ Fri Jan 13, 2006 3:14 pm ] |
| Post subject: | |
well, adding NEW commands won't be that easy, since you would have to set anown parser before the RR-one (which sits - as i suggest - right before the CBM-BASIC-one) that parses for the new keywords and if not found jumps to the RR-Parser. I don't say that it's impossible but it surely is quite a task. It would be cool, if there was a source code of the 3.8b ROM, or as suggested somewhrer else - waht about making this "open source"...??! but back to the topic: you can quite easily change existing commands now. Just replace the keyword (same length, last char shifted) and change the corresponding adress (minus 1!), the new code must be in ROM-Offset $2000-$3fff there is seom free space at about $3dxx... but after all - before we start hacking this ROM into pieces and make it boast of patches, wouldn't it be better to collect ideas of what should be implemented, changed, fixed or patched and then start doing all of it (having a source code would make life much easier of course...!) |
|
| Author: | RaveGuru [ Fri Jan 13, 2006 6:16 pm ] |
| Post subject: | |
hannenz wrote: but after all - before we start hacking this ROM into pieces and make it boast of patches, wouldn't it be better to collect ideas of what should be implemented, changed, fixed or patched and then start doing all of it (having a source code would make life much easier of course...!)
I agree! I've been thinking about this for some time, and I think modularity would be the most important aspect of designing a new ROM: 1. At compile time: Designing the source code in such a way that you can easily customize it by adding/removing kernel source modules. 2. At run time: Provide an integrated modular Flash system that makes it possible to add/remove binary kernel modules or programs. Well.. only for starters... |
|
| Author: | hannenz [ Fri Jan 13, 2006 7:51 pm ] |
| Post subject: | |
we should decide where we wnat to go from here on: hacking the existing RR-3.8b is one thing, designing a complete new ROM (from scratch) another. An immediate way would be to have the source codes of the 3.8b and modifying this. Who owns the source? count zero? @raveguru: this concept about modularity sounds good... after all we should know what we want and start developing (whatever) together. |
|
| Author: | groepaz [ Fri Jan 13, 2006 11:54 pm ] |
| Post subject: | |
countzero yes. and i'd forget the idea of a public release of the source, atleast for a (long) while |
|
| Author: | Zone64 [ Sat Jan 14, 2006 3:32 am ] |
| Post subject: | |
hannenz wrote: well, adding NEW commands won't be that easy, since you would have to set anown parser before the RR-one (which sits - as i suggest - right before the CBM-BASIC-one) that parses for the new keywords and if not found jumps to the RR-Parser. Yeah, I meant replacing the existing not-so-exciting BASIC commands. But as far as I know, RR simply changes some of the BASIC vectors at $0300-$030A and pre-interprets all BASIC commands. According to VICE: Vanilla C64 .0300 8B E3 warm start .0302 83 A4 input delay loop .0304 7C A5 conversion to interpreter code .0306 1A A7 interpreter code to text .0308 E4 A7 execute BASIC command .030a 86 AE evaluate BASIC expression C64 with Retro Replay .0300 8B E3 .0302 8F DE .0304 7C A5 .0306 1A A7 .0308 E4 A7 .030a AC DE So my uneducated guess is that it jumps to $DExx, unhides the RR ROM and then jumps to the corresponding RR routines. I'm sure there are others who know all the details of this. It seems it does not change the CHRGET-routine at $0073. hannenz wrote: but after all - before we start hacking this ROM into pieces and make it boast of patches, wouldn't it be better to collect ideas of what should be implemented, changed, fixed or patched and then start doing all of it (having a source code would make life much easier of course...!)
Good idea. I presume an united effort like a Source Forge project is unrealistic. |
|
| Author: | RaveGuru [ Sat Jan 14, 2006 2:01 pm ] |
| Post subject: | |
hannenz wrote: An immediate way would be to have the source codes of the 3.8b and modifying this.
Who owns the source? count zero? groepaz wrote: countzero yes. and i'd forget the idea of a public release of the source, atleast for a (long) while Well.. i think it's just sad if he's just gonna sit around on it! Apparently he's currently not using it for anything but perhaps personal purposes. But I really think designing a ROM from scratch would be the way. Question then is: Would we want to keep the BASIC interpretter? In a way the BASIC interpretter is the heart and soul of the c64. Without it, it would no longer feel C64 i believe. But face it - 99.9% of the time we use it for LOAD"*",8:RUN. It takes up precious space in ROM and most of the time a well equipped DOS wedge is what we need. If the BASIC interpretter was thrown out the available ROM could be used for TCP/IP and MMC routines, etc. I think it's an interesting thought! What do you guys think? |
|
| Author: | groepaz [ Sat Jan 14, 2006 3:12 pm ] |
| Post subject: | |
Quote: Well.. i think it's just sad if he's just gonna sit around on it! Apparently he's currently not using it for anything but perhaps personal purposes.
well thats what its is - countzeros personal pet project. i dont see anyone complaining about graham "sitting around" on his TFR sources either. |
|
| Author: | Stinky [ Sat Jan 14, 2006 5:37 pm ] |
| Post subject: | |
groepaz wrote: Quote: i dont see anyone complaining about graham "sitting around" on his TFR sources either. If anything, I'd prefer a copy of graham's source. TFR would be perfect with a nice freezer... |
|
| Author: | RaveGuru [ Sat Jan 14, 2006 8:59 pm ] |
| Post subject: | |
groepaz wrote: i dont see anyone complaining about graham "sitting around" on his TFR sources either.
Well. Graham is still active developing it. If C0 only intends to use it for petting, then i don't see the problem releasing it for others to continue the work. He's done a terrific work so far so it would be sad to just let it fade away now... But yeah, he just got 3.8B released so who knows! Maybe we'll see a CyberPunx comeback in 2006 |
|
| Page 1 of 2 | All times are UTC [ DST ] |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|