| |
Shadow Account closed
Registered: Apr 2002 Posts: 355 |
Can't the LOAD command be used in a basic program?
1 LOAD"ROUTINE",8,1
2 SYS 49152
RUN
Ends up in a endless loop, so I guess it doesn't do what I expect it to do...
(This may seem stupid, but it would be very handy for me when crossdeving for the DTV, as I need to load the files from 64HDD all the time, with this I could just do "run" to load the lastest routine from disk and execute) |
|
... 23 posts hidden. Click here to view all posts.... |
| |
enthusi
Registered: May 2004 Posts: 677 |
not THAT much harder to poke them into memory, including the data-token and the new basic-end. |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
@Oswald: You cannot continue if the BASIC-program has been changed. If you just change variables or just LIST etc you can continue. |
| |
TDJ
Registered: Dec 2001 Posts: 1879 |
Quote: :PPP right I am...
devia, I was ofcourse way too rude, just please dont explain one of the most simplest basic programs in the universe.
the key was that the program restarts, but there's no variable reset. An in depth ROM dissecting explanation on this would be welcome.
One of the 'most simplest' (sic)? There's not even a "Hello wolrd" in there! |
| |
enthusi
Registered: May 2004 Posts: 677 |
this one is so much nicer :)
0 poke55,138:poke56,228:clr
1 a$="ibm"
2 b$="macintosh"
3 print a$;"+";b$;"=";a$+b$ |
| |
Mace
Registered: May 2002 Posts: 1799 |
Hahaha, this one is cool! :) |
| |
Shadow Account closed
Registered: Apr 2002 Posts: 355 |
Yeah, that was an unexpected program behavior. Cool! Now how does it work?? |
| |
AüMTRöN
Registered: Sep 2003 Posts: 44 |
I'm not completely sure how it works, but $37/38 (highest addr used by basic) is being set to $e48a. If you look at the ROM below $e48a it has the string "COMMODORE 64" (part of the startup text). I also think the length of the string "IBM"+"MACINTOSH" has something to do with it.
Anyone? :) |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
hmm..? :) |
| |
iAN CooG
Registered: May 2002 Posts: 3197 |
Quote: I'm not completely sure how it works, but $37/38 (highest addr used by basic) is being set to $e48a. If you look at the ROM below $e48a it has the string "COMMODORE 64" (part of the startup text). I also think the length of the string "IBM"+"MACINTOSH" has something to do with it.
Anyone? :)
It's simple, the temp var that would contain "IBMMACINTOSH" is being built in the RAM under the ROM, and when retrieved for display it prints the string in ROM at the same address. Normally temp vars are allocated from $9fff down to $0801. |
| |
AüMTRöN
Registered: Sep 2003 Posts: 44 |
Aha! Makes sense :) |
Previous - 1 | 2 | 3 | 4 - Next |