Jump to content
IGNORED

Movie Cart


rbairos

Recommended Posts

29 minutes ago, rbairos said:


Drats.  Must still be a timing issue somewhere.
I also wonder if there's some extra current draw with the SD card causing it to glitch out, though I did add alot of 0.1 caps.
Zero Page's video is interesting in that audio plays, and most of the graphics, but seems some writes to registers are failing somehow.


@batari
Actually.....
Looking through my schematic.
I *do* have A12 wired in, and set up to trigger address changes as well!
I guess I had the extra pins when I upgraded the PCB, and added it in, for future expansion.

*Unfortunately* I forgot to set the internal pull-up on just that one, otherwise I'd ask ZPH or John to place a thin piece of tape over that specific edge connector pin or even just cut the trace.

I do have some very round-about way of upgrading the microcontroller via the SD-card, so I maybe I can rig something up.
Hmmmmm



 

Link to comment
Share on other sites

33 minutes ago, rbairos said:

*Unfortunately* I forgot to set the internal pull-up on just that one, otherwise I'd ask ZPH or John to place a thin piece of tape over that specific edge connector pin or even just cut the trace.

 

Damn, I was ready to cut the trace! Is it the red or the blue wire? ;-)

 

- James

 

Welder Welding GIF by Solik SK

  • Haha 2
Link to comment
Share on other sites

3 minutes ago, ZeroPage Homebrew said:

 

Damn, I was ready to cut the trace! Is it the red or the blue wire? ;-)

 

- James

 

Welder Welding GIF by Solik SK


Ha. Don't tempt me!
It's cutting one trace, but connecting two other round-hole little spots together (with foil duct tape for example)

I think I may be able to give you a 'update.frm' file that does this though, just in case.
Still, would be best if I could test this in front of me.

Let me think about that patch file system I put on there.

 

  • Like 1
Link to comment
Share on other sites

@ZeroPage Homebrew

If you're willing:

Installing a patch:
Put the attached file named update.frm on an sd-card by itself into any atari and power it on.
You'll see: 4 slow flashes as it starts reading from the sd-card
Then if it updated properly:  flash flash ............ flash flash ............... flash flash......... etc    (repeating code '22')
It's now installed a patch.
Turn off the Atari, and put back in the original sd-card (with the mvc file).

What this will do is install a small patch that ignores the weird A12 signals altogether.
I give it a 10% chance of helping.

