6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Fri Nov 22, 2024 4:04 pm

All times are UTC




Post new topic Reply to topic  [ 842 posts ]  Go to page Previous  1 ... 43, 44, 45, 46, 47, 48, 49 ... 57  Next
Author Message
PostPosted: Fri Sep 25, 2020 2:23 pm 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Thanks!

I managed to cut most of the steel for the cabinet as well as the square tube frame for the front of the monitor. The goal is to have the cabinet sitting in my lab over winter to be worked on. Since I weld outdoors, time is running out as the weather creeps towards the negatives at night around here now.

Image

Yeah, I do everything the "hard way". Hand held grinder to cut sheet, welded outdoors on wobbly sawhorses using a basic AC buzz box. Not sure why, but it just makes the end result so much more rewarding!

To answer a few questions....

- CJS:Yes, the massive board will be completely hand wired. I intend to take a 750 square inch piece of thin lexan and hand drill every single hole for all 500+ ICs then insert them and run point to point wiring on the underside and VCC + GND on the top. This keeps that "crazy dude" effect strong and allows viewing of the entire job due to the clear board. Also, when the board slides out from the case, it will be able to tilt up to 90 degrees for inspection or repair of the P2P wiring on the underside. I am not a fan of wire wrap.

- CJS:Also yes, the older design pushed out 400x300 VGA and I did attempt 640x480 with 90% success. After some time, I realized that doing VGA was not fully "retro" and it felt wrong. Another reason to switch to NTSC is because it is so much more difficult to generate with logic as compared to VGA, which is rudimentary. Hell, I can pump out a 5 ball Boing Demo on a 512 byte 8 pin micrco-controller using VGA, it's that easy! NTSC requires careful control of nanosecond phase delays and all sorts of timing magic, so to me it is much more fun and keeps to the idea of building a system that is 100% true to the era. I am also stretching the boundaries with NTSC as well, pushing out 360x230 overscan with 8192 colors, twice what Amiga did back in the day. I have a system that will put out 256 shades of 32 colors, so no crazy "HAM" modes either! I intend to test the circuit very soon, it is mostly built on the breadboard now.

-TTLWorks:Yes, I already have a steel sheet between the monitors as well as steel between the base of the monitors and the other circuitry. So basically, both monitors live in their own steel cabinets, with full screen venting on the rear side.

-TTLWorks:Yes again, my video drive only puts out one global sync signal, but splits into a set of dual video generators. The "IDE" monitor puts out 320x200 text with 256 colors and a C-64 like border, and the "GFX" monitor puts out 360x230 overscan with 8K colors. Both are driven from the same sync signal, which is mixed into the Luma output. I am using the seperate Luma+Chroma inputs on the rear of the 1702 monitors for best clarity. I know 320 horizontal pixels is pushing the limits of NTSC, but C-64 does it well, and Vulcan will do it too!

I am looking forward to the first snowfall so I can migrate into my Commodore Cave and continue this project. This year, I will have graphics being displayed and a lot of the cabinet work done, so there will be a lot more to show off.

Image

Cheers!
Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 25, 2020 3:42 pm 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Here is a brief explanation of how I will generate 8192 colors onto my 360x230 NTSC bitmapped screen...

Image

On the top left is the Luma DAC. This is just a basic 8 bit R2R network that creates 256 voltages from zero to about one volt. The composite sync signal is also overlayed onto the Luma signal later down the line.

NTSC color generated by the phase difference between the 3.579MHz burst signal sent before the active line and the overlayed 3.579MHz signal drawn during the active line. The more steps you have between this phase shift, the more colors you can generate.

Since 3.579MHz is about 280 nanoseconds, this limits the potential of delaying the signal by logic alone to 32 steps at most. At 32 steps, there needs to be a delay of only 8.73 nanoseconds between phases. This delay is well within the reach of a typical 74HC245 buffer, so this is why I have the 3.579MHz signal fed into the 4 buffers as shown in the schematic.

Each buffer output feeds the next input, and each output is fed into the 75HC4051 selectors. The result is a selection of 32 phase shifts as per the 5 bit input address.

Since the 74HC245 propagation delay (A to B delay) is a little less than 8 nanoseconds, I will carefully control the current to the 4 gates in the delay chain to oven them out to the required 8.73 nanoseconds. A precision 100 ohm POT on each will do the trick.

