Arduino In-Circuit Tester: Build Project

RaveN

Active member
vacBacker
Feedback
1 (100%)
Credits
1,325CR
Agreed, his addressing doesn't make sense.

Bear in mind (I'm sure you have) your results have to take into account the slapstik.

The onboard testing is amazing, the Arduino isn't fast enough to do anything effective with the T11.
 

Purity

The Oracle
vacBacker
Feedback
17 (100%)
Credits
2,998CR
RaveN said:
Agreed, his addressing doesn't make sense.

Bear in mind (I'm sure you have) your results have to take into account the slapstik.

The onboard testing is amazing, the Arduino isn't fast enough to do anything effective with the T11.

Thanks for confirming my thoughts. The Arduino does seem to be a bit limited with the T11.

The onboard tests are ok, but it would be great if it could test the palette ram out specifically, which is soldered in
 

Mc-Q

Active member
Credits
1,450CR
been lurking here for ages,

would it be an interesting idea to port this to the ST nucleo boards?

they have arduino headers and partial arduino ide support,

but they can run upto 400MHz and have no shortage of ram or flash.

the only difference is the headers, where the MEGA has the double row of pins at the end, the nucleo uses the sides of the board for extra i/o

so a different interface pcb would be needed.

that and it's 3.3v, but 5v tolerant, so it's fine pulling stuff low, but *may* need some pullup resistors.

although it shouldnt because ttl is supposed to consider anything over about 2v as "high"
 

Arcadenut

User
Credits
314CR
Nes4life said:
If someone was really thinking hard they could probably create a script to export a basic implementation for all games (with a supported CPU) from MAME. All the core info is there; just needs to be bridged over. Maybe I'll look at that for kicks. Why keep transposing by hand when we can script it once?! PS: python (so we can use any platform then).

If you go here:

http://www.arcaderestoration.com/BrowseGames.aspx

I have all the games from MAME there including Memory Maps, ROM Identification, etc...

Can't guarantee it's 100% accurate, as it was parsed from MAME source, but it should be in 99% of the cases.

It could easily be exported into what ever format you need.
 

FarmerCal

Newbie
Credits
7CR
Was looking for Paul's site myself thanks. I've gotten a run of boards made. I had 10 of each made. Smallest order they would run, so I've got 8 spares of each if anyone wants some, just message me. I'm in the states, so whatever shipping is plus a couple bucks to help cover the costs would be fine. You guys seem to have done a lot of work providing all this, just want to say thanks.
 

Nes4life

Active member
vacBacker
Feedback
11 (100%)
Credits
1,113CR
This is still one of the main tools on my bench! It's been essential for fixing Asteroids.

Whenever I start repairing a new game I always port it to this project and make it available on my GitHub.Nes4life2019-03-16 09:23:26
 

mdeslaur

Newbie
Credits
37CR
Nes4life said:
This is still one of the main tools on my bench! It's been essential for fixing Asteroids.

Whenever I start repairing a new game I always port it to this project and make it available on my GitHub.

Oh cool, what's the url to your github?
 

FarmerCal

Newbie
Credits
7CR
I'm having trouble implementing the defender code. Can I save all the libraries and game files in one directory or do I have to create separate library folders? I was able to run Paul's files but when I try to save the defender files it asks to overwrite files and I'm wondering if there are differences I needed to account for. Also there was some comments on the limited file space on the Arduino.... How about using a touch screen with an SD card? Outside my skill level but maybe an idea?
 

Judder

Active member
Feedback
2 (100%)
Credits
976CR
Right - I got made 10 of each Arduino Shield, Standard Header, 68000 Header in rather cool Black

PM me if you're looking for a set and I am happy to part at cost to those that are

smiley20.gif


ArduinoICTBoards.jpg
 

Judder

Active member
Feedback
2 (100%)
Credits
976CR
mdeslaur said:
Purity said:
Anyone? Is Paul still around? I noticed his website is no longer available

It looks like this is his website now:

http://www.zzzaccaria.com/arcade/ArduinoMegaICT.htm

Great - yes zzzaccaria.com has been Paul's other site for a while - will update the first post with this too and many thanks!
 

wondras

Newbie
Credits
89CR
Hi! I'm a bit late to the party... but with a stack of PCBs that need attention, and Fluke 9100As being made of unobtanium, it was time to put together one of these testers.

I'm seriously impressed by how much can be done with a humble Arduino board and a few connectors. Paul did a fantastic job setting up the software with extensibility in mind. I've been working on additional game support, primarily:

  • Improvements to Nes4life's Asteroids Deluxe support (I updated checksums and chip locations, and added I/O mapping differences from Asteroids)
  • Support for Battlezone, with provisions for adding Red Baron later on.

This enabled me to quickly find a bad RAM chip on an Asteroids Deluxe board that had been puzzling me for a long time. I found numerous bad RAM chips and flakey ROM sockets across multiple Battlezone boards, though most still aren't working.

I'm currently working on a few experimental tests for Battlezone:

  • POKEY (generate simple tones, read switches on the pot inputs, and check for changing values from the random number generator)
  • Math box (send the same commands as the ROM self test, check for STOP signal when commands finish, and verify expected values in the output registers)
  • Vector state machine (load vector RAM with the same bytes as the ROM self-test, send a "GO" signal to the VSM, and check for HALT signal when it finishes; should also be able to see the test pattern on a scope or monitor)

I'm having trouble getting the math box and VSM tests to work reliably. I think it's because they use 3 and 12 MHz clocks that are normally synchronous with the CPU clock. The ICT is slower and asynchronous, so it can't send a short enough write pulse at exactly the right time. Maybe I'd have better luck using the ICT's master clock mode, which I haven't tried yet.

What's the best way to share these changes? I'll definitely do a pull request to Nes4life for the Asteroids Deluxe stuff, but does Paul still maintain his repo? Or is Judder's Atom-based fork the place to be these days?

Big thanks to everyone who has contributed their time and knowledge to this project. I was hitting a wall on repairs, and this has been a huge help for breaking through it.
 

Nes4life

Active member
vacBacker
Feedback
11 (100%)
Credits
1,113CR
Hey Wondras, if you do a pull with all your changes as well as your new games I'll add them all to my repo with your name etc in the readme. Be sure to extend the copyright to include your name / handle. Paul doesn't add games to his repo unless he's seen it work on his own hardware. I could even give you further privileges to make changes when you want.

Thanks for the improvements!!

I really want a mode added to the ICT so I can arbitrarily choose to write a specific data byte to any address or read the contents of any address (and loop either action). Would be great for debugging and have more fluke-like powers!Nes4life2019-05-27 21:03:41
 

wondras

Newbie
Credits
89CR
Nes4life said:
Hey Wondras, if you do a pull with all your changes as well as your new games I'll add them all to my repo with your name etc in the readme.

Cool, I will do that! I need to strip out some of the experimental stuff first, or at least make it a separate commits/requests.

Nes4life said:
I really want a mode added to the ICT so I can arbitrarily choose to write a specific data byte to any address or read the contents of any address (and loop either action). Would be great for debugging and have more fluke-like powers!

As a start in that direction, I added rudimentary console access. I also needed it because my Mega2560 arrived much sooner than the LCD panel.
smiley1.gif
Right now it's just a mirror of what's on the LCD, with l/r/u/d/s keys mimicking the left/right/up/down/select buttons, but it wouldn't be a huge stretch to add a mode with Fluke-like commands.
 
Top