Removing the patch: (not necessary normally)
If after this, the moviecart fails to show anything at all, even on the 2600, and/or you want to remove the patch:
Take a thin piece of wire (like a sandwich bag twist tie with the ends exposed, and connect holes 2 and 3 (labelled PGD and GND) above the sd card, with the PCB inserted into an Atari. Turn on the Atari with the wires carefully pressed into place , and this time it should flash '44' repeatedly, signifying its removed the patch.

If that doesn't work, I'm finding a 7800!
 

update.frm

  • Thanks 1
Link to comment
Share on other sites

Okay, just pushed to my github 4K bin files that can be used to verify the kernel is working for both NTSC + PAL.
If anyone's interested they could try these on a Harmony, Uno, PlusCart, etc.

Thanks.

EDIT: Forgot to attach the asm file if anyone's interested.
Also available at:
https://github.com/lodefmode/moviecart/tree/main/kernel
 

movie_ntsc.png

movie_pal.png

movie.bin movie.pal

core.asm

  • Like 4
Link to comment
Share on other sites

11 hours ago, rbairos said:

Okay, just pushed to my github 4K bin files that can be used to verify the kernel is working for both NTSC + PAL.
If anyone's interested they could try these on a Harmony, Uno, PlusCart, etc.

I have tried with three Atari 7800s and a Sears Video Arcade II with the same results, same screen as your pics show.

If the kernel isn't working what should I see?

Edited by SuperZapperRecharge
  • Thanks 1
Link to comment
Share on other sites

I ran the bin to verify the kernel on 9 different non common(ish) systems:

Sears Video Arcade II

Atari 7800 A3

Atari 7800 A1

Atari 7800 84

Atari 2800

Atari 5200 with cartridge adapter

Atari 2600 Jr.

Atari 2600a 4 switch

Atari 2600a Vader

There wasn't' a discernible difference between the system and all ran the binary fine. The 7800s have bad color but that's because they weren't warmed up.

I can test on the Heavy Sixers(Sears and Atari) Light Sixers(Sears and Atari) Sears 4 switch(Basically a 2600a), two more 7800s.

Each section is 10-15 seconds. There are titles of the systems for each section. For the Concerto carts on the 7800 you can see the software version 0.96 30723.

Harmony is not that up to date.

I have a 7800 Game Drive but didn't shoot any videos using that yet.

 

All done on a Samsung HDTV(NTSC) with RF input. No scaler used since it was all RF.

  • Thanks 1
Link to comment
Share on other sites

@SuperZapperRecharge

Oh boy. That's amazing. Thank you. It tells me the Kernel is sound, at least for the NTSC systems. That's a huge relief.

Further evidence that it's how I'm listening to the address lines somehow in the low level driver.

I'm in the process of acquiring a 7800 currently and should be able to put the logic probe on it then to see exactly what's up.

 

 

  • Like 1
Link to comment
Share on other sites

19 minutes ago, rbairos said:

 

I'm in the process of acquiring a 7800 currently and should be able to put the logic probe on it then to see exactly what's up.

I have an oscilloscope but just haven't used it yet. I could video call or something and try to diagnose timings on the 7800s I have.

May not be worth the time though since I have zero experience using an oscilloscope yet. I have quite a bit of low level electronics

experience from fixing Ataris to home electronics. Pretty handy with a multimeter and soldering iron at this point.

Link to comment
Share on other sites

56 minutes ago, SuperZapperRecharge said:

I have an oscilloscope but just haven't used it yet. I could video call or something and try to diagnose timings on the 7800s I have.

May not be worth the time though since I have zero experience using an oscilloscope yet. I have quite a bit of low level electronics

experience from fixing Ataris to home electronics. Pretty handy with a multimeter and soldering iron at this point.

Thanks for all your help, but to be honest, I think at this point I have to attach my 16-line digital probe and just capture + stare at the waveforms.
Apparenty the 7800 has one address lines that seems to waver low, and despite my blind patch prior, may still be causing an issue.
Im hoping won't be long to patch around once I can test changes repeatedly / step through the firmware.
 

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Okay, update:
I've got my hands on a 7800, saw the issues with garbled graphics, and some audio, did a bunch of trial+error testing and now have a fix.
The issue is the 7800 doesn't let me ignore the A12 line like I can with the FB2 + 2600 (where I was using A11 as a proxy).

Running attached update.frm on the sd-card by itself should patch it to work:


(Please ignore poor CRT TV quality, think my blue died)



image.thumb.jpeg.3b28ee9b2ddeed10906178c91e41ac48.jpegimage.thumb.jpeg.14191891374b40809f711981cdd6e200.jpeg

update.frm

  • Like 4
Link to comment
Share on other sites

6 hours ago, rbairos said:

Okay, update:
I've got my hands on a 7800, saw the issues with garbled graphics, and some audio, did a bunch of trial+error testing and now have a fix.
The issue is the 7800 doesn't let me ignore the A12 line like I can with the FB2 + 2600 (where I was using A11 as a proxy).

Running attached update.frm on the sd-card by itself should patch it to work:


(Please ignore poor CRT TV quality, think my blue died)



image.thumb.jpeg.3b28ee9b2ddeed10906178c91e41ac48.jpegimage.thumb.jpeg.14191891374b40809f711981cdd6e200.jpeg

update.frm 92 B · 0 downloads

Going to give a try here in a bit as I've got a few 7800s out from service requests I can use it with. Will update this post with some results a bit later.

 

Yes! I just tested mine with this new FW load and it ran each and every power on on no less than 4 different 7800s (all NTSC) just now. So I'd say you got this working quite well! Now to study up on how to re-encode some other movies onto this.

 

 

  • Like 2
Link to comment
Share on other sites

On 3/31/2021 at 7:22 AM, rbairos said:


Hi everyone.
Thanks for checking out my MovieCart last night.
It was the result of a very long series of experimentations and trial and error, in assembly,
color processing, microcontroller interfacting and packaging.
Shout out to @zackattack for being my technical sounding board from the beginning,
and @zeropagehomebrew for debuting it last night!

Thought I'd start a new thread to discuss technical issues etc.
 

The final format I chose was a solid block of 10x192 cells, drawn as two alternating checkerboards
of 5x192.  
I had tried/emulalted/rendered several variations of this, including:
12x192 with two random colored columns.
40x40 playfield with full color.
12x192 with alternating r/g/b lines (chronovision)
Several variations of alternating columns, alternating diagonal columns, etc.
Greyscale floyd steinberg dithering with background color swaps
The final full alternating checkerboard is thanks to @DirtyHairy and @SpiceWare for explaining the 8 bit back shift in detail.

A developed a testbed in TouchDesigner with glsl and custom plugins to test out all these variations over months.
I still have several of those test clips if anyone's interested.


In terms of hardware I aimed for through-hole, 5v, simple construction.
It uses a 16mips pic (64hz 4-cycle) driving 1K of an 8k dual port ram.
Data is completely uncompressed and read using low level SPI interface to an sd card.

The mc doesn't have to react to each instruction, but knows which of two possible 128-byte sections of the ram the 6507 is
currently accessing, through very careful planning of the kernel.
In this way I ended up only needed 3 address lines:
A7 -> which one of two possible chunks is the 6507 on
A10 -> controller + console messages
A11 -> used to enable the ram output onto the bus.

Note I did not need A12, so these carts actually work on modified Flashback 2's as well, which don't drive A12 properly.

In terms of controller + console data:
The mc does not probe any registers, instead the kernel decides to communicate it back, one bit per scanline by selecting
addressing A10 line, which the RAM address lines don't use.


I have everything up on my github (pcb layouts, assembler, real-time conversion utilities, etc etc)
So its available for dissection, improvement etc:
https://github.com/lodefmode

Going to work with @Zackattack in terms of an uno part, and will likely submit a cleaned-up support for Stella emulation,
which was invaluable for this project.


Anyways feel free to post any technical comments, questions here.


Cheers!
Rob  "lodef mode"


 

colorize.jpg

inside_cart.jpg

instructions1.jpg

instructions2.jpg

screenshot.jpg

 

 

How am I just hearing about this NOW?! I am blown away!!!

 

  • Thanks 1
Link to comment
Share on other sites

So both 7800 and FlashBack2 will work on the same card now.
No reconfiguring will be needed.
solution:  monitor A12*A11  not just one or the other.
Luckily in FlashBack2, A12 is stuck, but stuck high, and the kernel is just 512 bytes of ROM space.
 

Link to comment
Share on other sites

21 hours ago, SuperZapperRecharge said:

Classic looking CRTs! Congrats on quickly figuring out the issue. Can't wait to get a Movie Cart.

Time to encode Duel.

Never noticed until just now the TV is from 1977, birth year of the Atari!

 

 

 

20240325_210703.jpg

  • Like 3
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...