Expansion on the 6502 emulator in the Apple II Direction

Hello,
Some ingenious person created a 6502 emulator here:

I was wondering if anyone had any ideas on advancing this in the Apple II (IIe, II+) direction. Where would you put the Apple II ROM into that code? Someone on that page also said that a cassette interface could be possible, any ideas on that?
Thank You In Advance.
P.S. I'm still learning Arduino, but I'm interested in trying this project out. :slight_smile:

What's your interest in such an emulator?

Apart from the ROM either all the Apple peripherals have to be emulated, or the BIOS functions have to be turned into Arduino functions. The Mega may be better suited for such a project, it e.g. includes a parallel interface for 8 bit microprocessor components (RAM, ROM...).

I intend on using a Mega or a Due, because the Leanardo and Uno both have miniscule ram for this project, I've already seen someone run a game on this setup, but i would like to somehow (still researching) put tape reading capability on it. Any ideas anyone? (Video of it working)

I basicly want to get this type of setup working, then try to add a tape interface.

Unless you intend to actually load and execute a program from an Apple diskette, there is no need for a ROM. Do you have an actual Apple II ROM to copy?

I don't know what you mean "there is no need for a ROM" exactly. Clarify please. As I said, I would like it to work with BASIC, games, and hopefully Apple II tapes. Thanks for commenting though.

Because in 1980-1981, I designed and programmed a data communications processor based on the Apple II, II+, and all the program was in ROM. Ran just fine in several financial institutions. Then the IIE was released and was radically different from the older Apples. It would NOT run with my ROM based program.

That is very cool. So you are saying that I can run prog's without a boot bios? (like, the "Apple ][+" bootup text screen and Applesoft basic prompt?) (Sorry if I sound like an idiot right now)

Another customer asked me to copy all the Apple II and II+ rom code to their EPROM board. EPROM was very new, back then. I did and it worked very well. Included anything and everything that was in the Apple ROMs. BUT!!!!! the IIe used the diskette boot file as an overlay to the ROM code that had been copied to RAM. So, the use of the EEPROM board would not work on the IIe machine and there was no way around it.
Conclusion: what you want is NOT doable for the IIe machine.

So the 6502 (Arduino) emulator right now has a generic basic interpreter in it, how could I put the Apple ][ (][+ or ][e. Preferably ][+) ROM into it? You seem like the person I need to talk to about this. :slight_smile:

  1. have all the source code for the emulator.
  2. copy the stored code in the ROM to a file that you can copy into the emulator, replacing the generic basic interpreter.
  3. Adjust any code that accesses the generic basic code to match the Apple basic code, if necessary.

Ok, I'm looking over the code right now. So, the Apple II ROM needs to be in Hex right? Im assuming, because that's what (what looks like, gonna have to dig a bit more) the Basic ROM is in that's in the code...

Well, I was curious about what documentation I had. I found the original stuff I wrote back in 1983. I was a bit wrong about what I did. Only 40 years ago!
What the program actually does is save an Applesoft program to the customers EEPROM board so it can be executed later with NO diskette on the Apple.

So the program actually has zero to do with Apple ROMs. It still allowed use of Apple II without a disk drive.

So it can work and load programs without the prompt? Is that what you are saying?

I basicly want an Arduino Setup (probably a Mega) that can run basic, games, and possibly in the future, tapes (A tape interface). (And can be largely run as a standalone type setup if possible)

Before you get too excited, just remember that any and all Apple programs in prom must be copied to the Apple ram for execution.

Ok, yeah I intend on trying to emulate a tape interface (with an Arduino Nano maybe) or just loading from an SD card. (Like normal people wold do who don't find that a tape loader would be a plus)

I basicly need help with these things at this point,

  1. I need help configurating the code for Apple II (or clone) system ROM and making a display program.
  2. I need to figure out how to link a tape interface. (Or an SD)

Then I will house the whole thing in a 3D printed Apple ][ case

Anyone done this before, then I could use your code if you don't mind.