The chroma signal drives the color input on the 1702 directly and has no other signal on the line.

The 74HC574's shown in the circuit are there to align the Luma and Chroma on the next clock cycle so that there is no delay in color vs pixel data. This alignment will happen at 7.159MHz, which is the global pixel clock speed of the Video Generator.

Since I am only using 13 bits of the 16 available SRAM bits in the video system, the other 3 bits will be used for the following, which will greatly speed up the logic...

BIT 05/15 : Alpha Bit (creates built in sprite transparency).
BIT 06/15 : X Reset Bit (for faster Sprite Engine X/Y Logic).
BIT 07/15 : Y End (for faster Sprite Engine X/Y Logic).

I have most of this on the breadboard already but won't get to test anything until it's too cold to work outside.

Later!
Brad


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 1:29 am 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Hey, it kind of snowed out here today!
A bit early, but that did give me 1.5 hours to try out some basic chroma phase wiring.
it's ugly, but that's ok for an initial test...

Image

Only the top rows of breadboards are active, the other ICs are just placed there to see what kind of real estate I might need as I continue.
So from left to right, this is what is going on here...

The bunch of resistors is the Luma DAC. This puts out 256 shades of grey or 256 levels of whatever color is being generated.
Composite sync is also embedded into the Luma signal, and this feeds the Luma input on the back of the 1702 monitor.

To the right of the DAC is the phase selector, which is 4 chained 74HC4051 analog data selectors.
There are 32 possible phases, which is why Vulcan-74 is capable of 8192 colors (256*32=8192).

Next in line is the chroma phase delay generator, which is 4 chained 74HC245 buffers feeding each other in series.
I have not fine tuned the delays yet, but they are not that bad already with only slight color overlap.

The last 2 ICs are just a 74HC574 latch to sync up the data bus and a 74HC138 to assist in addressing the 4051s.
The output (selected phase delay) from the 4051 chain is fed into the Chroma input on the monitor.

For this initial test, I just dropped my old AVR324 sync generator onto the board and fed the DAC and phaser with addresses.
Here, only the Chroma phase is changing and the Luma is sent as full brightness (level 255)...

Image

As expected, a nice selection of 32 colors with some overlap in the blue due to the propagation of the gates being fester then required.
This is good since now I just need a precision POT to lower the 74HC245 current ever so slightly.

In this test, I sent Luma levels as well, so it made the expected color bars...

Image

I will find a better setting for my camera later, as photographing an NTSC monitor is not easy!
On the bench here, that 8192 display of color bars looks very nice and clean.
Those Commodore monitors are really good quality, so much better then newer TV sets with S-Video inputs even.

So there it is... you can indeed generate 8192 colors for NTSC using nothing but 1980's logic chips!
My next step is to drop the AVR and design the Sync generator all in 74HC logic. No problem!
There shall be nothing but 74 logic and a 6502 on this board, that is an unbreakable rule..

Until I have another few hours.... later 6502 Freaks!

Cheers!
Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 5:53 am 
Offline

Joined: Fri Oct 02, 2020 5:35 am
Posts: 4
I'm glad you are back doing this! I have to say, reading all your posts on various forums inspired me to start learning about digital electronics a couple of years ago. Just by reading your posts I have learnt a tremendous amount of knowledge in this area. For me, I feel when you learn a new subject you should not ignore the history behind it and should get a good grounding in the subjects history. Learning about 7400 logic ics and all the rules to make that stable on a circuit board or bread board is valuable knowledge to know. Keep up the good work!


Last edited by Andy201 on Fri Oct 02, 2020 8:47 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 7:47 am 
Offline
User avatar

Joined: Fri Nov 09, 2012 5:54 pm
Posts: 1431
Go, Brad, go.

Andy201, welcome to our forum.
Nice to hear, that you are interested in tinkering with 7400 logic.
There always is too much to do and too few TTLers.


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 8:56 am 
Offline

Joined: Fri Oct 02, 2020 5:35 am
Posts: 4
Thanks for the welcome :)

Yeah, 7400 logic is fascinating to learn... My background is programming games since the 80s so all the logic in digital electronics comes natural to me.

