I've managed to upload the Python stuff covered in this thread to GitHub: https://github.com/fschuhi/Robotron_2084
It has been a while (actually more than 1 year) since I've suspended working on the project. It was never discontinued, though, just waited to be rekindled :)
I did some checks on ...
Search found 38 matches
- Tue Jun 30, 2020 7:25 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
- Mon Jun 08, 2020 1:16 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
cjs + fadden, thanks for adding posts to this dormant thread!
I intend to come back to the project, not soon but eventually, hopefully in the fall. I have a long reading list and also lined up a number of 6502 tutorials, so I should be able to make a bit progress when coming back to Robotron.
I intend to come back to the project, not soon but eventually, hopefully in the fall. I have a long reading list and also lined up a number of 6502 tutorials, so I should be able to make a bit progress when coming back to Robotron.
- Fri Jul 19, 2019 1:15 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
I'm sorry for having been away from the forum for so long, please excuse the late answer.
Are your reverse-engineering tools available anywhere? I might try them out on the ROMs from a classic chess computer.
Thanks for asking, no, I've not yet been able to upload anything to GitHub or the like ...
Are your reverse-engineering tools available anywhere? I might try them out on the ROMs from a classic chess computer.
Thanks for asking, no, I've not yet been able to upload anything to GitHub or the like ...
- Tue Apr 30, 2019 3:50 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
Having a good idea about how something works is still far from really knowing the details of how this is accomplished (oh yeah, Captain Obvious, tell us more ;) ). The "sprite projector" hinted at in the post above can serve as a good training ground to learn to tear into asm code.
Sadly (or ...
Sadly (or ...
- Tue Apr 30, 2019 3:05 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
After some time away I've been able to spend some more hours on the reverse engineering project.
The Apple II is severly constrained in terms of memory. Consequently, Robotron uses for the "cut scenes" the actual game code to display elements like the player character or enemies. From a reverse ...
The Apple II is severly constrained in terms of memory. Consequently, Robotron uses for the "cut scenes" the actual game code to display elements like the player character or enemies. From a reverse ...
- Tue Apr 02, 2019 9:48 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
I have started to get a closer look at what's happening in terms of reads from and writes to memory. The problem is of course not collecting the info but rather condensing it sensibly. I first tried to group the access in pages, for the different subroutines as suggested by sark02 earlier in this ...
- Tue Apr 02, 2019 7:02 am
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
Yes, both Robotron and Bandits have aged very well, IMHO. Apart from the fun gameplay, Bandits is also a formidable piece of software, given what Benny Ngo was able to cram into 6kb.
- Mon Apr 01, 2019 3:39 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
I wanted to enter two-digit wave numbers, with backspace, return and escape, handle special cases like "00". It's implemented as a statemachine using an RTS jump table as described in https://wiki.nesdev.com/w/index.php/RTS_Trick . Apart from the special characters, only numbers are allowed. The ...
- Mon Apr 01, 2019 3:20 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
Robotron has a great gameplay. It's getting crowded pretty quickly - that's a strength, but it has a steep learning curve. There are distinct types of levels (called "waves" in Robotron), regarding the type of robot enemies you have to battle. The waves get increasingly difficult, fast. In the "Tank ...
- Fri Mar 22, 2019 5:20 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
whartung wrote:
fschuhi wrote:
The one thing which I haven't cared about at all yet is the speaker. That's really so basic that it Hz 
- Fri Mar 22, 2019 5:18 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
Interesting to see LDA/PHA/LDA/PHA/RTS used here, at $51C4. A more compact alternative might be:
JSR readNextChar ; just to increment the pointer to an actual instruction
JMP ($0022) ; indirect through the pointer
…which takes 6 bytes instead of 7, not a big difference, and the readNextChar ...
JSR readNextChar ; just to increment the pointer to an actual instruction
JMP ($0022) ; indirect through the pointer
…which takes 6 bytes instead of 7, not a big difference, and the readNextChar ...
- Fri Mar 22, 2019 5:15 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
As a port, hopefully it'll not be super tied into any hardware specifics, though it doesn't look like the Apple II has too many hardware specifics to begin with. ;)
Thanks for the feedback, White Flame. Yes, the Apple II is really a clean platform, perfect for learning 6502. The one thing which I ...
Thanks for the feedback, White Flame. Yes, the Apple II is really a clean platform, perfect for learning 6502. The one thing which I ...
- Fri Mar 22, 2019 5:10 pm
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
BigEd wrote:
A milestone - well done!
- Thu Mar 21, 2019 7:46 am
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
I've managed to understand some important subroutines completely, on my own, for the first time ever :)
(Don't worry, I won't bother you every time when I understand anything new, it's just a heads-up ;) )
This is a snippet which is part of the game's intro screen:
$456c atariPresents JSR ...
(Don't worry, I won't bother you every time when I understand anything new, it's just a heads-up ;) )
This is a snippet which is part of the game's intro screen:
$456c atariPresents JSR ...
- Sun Mar 17, 2019 10:55 am
- Forum: Nostalgia
- Topic: reverse engineering Robotron 2084 for the Apple II
- Replies: 97
- Views: 20641
Re: reverse engineering Robotron 2084 for the Apple II
Now might be a good time to mention another idiom, not restricted to the 6502: a subroutine may be entered using JMP instead of using JSR immediately followed by RTS. This is known as a tail-call optimisation. On the 6502 it saves 1 byte and 6 cycles.
actually 9 cycles, since JMP is 3 cycles ...
actually 9 cycles, since JMP is 3 cycles ...