Ok so… it’s been 8h40
.
I have done a lot (I mean it’s logic it’s been 8h and 40 minutes)
In time order I have done :
-
Replace
self.pc + 1toself.pc.wrapping_add(1)so it’s like on the real 6502 if the current PC is$FFFFand you add 1 it will be$0000. -
Added a panic hook, before when the program was crashing (for a bad ASM program by example) the terminal was still in RAW mode (so if you click, move the mouse etc… it will print a bunch of garbage number) but now it exit the raw mode in a clean way !
-
Remove unused import
-
Change the start of the Stack Pointer to
$1FFF -
Added a memory reset function
-
Write a bunch of test programs

-
Replace IPS (instruction per seconds) by Hz and MHz like in real life
(so i’ve adapted the UI for the change) -
Now the disassembler disassemble the whole program (neat right ?
) using .len(). (yes before it was an hard-coded number
-
Optimize the screen render method. Before I was refreshing the screen even if nothings has been changed, now i check if somethings have been changed to update the screen

-
Added address of each “quarter” of the screen in the screen documentation

-
Fixed foreground and background color of the Frequency selector (on the Home Screen)
-
Write a program to test
IRQandNMI -
Keybinds the
IandNkey toIRQandNMI
-
Changed the Hello World program to be rainbow

-
The emulator will look by it self to the reset vector (
$FFFCand$FFFD) to set the PC at the correct address -
Added a force address toggle to… force the the start address
-
When the force addr toggle is off you can’t modify the start Addr and it’s darker
-
Every file or folder who start by a
.(dot) is not shown in the file selector
-
Moved the hackclub logo raw binary data to a .inc file

-
Added a self crashing test program

(Next time I might add a PS/2 keyboard emulation…
)
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.