Anyway, this is not about me... it's about Brads mad retro project :D


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 9:18 am 
Offline
User avatar

Joined: Fri Nov 09, 2012 5:54 pm
Posts: 1431
Andy201 wrote:
Anyway, this is not about me... it's about Brads mad retro project :D

Ja, please don't get confused:
I'm just trying to trick new forum members into building 6502 compatible "mad retro" TTL CPUs. ;) :)


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 9:27 am 
Offline

Joined: Fri Oct 02, 2020 5:35 am
Posts: 4
ttlworks wrote:
Andy201 wrote:
Anyway, this is not about me... it's about Brads mad retro project :D

Ja, please don't get confused:
I'm just trying to trick new forum members into building 6502 compatible "mad retro" TTL CPUs. ;) :)


I feel I'm a Judas, though... I joined for the 7400 logic knowledge that people have on this forum but I'm afraid I'm Z80 ;)


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 1:34 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
Andy201 wrote:
I'm afraid I'm Z80 ;)
Hm. It won't surprise me if Brad's enthusiasm wins you over! :P Welcome.

ttlworks wrote:
Go, Brad, go.
Yes indeed -- looking forward to further news, RB!

-- Jeff

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 2:45 pm 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Hey thanks for the positive comments!

The reason I am into all of this is because of the inspiration I found when I was young and learning as well, mainly old Radio Electronics mags and programming my PET and VIC-20. I loved the articles that profiled others projects and took a lot of inspiration from that. Knowing this project has given some of that back makes doing it all the more worthwhile to me, so thanks for letting me know! I wish you great success on your journey!

I still think knowing the basic logic and all about propagation delay is the key to success on modern technology such as FPGA. I started learning Verilog about he same time I began pushing my breadboard beyond 20 MHz, and I must say... the two came together in a big way.

At first, FPGA design seemed daunting and overly engineered, but once I started thinking in terms of propagation and code that executes "all at once" rather than in sequence, it seemed easy. Many of the failures I seen in my FPGA designs happened for the exact same reason that some of my breadboard designs failed.... race conditions, meta-stability, propagation issues, etc.

Now I can code Verilog like a second language and find it to be the easiest of all languages I know. Once you get your mind around "all at once" and the speed of the electron, you can make just about anything on an FPGA with minimal effort. Without breadboarding to the bleeding edge, I doubt I would have this skill now.

The only other advice I can offer (and I know this will stir things) is to try your hardware / software designs despite the expert opinions that say it won't work. Here are some examples that are being spread around the net....

Don't program in assembly, you will never beat the compiler.

Funny, I see that one on the AVR and PIC forums a LOT! It's a total lie. I was beating the compiler in my first year of learning AVR assembly, even at a time when I only knew half the instruction set! Can't imagine ever being an efficient programmer without learning to talk to the hardware!

Breadboards don't really work over 1 MHz!

Yeah right! Can't even remember the last time I went under 10MHz on any design. I do R&D for a living, and even today, I am prototyping a design for a medical client on a breadboard running at 32MHz with multiple micro-controllers. Vulcan-74 only runs at 14.318MHz now, but the original VGA version was running at 40MHz. just do it! And before you freak out about all of the "snags" you are "supposed" to hit, build it and try. Most of the time it will work fine.

Anyhow, I am getting all charged up to hit the breadboard now, but have my day job to tend to!!
Thanks for your comments, and I look forward to seeing your work.

This forum has been a constant source of inspiration for me, not only because of the amazing creativity shown here, but because those who have "real" knowledge have take then time to share it with hackers like me! This forum is also extremely friendly, so much more than other retro forums I tried to dwell on in the past. This one and AVRFreaks.net are great!

One last shot of the basic color test, this time Luma fading across horizontal, and Chroma phases along vertical...

Image

Yeah.... 8192 colors, baby!
The screen being generated here is 320x200 pixels in size, which fits nicely on the 1702 monitor.
I wanted to test that as I intend to have the left (IDE) monitor display 40x25 characters, just like the C-64.
The main monitor (GFX) fill have no borders and generate a 360x230 screen well into the overscan area.

Going to have to learn how to set my Nikon to get a better shot of the screen, as these look so bad in the photos!
I hope to post more soon, winter is almost here! I will be adding a lot more detail to my blog, but will always post updates here as well.

