"Bones heal. Chicks dig scars. Pain is temporary. Glory is forever." - Robert Craig "Evel" Knievel
“Leave me alone, I know what I’m doing.” - Kimi Raikkonen
.inesprg 1 ; 1x 16KB PRG code
.ineschr 1 ; 1x 8KB CHR data
.inesmap 0 ; mapper 0 = NROM, no bank swapping
.inesmir 1 ; background mirroring
;;;;;;;;;;;;;;;
.bank 0
.org $C000
RESET:
SEI ; disable IRQs
CLD ; disable decimal mode
LDX #$40
STX $4017 ; disable APU frame IRQ
LDX #$FF
TXS ; Set up stack
INX ; now X = 0
STX $2000 ; disable NMI
STX $2001 ; disable rendering
STX $4010 ; disable DMC IRQs
vblankwait1: ; First wait for vblank to make sure PPU is ready
BIT $2002
BPL vblankwait1
clrmem:
LDA #$00
STA $0000, x
STA $0100, x
STA $0200, x
STA $0400, x
STA $0500, x
STA $0600, x
STA $0700, x
LDA #$FE
STA $0300, x
INX
BNE clrmem
vblankwait2: ; Second wait for vblank, PPU is ready after this
BIT $2002
BPL vblankwait2
LDA #%10000000 ;intensify blues
STA $2001
Forever:
JMP Forever ;jump back to Forever, infinite loop
NMI:
RTI
;;;;;;;;;;;;;;
.bank 1
.org $FFFA ;first of the three vectors starts here
.dw NMI ;when an NMI happens (once per frame if enabled) the
;processor will jump to the label NMI:
.dw RESET ;when the processor first turns on or is reset, it will jump
;to the label RESET:
.dw 0 ;external interrupt IRQ is not used in this tutorial
;;;;;;;;;;;;;;
.bank 2
.org $0000
.incbin "mario.chr" ;includes 8KB graphics file from SMB1
It just makes a blue background but it freaking works
Back in those days, or even earlier, there weren't all that many computers on the market, and not all that much computer skill out there. However, all IBM PC and PC clones that came with DOS also came with some flavor of BASIC. So, I'd take the display model and write something like:
10 Print "Help, I'm trapped in a computer!"
20 Goto 10
and run it. As soon as the lines scrolled off the screen you'd think it would just look frozen, but since those screens tended to be pretty much crap in those days, it would flicker a bit as it sat there.
I figured that it would be a little test for the sales staff to see whether or not they knew enough about what they were selling to even stop a perpetual loop.
I saw where you spelled your name SaM. You need to go back to your 6 year old self and remind him about how important casing is, especially in C based languages! Just kidding, I love seeing old stuff like this.