Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment Re:Commodore 64? (Score 1) 330

You could remap the ROM-space in basic, too.

There was 64k of ram, and only 64k of address space, so the ROM was using some of that address space by necessity. You could remap the address space to RAM-only but that would cause several things to stop working. The trick was to copy some parts of the ROM to RAM and then you could change the pointers to things like where the screen-font and such that were usually in ROM were now stored. As long as you did some prep-work, it was easy to run with a flat address space available to you. This technique was used a lot of the time to be able to edit bits of the ROM while still remaining in a fairly standard environment.

Also, the difference between BASIC and assembly could be fuzzy. I still have a book on machine language for the C64 which starts with simple programs being entered in basic using DATA statements combined with POKE and READ to load them directly to memory and then manually set the instruction pointer to the beginning of your program. All that was do-able in BASIC, which is how I wrote an assembler in ML via BASIC to allow me to use opcode names instead of remembering that LDA == $A9 == 649 decimal (load a value into register A).

OK, I admit I looked up that opcode, but it's been 20 years. :) I was 8. :P

Slashdot Top Deals

Too many people are thinking of security instead of opportunity. They seem more afraid of life than death. -- James F. Byrnes