Cheers... never obey the speed limits!
Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Fri Oct 02, 2020 10:35 pm 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
I managed to find 90 minutes of free time tonight. Yep.... I count every minute!
Went down to my old shack in the back 40 and tack welded the steel together for motivation.
Had some of the plates already cut, and carved out the other main pieces...

Image

This is what I call "working in the field".... literally!
The front square tube frame is the foundation for the monitor sides, top, and bottom plates...

Image

Here is the main cabinet tack welded. It's a big box at over 3 feet wide and 2 feet deep!

Image

Here is a mockup to show the concept vs the real deal...

Image

So far, the cabinet is exactly like the model. Final welds will be made on all outside corners and then worked perfectly smooth.
I am even going to find out how they painted the PET cases so I can copy that off white kind of bumpy look.
The only part I have not figured are the monitor bezels, but I think I lot of hand carving of wood might work.
3D printing is an option, but I think that might be costly indeed.

So how much is Vulcan-74 going to weigh? A little more than a bicycle but a lot less than a bus.
More to come soon. I intend to fast track the cabinet while it's still slightly above zero around here.

Cheers!
Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Mon Oct 05, 2020 12:11 am 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
So far my 3D weight simulation seems accurate. I modelled everything including the CRT glass to get as close as possible.
The monitor simply lifts from the base and unplugs, so moving Vulcan-74 around won't be too difficult.
The monitor unit will weigh about 50 pounds, same as the base unit.

One day I want to bring this down to the World of Commodore show, so portability was always part of the design.

Image

It warmed up to 8 degrees here, so I spent some time doing the smaller but more complex parts of the cabinet today.
I mostly build things from recycled stuff I have around, and I had just enough 3/4" angle iron for the keyboard trap door frame.
it's rusty from sitting outside for 10 years, but that's nothing the sanding disc can't deal with.

Image

Once rough welded, the flap disc (sanding disc) does wonders for the rusty steel...

Image

I only need to get "mostly" smooth here since I intend to use some epoxy filler to even out any scratches or weld inconsistencies.
Using the same design principals as Commodore did on the original PET case.... get close, fill the gaps, prime, paint.
of course, they probably didn't hand cut the steel on wobbly saw horses, but I am getting it close enough!

Here is the Keyboard Trap Door frame done with the Keyboard plate sitting in the frame...

Image

The angle across the top isn't in the original design, but I though it made the cabinet look more robust.
This is also a good place to make the hinge system, which I intend to work like a car hood.

Vulcan-74 will open its hood with the press of a button. A motorized actuator will put it in this position...

Image

At the same time, the massive circuit board will slide out of the front to expose the hand wired insanity.
The mainboard will also be able to tilt 90 degrees upwards to get at the underside wiring in case of repairs.
I can't imagine anything going wrong with a hand-wired board of 300+ ICs though, so it will be mainly to show off the wiring.

That's all for now... a few hours of work at a time when my chores allow.

Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Mon Oct 05, 2020 1:05 am 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Here are a few renders showing how the mainboard will extract and then flip.
Also added the new keyboard lid top rail to the model...

Image

Image

Image

Cheers!
Radical Brad


Top
 Profile  
Reply with quote  
PostPosted: Mon Oct 05, 2020 1:36 am 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
Image

Looks very robust, Brad... Kinda validates the "iron" part of your screen name! :wink:

Thanks for sharing the pics. World of Commodore is gonna *love* this!

-- Jeff

_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html


Top
 Profile  
Reply with quote  
PostPosted: Mon Oct 05, 2020 3:07 am 
Offline
User avatar

Joined: Mon May 25, 2015 2:25 pm
Posts: 690
Location: Gillies, Ontario, Canada
Thanks!
Didn't notice the "iron" in the handle until you pointed it out!
Getting to WOC has been a goal for so many years. I hope this project forces me to make the journey one day.

Brad

Dr Jefyll wrote:
[

Looks very robust, Brad... Kinda validates the "iron" part of your screen name! :wink:

Thanks for sharing the pics. World of Commodore is gonna *love* this!

-- Jeff


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 842 posts ]  Go to page Previous  1 ... 43, 44, 45, 46, 47, 48, 49 ... 57  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 32 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: