Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: CarlK on April 05, 2008, 10:29:09 PM
-
Hi everyone...
Yesterday I bought me an A1200. Out of pure nostalgia. Yes, I'm one of those who was a teenager during the 80's, and never forgot the best computer ever made! Finally I made the decision to spend some money and see if it really is as good as I remember.
This time aroud I got me the machine I never could afford back then (I used to have a modded-beyond-recognition A500)
The world hasn't stopped eveloving though, and I quickly realized that today I have a problem displaying the output of my dear A1200. Reading the hardware thread, I see that many other face the same issue. There seems to be a remedy on its way from Individual Computers, with the announce of their new scandoubler-flicker-fixer-frame-buffer -thingy...
To the point:
I myself enjoy electronics and hardware as a hobby, and recently investigated a video enhancement for the old M$ Xbox. That project didn't really make sense though, but now I clearly see a use for the knowledge I gathered: To me, it seems possible to add a top-modern HDMI v1.3 interface to the A1200 (And probably any Amiga using the "Lisa" graphics controller chip).
I just read the Lisa specifications (http://www.thule.no/haynie/chips/aa/lisaspec.pdf), and by having a 24-bit graphic port and being clocked at 28MHz, it could fit within the specifications of a Silicon Image Sil9134 or Analogix ANX8560.
There are quite a number of things to work out, such as:
* Where do the I2C control interface hook up? (clockport?)
* Should the native amiga audio be digitized and fed along the HDMI I/F?
* Will the HDMI TX accept the Amiga resolutions?
and many other things as well, but all in all it does seem doable...
Any ideas and comments, specifically from people with experince from amiga hardware are most welcome!
/Carl
-
Hello CarlK, welcome to A.org.
Not wanting to put a dampener on your ambitions, you might well succeed in your project, but have you actually tried using Workbench in SuperHiRes-Interlaced with 256 colours on an A1200 with no graphics card?
Time for a coffee (while the screen redraws).
All the best.
-
It's probably do-able. Just consider however that while this eliminates the 'interface' quantizing data through A/D - D/A conversion, it means you need to not only keep up with the video bus of the Lisa (not impossible) but also feed the HDMI display and deal with those issues in a predictable manner.
Remember that the inputs to the Lisa you plan on tapping while digital and RGB are meant to drive the logic of the Lisa. The software creating those signals expects things like palettes and 'copper' (not the metal!) and you are getting in before all that. So you'll have to replicate that function on your end. I suspect todays programmable logic and MCUs could keep up. How cost effective it would be, that's another question.
You should also be aware there are companies that make SCART to HDMI converters like Cyp and while they do loose some quality in the conversion, they likely work without you spending a good deal of time and effort.
http://www.cypress.com.tw/
Sigmason
-
Hi Carl!
Glad to hear from You again. So, you too realized that the Xbox projct was hopeless :roll:
Well, I've given up on that...
As for your ideas to apply the SiI9132 on the Amiga; its rather interesting! I'm still waiting for the real datasheet from Silicon Image, so maybe that alternative you found (Analogix?) could be something?
@sigmason: I have not been able to find a good block diagram over the A1200, so I can't really argue with you there, but from xperience with other systems (PC, Xbox and the like) the only thing you should find after the graphics controller is a video encoder of some sort. I don't beleive that the graphic bus is fed "back" into the amiga custom chips (like the copper).
Still, to pull this off, I need to do a lot more investigation and then there is this thing about expanding Amigas... Does anyone have a link to a working PLCC socket that would clip over Lisa (and not fall off as soon as anyone sneezes)? Would be greately appreciated.
So would a timing diagram of Lisas output be. The one in the specs was rather simplified. I would like to see a dump from an logic analyzer containing all 24 RGB lines, the C28OUT and BLANK.
But the more I think about it, the nicer it seems...
Hope we can avoid frame buffering, that would keep the design simple.
Damn you, Carl! Now you got me hooked on another mad project of yours :-P
Cheers,
Eriond
-
You could perhaps ask Jens schoenfeld to add a digital interface to his new Scandoubler with the ability to get the data before and after the scandoubler?
Dont forget that HSync and VSync are not available on the Lisa.
Jens has come up with a technique where he doesn't need them, but he's keeping the details close to his chest.
-
Considering the Amiga must create all the signals it needs to produce the video output, I have no doubt that an analysis of the schematic after the Lisa chip should reveal all the logic that went into the production of the video signal.
Whether you replicate the logic or do it some other way is of course up to the person putting in the effort.
Here's a block diagram of the Amiga 1200:
http://www.amigahistory.co.uk/block.gif
Now consider that by taping the output side you are potentially creating yourself a new problem. When you tap the input side you have to replicate the functionality to get output. When you tap the output side, you still eliminate the A/D - D/A but then you have to consider that the Lisa chip will start to output all of the funky variations of video mode that make this so complicated.
As to whether it's better to simply 'replace' the Lisa or deal with the output modes I'll leave up to the person that tackles this.
There's more information here:
http://www.amiga-hardware.com/showhardware.cgi?HARDID=13
(note the schematics file)
Sigmason
-
sigmason wrote:
Considering the Amiga must create all the signals it needs to produce the video output, I have no doubt that an analysis of the schematic after the Lisa chip should reveal all the logic that went into the production of the video signal.
Erm, lisa has RGB, alice has H&V. That is why classic scandoublers like DCE FlickerMagic clip over both chips. Like I said earlier, Jens Schoenfeld has worked out how to do without the Alice connections.
sigmason wrote:
Now consider that by taping the output side you are potentially creating yourself a new problem.
I dont think you have to wory about that. Lots of internal scandoublers do it without any problems.
sigmason wrote:
As to whether it's better to simply 'replace' the Lisa or deal with the output modes I'll leave up to the person that tackles this.
You cannot 'replace' the Lisa.
-
Ok, interesting comments. Thanks to all.
I've also requested datasheet for the Analogix ANX8560 (although its "just" a SiI9134 clone). Until the hard facts arrive, I can only do qualified guesswork...
As AlexH wrote, you cannot replace Lisa :-o . Lisa is the chip that actually produces the pixels! My (and Carls) approach is to replace the AnalogDevices ADV101 DAC with a more up-to-date solution, a HDMI transmitter.
What I have read so far in the product briefs, is that a HDMI TX takes a raw garphics bus and repacks it to fit the HDMI standard. Looking at the block diagram of such a chip, there is a block called "Video data capture logic", which to my opinion should sample pixels.
The really interesting question here is at what rate does this sampling occur? Most HDMI chips claim speeds of up to 165MHz, but only a handful specify the lower limit which I guess is more interesting for us who want to connect it to a old/slow graphic chip, like the Lisa. Silicon image say their version begins at 25MHz which would be slow enough.
However, the question is still; is it the graphic chip that dictates when each sample occur or is it the internal clock of the HDMI TX? The difference is very important, because we want to have a resulting image data stream that is compatible with todays TVs and monitors. An aqward propriatary Amiga resolution won't do us any good, even if it is re-packed in a HDMI stream.
Hopefully it works something like this (and now I'm guessing): we tell the HDMI TX which resolution we want (480, 720 or 1080) and it will sample the pixels neccessary to acheive our requested output. But that is probably being optimistic :-(
If the number of scan lines sent from Lisa would fit into a HDMI standard resolution, then this would probably work. I'll have to do some forum searching to see if there are some specs somwhere :inquisitive:
Otherwise, I will have to go for a full-blown framebuffer, which means and advanced FPGA solution. In such case I could probably get hold of a HDMI TX as IP, and do everything in one chip... oh well, it looks I have to do like AlexH suggested and send a question off to Mr. Jens Schoenfeld. :bow:
The quest continues... 8-)
-
@CarlK
I believe itis possible, but in a much easier way than you think.
@meega
You dont have to run Workbench in SuperHiRes Mode. You can just run it in Hires Interlaced and upscale it somewhat.
The easiest way Ive seen to get HDMI on Amiga is via and Upscale DVD player with S-Video inputs...........My DVD Player upscales my Amiga Output and outputs it to my FLickerFixing Projector via HDMI.........it looks the same as S-video but blurry somewhat because I guess the upscaler expects pixelization and overcompensates.
Therefore HDMI is possible on the Amiga via a simple scandoubler type looking device that attaches to the RGB port and does the Upscaling, yet supports SuperHires interlaced mode as well if someone chose to use that.
Personally I use SuperHiresMode for Text credits and scrolling credits on Video.........looks freakin awesome.
Sometimes getting too technical about things makes it seem impossible. but it is easily achievable (and by that I dont mean that it is easy creating the hardware) I just mean the concept is easy.
The Amiga itself doesnt have to have a native HDMI output, because then it would need modifications and slow down the system...........
-
Eriond wrote:
The really interesting question here is at what rate does this sampling occur?
~28MHz (same as a TV) for all Amiga modes except Euro72, Super72 and Multiscan. (Non of which you really need to support)
Eriond wrote:
However, the question is still; is it the graphic chip that dictates when each sample occur or is it the internal clock of the HDMI TX?
I would imagine the HDMI TX would slave to the gfx input.
If HDMI supports 576i then it should be fine.
-
AlexH:
1. Lisa can't make RGB without a synchronization. It doesn't matter what makes the original H&VSync. It must be possible from Lisa alone to determine sync (and obviously someone has.)
2. Scan doublers and flicker fixers yes. If the intent is to effect that as the limit of the change. In doing scan doubling you are limiting your ability to get anything better though. Basically as I said, the limit of the advantage in this mode is that you don't do another extra conversion. It's not allowing you to bypass any of the clocking issues or the side effects that can create. Just because you have the original RGB data, that doesn't mean you can't inject problems into the output quality from the syncs being inappropriate for certain displays. I don't know how much or how little a problem that can create in this particular system. I do know from working with video equipment that it can create problems.
3. It's much more work, but yes it's possible to replace the Lisa. The only thing stopping someone from doing that is the engineering and reverse engineering of the existing Lisa to replicate it's functionality. It's way beyond what your average person should do, but it's hardly impossible. Think about how many Intel compatible UARTs Asian countries spat out in the early days of the PC industry. Many of them were basically created in a manner that could be used to reverse engineer any chip in the system. More over, given the cost of FPGAs and their speed today it's more probable then ever that someone really bent on doing this, could do this.
Sigmason
Let me phrase it like this, I wouldn't waste my time replacing Lisa. It's a lot of work for little return as the market probably isn't large enough to net a return on that scale (that's a business problem, that doesn't make it impossible at an engineering level.)
It's probably better to say, it would be much more practical to work with the existing Lisa outputs and whatever else you need to replicate the scan doubler function like AlexH is saying. That said, be prepared that you'll have to make sure the video system your HDMI is connected to will tolerate the resulting output.
-
Leirbag28:
I don't think making an HDMI output from the signals in the Amiga would slow it down.
If you truly only take the existing signals and ask nothing more of the Amiga hardware then to output them it would have no effect on the Amiga system itself.
Now if you were to somehow how ask the Amiga to put itself in a particular mode, or do something extra to accommodate said change that's a different story and I don't think that was what someone was suggesting. In a way, would that not be exactly like installing a video card?
Sigmason
-
Eriond:
You'll only get from the Amiga what the Amiga will give you unless you start messing with the drivers and everything else.
If you want a clock other then the 28MHz clock that is on the Lisa, you'll have to create the hardware to insure that the data you want is where you need for the HDMI transmitter's sampling. So think basically a scan doubler like AlexH is saying, but extend that to creating a digital output instead of an analog one like most monitors and older products made. The big difference is that everything you are doing is digital. Which means that you won't loose in the A/D - D/A conversions but again, you must compensate for the timing differences and that's where you have your challenges.
This could actually be harder to do if you want to make the Amiga Lisa chips output conform via conversion to HDMI then to get the output of the Lisa to conform to something that 'will work' with an SVGA monitor. The SVGA monitor will work with simple scan doubling because of it's wide sync ranges. The HDMI specs, if you want them correct, will be harder to match and the process you use to match them, while constant for all HDMI inputs, could create issues that will be ever present. As apposed to creating an output that is close enough for SVGA monitors and might work better on some displays and not as well on others.
Sigmason
-
Sniff... sniff... what's that smell?
You need to go away and read the HDMI spec again.
-
Carl,
Why not use a DVI device like the SiI1162?
Datasheets are available without an NDA for HDMI parts and you also open up the possibility of DVI monitors.
HDMI TVs can take a DVI input take a look here at the HDMI website (http://www.hdmi.org/learningcenter/faq.aspx#31).
To clock the DVI chip from Lisa use the Sync On Green (SOG) output, this will be a composite (hsync and vsync) combined signal. The SII1162 requires separate HSYNC/VSYNC signals. You can either use a sync stripper like the LMH1980 or if you use programmable logic, use that.
Of course, it would be worth double checking that the SOG output is a standard Video sync output first otherwise it may need conditioning/converting.
All DVI/HDMI transmitters will be destroyed if you connect them directly to the Amiga. You need to convert the +5V logic to +3.3V logic with appropriate converters. Some 74LV244 or equivalent devices run off 3.3V but have 5V tolerant inputs.
I have never run a DVI interface at less than VGA (640x480) resolution so I can not say for sure if it will work with say Hires (640x256) or low res (320x256) amiga displays.
For the I2C interface, connect up a microcontroller with one of these ports. For DVI devices, this is used to read the Extended Display Identification Data (EDID) PROM in the monitor and set up natural screenmodes and refresh rates. You can also use the microcontroller to program the DVI chip via I2C.
I hope this gives you a few ideas.
Ian
-
AlexH:
LOL, so show me where I'm wrong:
Alright here you go:
http://www.hdmi.org/pdf/HDMISpecInformationalVersion.pdf
Be sure to read the sections: "Pixel-Repetition" (IE digital scan doubler) and "Pixel Encodings".
Here's your modes:
http://writch.com/video.html
Here's some history on 'NTSC' video:
http://www.epanorama.net/documents/video/rs170.html
Here's 576i:
http://en.wikipedia.org/wiki/576i
Here's 480i (aka NTSC HiRes Interlaced):
http://en.wikipedia.org/wiki/Display_resolution
Now depending on how much of this that 'HDMI transmitter' does will really depend on how this will react to having the Amiga sending video to it.
Let's consider this: if the Amiga at NTSC HiRes interlaced (which is a fine mode and the Toaster and other genlocks should work at it) is spitting out 640x400x60Hz or 480i. The digital data you are tapping at Lisa is pixel data for less pixels then the HDMI interface will require in a given frame or field because the HDMI display modes are all more data then you actually have (causing you to do pixel repetition on HDMI). Even if the frequency of the digital data stream amounts to NTSC video at 50 or 60Hz what about the resolution? You are transmitting in digital per pixel. Usually most of the HDMI displays I've seen scale 480i to get it fullscreen because not only are they not 480i resolution, but even if they are actually 640x480 they are missing 80 lines of information so it's either scaling or black somewhere (which you as the transmitter can't really control.) So even 480i is actually stretching the timing in HDMI standard because it doesn't match one of the standard transmission resolutions so they resort to pixel repetition.
Now that's just 480i. The Amiga obviously can do more modes then that (even if he drops the modes you mention.) I suppose he could repeat further if he's actually the HDMI transmitter, but in doing so he's only asking for more screen scaling he can't control and by the specification itself the sink is simply being told how much pixel data it can drop if it wishes without loosing a unique pixel. Of course pixel repetition is handy if your modes are actually an equal division of 640x400 or 480i. However, I see a problem.
If the RGB data coming out of Lisa is 320x200 interlaced for instance and you want to double it think about the timing difference going into something designed to take in 480i and getting something a division of 480i. If they sample more then one pixel in digital RGB for that input timing how do they compensate for the timing difference? I don't see inputs specified for chips from Silicon Image or Analogix that are lower then 480i. I don't see RAM in there. They appear to be 'just in time' transmitters with no compression. So how would it compensate for this difference if you use them to produce HDMI from the Amiga and the Amiga is not in NTSC HiRes Interlaced or 480i?
Sigmason
If you think I'm wrong enlighten me.
If I'm wrong I'm a big boy I can accept that.
-
Hi everyone!
I see this issue is becoming really interesting... Eriond and myself had a private chat about on how to move forward with this project. I am just a happy ignorance-is-bliss kind of guy:crazy:, while Eriond is more down-to-earth, so...
Just like Sigmason and many others have seen, this gets more complicated the more you think about it. Erionds suggestion (which he also wrote in a post above) is to go all-in and put an advanced FPGA (+ framebuffer RAM) to solve this. There are a few drawbacks with that aproach:
* Individual Computers are almost there with their new upcoming product, and I sure don't want to discourage Jens from coming up with cool Amiga hardware by releasing a competing design for free
* Eriond claims he hasn't used programmable logic since the 80s, so he will have to complete some sort of training/course first... ie. it will take some time before we "get off the ground"
I don't want cancel this; all I'm saying is that this will be a time-consuming projects. Both I and Eriond have things like day-time jobs and families to take care of...
Don't expect anything too soon ;-)
/Carl
-
Hm, I bought an A500+ from a Carl K.
As for hurting sales of IC's scandoubler, I have to say I'd spend money on something with a VGA port on it rather than working on a homebrew HDMI solution, even if it turned out cheaper. Plus, it seems like all of IC's products are pretty awesome.
(none of my LCD or CRT monitors have HDMI.)
-
Hmmm. I dare say I’m interested in this project :-D
I've just been and got a 2032MW from Samsung. It’s got a VGA port (Which is being used by the PC atm...), a SCART port (Currently used by the A1200D via the 23 Pin video port, but this monitors' not so good at animation, just have a word with arkpandora...), and amongst other things an unused HDMI port.
It would be great if I could hook up the Amiga via the HDMI port, and hopefully get around some of the annoying artefacts present on the other inputs of the monitor, whilst keeping full 15Khz compatibility and no need for a scandoubler.
Hodgkinson.
-
@sigmason
Wow nice post.
If we ignore Super72, Euro72, and multiscan the Amiga always drives an output compatible with a regular TV. That means the Lisa output is always compatible with these four modes : 720x240p, 720x480i, 720x288p & 720x576i.
And if we ignore interfield motion (I know we shouldnt) then the Lisa output is always compatible with 720x480i or 720x576i.
The actual number of changing pixels may be lower, but the DAC doesn't know that. It is just sampling pixels at 28MHz.
I would imagine we are just going to feed the RGB outputs + sync + clock + config to the HDMI transmitter.
As you say these modes are below the 25 MP/S and so (from reading the HDMI spec) it appears we may need to have the Pixel Repetition (PR0:PR3) fields set (which will just be a counter) but I wouldn't be surprised if the transmitter does this automatically when configured for TV video sources.
sigmason wrote:
Let's consider this: if the Amiga at NTSC HiRes interlaced (which is a fine mode and the Toaster and other genlocks should work at it) is spitting out 640x400x60Hz or 480i.
Erm sorta.
sigmason wrote:
The digital data you are tapping at Lisa is pixel data for less pixels then the HDMI interface will require in a given frame or field because the HDMI display modes are all more data then you actually have (causing you to do pixel repetition on HDMI).
Yes the Lisa pixel data is less than 25MP/s and (from what I read in the spec) yes you will need to tell the HDMI interface to do pixel repetition. But all TV video sources must do this, it has nothing to do with the Amiga resolution.
sigmason wrote:
Even if the frequency of the digital data stream amounts to NTSC video at 50 or 60Hz what about the resolution?
What about it?
sigmason wrote:
You are transmitting in digital per pixel. Usually most of the HDMI displays I've seen scale 480i to get it fullscreen because not only are they not 480i resolution
Yup. I've seen them range from 1920×1080 for full HD through 1366 x 768, 1280x720, 1024x1024 etc. etc. and they all have built in video scalers designed to upscale TV resolution to HD.
sigmason wrote:
but even if they are actually 640x480 they are missing 80 lines of information
What is missing 80 lines?
sigmason wrote:
So even 480i is actually stretching the timing in HDMI standard because it doesn't match one of the standard transmission resolutions so they resort to pixel repetition.
Ok. But pixel repetition is just supersampling right?
sigmason wrote:
The Amiga obviously can do more modes then that (even if he drops the modes you mention.)
But does it matter as long as you are sampling at the right rate? I don't think it does. They are all pixel compatible with a 28MHz pixel clock.
sigmason wrote:
I see a problem. If the RGB data coming out of Lisa is 320x200 interlaced for instance and you want to double it think about the timing difference going into something designed to take in 480i and getting something a division of 480i. If they sample more then one pixel in digital RGB for that input timing how do they compensate for the timing difference?
I do not understand what you mean by 'timing difference'? Surely the HDMI transmitter is a slave to the pixel clock coming from the Amiga?
sigmason wrote:
I don't see inputs specified for chips from Silicon Image or Analogix that are lower then 480i.
It doesn't matter. All Amiga modes (except Super72, Euro72, and multiscan) will be compatible with 480i (or 576i). The only problem might be interfield motion, but I dunno how progressive displays fix this.
sigmason wrote:
I don't see RAM in there.
It doesn't need any. It just reads the same data twice.
sigmason wrote:
how would it compensate for this difference if you use them to produce HDMI from the Amiga and the Amiga is not in NTSC HiRes Interlaced or 480i?
The same way a TV does at the moment, oversampling. The Amiga keeps the RGB output stable a set period of time per pixel. When resolution is 320 pixels wide this time is roughly 2x as long as when resolution is 640 pixels wide because the line time is fixed.
sigmason wrote:
If you think I'm wrong enlighten me.
It is obvious from your last post that you are technically literate. We just have different ideas about different bits, probably each equally wrong ;-)
-
Wow :-o Now that's a post...
From reading all of your most intelligent and interesting posts I go from despair to hope and back again! As Carl pointed out, I only had a brief encounter with programmable logic long ago. (it was actually while I had to do a GAL for the Amiga bus Autoconfig feature) That field of electronics has advanced immensly over the years, and nowadays you can do real magic with theese chips. The Minimig is an excellent example!
But, before I venture on a half-year long learning curve, I'd say it could be worth a try with the existing HDMI TX devices. Although I can't clearly see a framebuffer/RAM arrangement from the simple block schematic on the product brief (http://www.siliconimage.com/docs/SiI9134_PB-SiI-51_FINAL_7-3-07_pdf.pdf), there are statements like:
14-bit internal video processing and 14-bit to 12/10/8-bit dither
and the chip must contain some sort of intelligence, otherwise it wouldn't be neccessary to boast
Integrated HDMI 1.3 TMDS core running at 225MHz
I think I'll fire up Eagle and do a prototype board.:-D
But then I still have a question that Stedy addressed briefly, and that is how to make a simple I2C bus. I'm pretty familiar with PICs, but what would be the best place to attach it? The clockport seems rather straightforward, but I suppose it is already occupied by other expansions...
My idea is to clip on the ADV101 to get all neccessary video signals (RGB bus, H & V-sync) but I still need to get to Lisas 28M buffered clock. So, it seems I would need to clip over both chips...
And when I already have Lisa, then I also have the main processor bus. So I would need to do some address decoding and hook up my PIC there. Does that sound resonable?
/Eriond
-
Eriond wrote:
I still have a question that Stedy addressed briefly, and that is how to make a simple I2C bus.
Two (3?) wires to the parallel port.
Eriond wrote:
My idea is to clip on the ADV101 to get all neccessary video signals (RGB bus, H & V-sync)
The video DAC doesnt have H & V.
Eriond wrote:
but I still need to get to Lisas 28M buffered clock. So, it seems I would need to clip over both chips...
Or have a couple of wires that plug into the 23-pin video connector on the back (for H & V). It's been done before, you could get some DCE Flickermagic's which did that instead of clipping to the Alice.
-
I think there's a chance to make this work with some 5V->3.3V level converters and an smart HDMI transmitter.
The section "6.3 Video Format Timing Specifications" gives hope.
The worry points are:
* Resolution and timing match, esp for 320x256 modes etc..
* Need for a possible external line buffer.
* Digital audio interface.. don't think Paula has one?
Anyone have a A1200 full schematic?
-
freqmax wrote:
I think there's a chance to make this work with some 5V->3.3V level converters and an smart HDMI transmitter.
HDMI transmitters should have 5v tolerant I/O? Strange just on the I2C... So yeah you'll need some resistors on the RGB+Sync
freqmax wrote:
The worry points are:
* Resolution and timing match, esp for 320x256 modes etc..
There is a high possibility it will be fine. If the HDMI transmitter works for regular TV inputs (and I am sure it does) then it should work fine for Amiga.
freqmax wrote:
* Need for a possible external line buffer.
What for?
freqmax wrote:
* Digital audio interface.. don't think Paula has one?
No, but you can just wire Analog to your Amp?
freqmax wrote:
Anyone have a A1200 full schematic?
Are these (http://www.ianstedman.co.uk/Downloads/A1200_schematics.pdf) not complete?
-
Eriond,
If you have the SiI9134 datasheet, check if it supports RGB 8:8:8 input (24 bit video)?
The product brief is unclear if it supports this video format.
For the I2C interface, I'll tell you a little of what I will soon be experimenting with. I am playing with Microchip PIC microcontrollers for a non-amiga related application and will be using the I2C bus. These devices can send/receive the I2C bus easily. To make development easier, you can buy a I2C monitor/probe, the PICKit Serial Analyser. Look this up on the Microchip website (http://www.microchip.com).
You can bit bang the parallel port but a microcontroller costs only a few pounds/euros/dollars and takes care of it.
I think we are all getting screen resolutions and lines of video mixed up.
A PAL Amiga outputs 576 lines of active video, regardless of if the resolution is 320x256 pixels or 640x256 or 640x512 pixels. An NTSC Amiga will output 480 lines of video (I forget the resolutions of NTSC Amigas). There will be a scaling factor to fit for example, 256 pixels high across say 512 lines of video. Likewise 320 pixels of data will be stretched to fill the 52us active video time of a line of video. If there was less data/pixels you would see black borders on an analogue TV.
Likewise, VHS video is only 315-325 lines of video data but scaled to fit a full TV display.
Tomorrow night, when I return to the workshop :-) I will take a look at the Amigas video signals on my oscilloscope.
What I'm saying is that regardless of the pixel resolution, there should still be 576 lines of video for a TV display and enough video data to fill the 52us active video line. This in turn should be enough video data to satisfy the 25MBit/sec requirement of DVI/HDMI.
On one of our systems at work, we convert PAL (768x576 pixels or 576 lines of video) to DVI with no issues.
Lisa has a 28MHZ clock input on pin 25. On pin 43 is the 28MHZ clock output to the Video DAC.
Either the Sync on Green (SOG) on pin 26 or the global, CSYNC output is used to sync the BT101/ADV101 video DAC.
Hope this helps.
If I get the time tomorrow, will measure the Amiga RGB video outputs with my scope.
Ian
-
Hello,
my guess about how Jens "recreates" the H/V Syncs is that he looks at the strobe addresses that are sent on the register address bus.
Open the HRM, and look at chip registers STREQU, STRHOR, STRLONG, STRVBL (038-03E)... :idea:
Regards,
Frederic
-
Stedy wrote:
If you have the SiI9134 datasheet, check if it supports RGB 8:8:8 input (24 bit video)?
It says on the front page it supports 36-bit.
Do not get your notation mixed up.
RGB 8:8:8 means 8-bits per colour component per sample.
WHEREAS
RGB 4:4:4 means equal sampling of all three components, i.e. no subsampling/decimation like Y'CbCr 4:2:2.
-
Ok, now we're getting somewhere. And I thought you had given up on the SiI and ANX chips, eriond. :-D
So, you connect a PIC to listen on a free adress somwhere in the IO space, and...? Will the PIC be doing some intelligent handling of the I2C bus, or just "reformat" it?
I guess once we know what the HDMI TX wants to talk about, you could adapt the PIC code to offload any driver (bit-banging will probably not work if you want to do it in the background while some game or demo has hoged all resources).
:idea: Maybe, the PIC could listen to the commands given to LISA and automatically adjust the HDMI TX... hmmm?
@Stedy: Below is an image from the Analogix product brief. There you can see the RGB bus being numbered [35:0] This means they can accept up to 12bits/color channel, but the brief also states "Flexible 36-bit video pixel input interface; Includes 24, 30 & 36-bit pixel video modes"
(http://i279.photobucket.com/albums/kk158/CarlKula/ANX8560block.png)
-
CarlK wrote:
So, you connect a PIC to listen on a free adress somwhere in the IO space, and...? Will the PIC be doing some intelligent handling of the I2C bus, or just "reformat" it?
You don't really need a PIC to start with. Just two (3?) wires direct to the parallel port.
CarlK wrote:
:idea: Maybe, the PIC could listen to the commands given to LISA and automatically adjust the HDMI TX... hmmm?
I think you are going a little overcomplicated. I recommend the K.I.S.S. method. Setup the I2C registers (with parallel port) for PAL/NTSC and later you can add automatic switching (if necessary, I am not convinced that one setup wouldnt work for everything).
Anyone got the I2C register list? Of any of these chips? Some sort of driver source?
-
Eriond has already requested those datasheets from both SiI and Analogix. As someone mentioned before, there might be an issue due to NDA and the like.... afaik, eriond hasn't got any reply. Yet. Correct me if I'm wrong E.
Btw, I still think adding a PIC as a co-processor of sort is a good idea... The paralell port is a really simple solution, but as I said before, It wont work unless you have an application that control it. Always and at all times. I would preferer a hardware-only fire and forget solution.
/Carl
-
Hi all!
Well Carl, Analogix have been so kind to forward me the datasheet for the ANX8770 and 8775 which are two HDMI Receivers! I will (in a gentle manner) point out that there must have been a mistake, and ask them to give it another try.
Meanwhile I'm busy designing the proto-board and have gone hunting for a suitable PLCC socket that would clip on our chips of interest. Yes, I will take the PIC idea into consideration. I'll get back to you on that...
/Eriond
PS. What do you think about putting the modded A1200 into this case:
(http://www.pcpro.co.uk/picture_library/dir_84/it_portal_pic_42112.jpg)
-
Status update:
I have now received the official data sheet for the ANX8560 HDMI TX. Quite a beast! 50 pages describin pretty much all aspects of what we already know (pins, power, etc) but when it comes to the video modes it can handle they state:
4.2 Video Input Data
The ANX8560 accepts multiple input video formats and can convert them into different output formats before
presenting them to the HDMI interface. The Video Data interface is programmed by setting the Video Control
Registers.
Cool, right? Unfortunately there are no descriptions of those "control registers", nor are there any lists, tables or examples of the "different output formats". The end of the document says:
This document contains proprietary information of Analogix Semiconductor, Inc. or under license from third parties. No part of this document may be reproduced in any form or by any means or transferred to any third party without the prior written consent of Analogix Semiconductor, Inc.
So I cant forward it to you... :-(
You just have to beleive me on this one.
There are quite a few 8-) things mentioned though;
You get full access to the CEC interface (http://hdmi.org/pdf/whitepaper/DesigningCECintoYourNextHDMIProduct.pdf); meaning the TV set can forward remote commands to the Amiga and the amiga can access the OSD function of the TV to display arbitrary data. Maybe not the most neccessary feature, but still cool! :-D
To do all thesee trix and to fully control the HDMI TX, I'll definetly go for a PIC. There are things mentioned in the specs that would be too difficult to handle with plain logic. A local micro would also ensure proper operation at all times, without the need for propriatary driver software. Of course I intend to hook up the PIC to the Amiga bus somehow, so that a driver can access and control all the "cool" features.
Then there is the issue of Audio. Phew!
Due to the complexity of the Paula chip, with all of its DMA stuff going on, and the issue of primairly 8-bit audio on the Amiga, I intend to do one of two things:
a) Try to find a stereo analog-to-SPDIF sampling chip, and feed its output directly to the SPDIF input on the HDMI TX.
b) Abandon audio support, and let people use the standard analouge outputs on the Amiga itself.
A is of course a much cooler approach (the amiga can then be treated as any other modern home entertainment equipment, only requiring one cable to connect) but B is simpler. Maybe I just do like C= and make room for a sampler chip on the board, but leave it "optional"... :lol:
Time to continue designing custom ICs in Eagle. (Another time-consuming task...)
/Eriond
-
Eriond,
Using a microcontroler for the I2C is good! As well as connecting the I2C bus to the HDMI device, you will also need to connect it to the HDMI connector. This allows you to read the I2C EEPROM in the TV and find out what display modes it supports. The serial port or clockport would be easy interfaces for the control interface.
If you bit bang the I2C bus, you must remember that the bus is open collector, so when finished with the bus, set the clock/data pins to input. Not doing this can hang the bus.
From a quick web search of suppliers, it seems that all HDMI devices are under NDA. Given any thought to making a DVI port and using an off the shelf DVI to HDMI adaptor?
DVI devices are openly documented and easier to purchase.
Have you enquired about purchasing small quantities of HDMI devices from either Silicon Image or Analogix?
If you can not purchase them, not much point in doing the design. Just trying to be practical here.
Good luck
Ian
-
Thanks for your input, Ian.
The nice thing about this new HDMI TX (or "sources" according to HDMI.org) is that it directly handles the complete HDMI plug. That means it has an on-board I2C master for the DDC bus. It also handles CEC and the Hot-Plug indicator pin.
So all I need to do, is to talk to the device's I2C slave port! Nice and simple.
As for availability, Analogix state that the smallest order quantaty is 600 pcs. They are kind enough to send me a couple of sample chips for just p&p.
I'm intending to do this as an open proof-of-concept design. Hopefully there will be distributors that pick up this device for us ordinary mortals to buy one piece at a time.
DVI 1.0 is natively supported by the ANX8560. In practice this means you just need a HDMI->DVI adapter plug.
-
The chips arrived today. And now I have also got the register documentation...there are quite a few!
Offset Register Group,I2C Address,Page
0x00 ‐ 0x04 Device ID and Initialization 0x72/76 P. 12
0x05 ‐ 0x0A System Control and Status 0x72/76 P. 13
0x10 ‐ 0x3C Video Control Registers 0x72/76 P. 17
0x40 ‐ 0x4B Interrupt Processing 0x72/76 P. 33
0x50 ‐ 0x72 Audio Control Registers 0x72/76 P. 40
0x80 ‐ 0x8A DDC Control Registers 0x72/76 P. 56
0x90 ‐ System Power Down Register 0x72/76 P. 60
0x96 ‐ 0x99 TMDS Control Registers 0x72/76 P. 63
0xA0 ‐ 0xE4 HDCP Status and Control Registers 0x72/76 P. 66
0xC0 ‐ 0xCF Configuration I2C Registers • 0x7A/7E P. 76
0xD0 ‐ 0xD4 CEC Control Registers • 0x7A/7E P. 80
0x00 ‐ 0xBE InfoFrame and Control Packet Registers 0x7A/7E P. 83
91 pages all in all. But right now, its bedtime! I'll keep you posted.
/Eriond
-
Did this project went anywhere?
As a bonus there's FPGA:s that can do HDMI natively if one as able to solder them ;)
Some useful links:
Amiga 1200 Motherboard (http://www.amiga-hardware.com/download_photos/a1200mb_rev1d4.jpg) PCB picture (rev 1d4)
Auto-detecting SD/HD/PC Video sync separator (http://www.ti.com/lit/ds/symlink/lmh1980.pdf)
ADV101 80 MHz, Triple 8-Bit Video DAC (http://www.analog.com/static/imported-files/data_sheets_obsolete/2119899ADV101.pdf)
ADV101 80 MHz 3x 8-bit D/A (http://www.ic1w.com/pdfs/pdfDown.aspx?id=89164699A424A444DABF9D63FD56A292&type=290&xh=ADV7120KN80) without "obsolete" written all over
Amiga 3000 Lisa + Alice (http://www.amigahistory.co.uk/prototypes/a3000plusaga.jpg) PCB picture (PLCC socket)
Amiga 1200 block diagram (http://www.amigahistory.co.uk/block.gif)
Amiga 1200 schematics (http://www.ianstedman.co.uk/Downloads/A1200_schematics.pdf) - defunct!
Amiga 1200 schematics (http://www.proggle.net/~andrew/download/amigaschematics/a1200schematics.pdf) (2.2 MB)
-
My A1200 already has HDMI output :)
HDMI 1200 (http://www.youtube.com/watch?v=My_3cCJLfpE)
-
silly. A1200 should have svhs/svideo, analog RGB or perhaps scandoubled/dblmode vga scanrate.
anything more is just ridiculous. never expect any native mode to be cycle exact with your hdmi implementation...
peace\
-
silly. A1200 should have svhs/svideo, analog RGB or perhaps scandoubled/dblmode vga scanrate.
anything more is just ridiculous. never expect any native mode to be cycle exact with your hdmi implementation...
peace\
I prefer:
HDMI output
16 GB SSD HD
80Mhz 060
IdeFix Express
:)
-
If the Amiga dictate the clockrate it will be cycle exact, because the Amiga defines it.
And most TV sets use HDMI, better get started with it. Or the video output options might be as limited as trying to read 5,25" floppys.
-
I prefer:i
HDMI output
16 GB SSD HD
80Mhz 060
IdeFix Express
:)
IDEfix express is out?
-
IDEfix express is out?
You mean the new SATA version?
No I've got the current model (the Mrk2), makes a big difference to running heavy games on a 1200 (4.2 MB p/s transfer rate).
-
You mean the new SATA version?
No I've got the current model (the Mrk2), makes a big difference to running heavy games on a 1200 (4.2 MB p/s transfer rate).
I have the FastATA hooked to a dual SATA adapter, and get little over 5mb/sec, but I still might be interested in getting the new SATA IDEFix express. Maybe... i dunno..
Actually what I need is a cheap way to convert the blizzard SCSI to SATA...
-
If the Amiga dictate the clockrate it will be cycle exact, because the Amiga defines it.
And most TV sets use HDMI, better get started with it. Or the video output options might be as limited as trying to read 5,25" floppys.
simpler get a TV with SCART, or convert RGB to YPbPr (think EAB has such project).
iirc, the HDMI thing wouldn't work because Amiga does D/A conversion inside a chip.
so you'd need to do a A/D conversion for HDMI, and that sux, and most TVs can do that with component signal already.
-
Been thinking of trying one of these
http://www.amazon.com/Expedited-LinkStyle-Composite-Converter-Interface/dp/B003AOPADA/ref=wl_it_dp_o_pC_nS_nC?ie=UTF8&colid=6T8O6D60KIS4&coliid=I1DZCDHZK5LNYV (http://www.amazon.com/Expedited-LinkStyle-Composite-Converter-Interface/dp/B003AOPADA/ref=wl_it_dp_o_pC_nS_nC?ie=UTF8&colid=6T8O6D60KIS4&coliid=I1DZCDHZK5LNYV)
-
iirc, the HDMI thing wouldn't work because Amiga does D/A conversion inside a chip. so you'd need to do a A/D conversion for HDMI, and that sux,
And if you had actually read the thread it would been obvious that the idea is to piggyback the D/A chip ADV101KP30.
-
@kvasir
better look for RGB->HDMI
@frekmax
right, and if you had thoroughly read the thread, you'd know how to build one yourself (by now) :P
-
Been thinking of trying one of these
http://www.amazon.com/Expedited-LinkStyle-Composite-Converter-Interface/dp/B003AOPADA/ref=wl_it_dp_o_pC_nS_nC?ie=UTF8&colid=6T8O6D60KIS4&coliid=I1DZCDHZK5LNYV (http://www.amazon.com/Expedited-LinkStyle-Composite-Converter-Interface/dp/B003AOPADA/ref=wl_it_dp_o_pC_nS_nC?ie=UTF8&colid=6T8O6D60KIS4&coliid=I1DZCDHZK5LNYV)
you would probably be better off with a SCART->HDMI for better quality. Also SVIDO requires yet another adapter, and all the SCART would need is a cable...
Indivision is really worth the money and WB really looks great in 1280x720@4bpp :)
Hopefully this HDMI project is a success... Indivisions will sell out for sure....
-
@CarlK
I believe itis possible, but in a much easier way than you think.
@meega
You dont have to run Workbench in SuperHiRes Mode. You can just run it in Hires Interlaced and upscale it somewhat.
The easiest way Ive seen to get HDMI on Amiga is via and Upscale DVD player with S-Video inputs...........My DVD Player upscales my Amiga Output and outputs it to my FLickerFixing Projector via HDMI.........it looks the same as S-video but blurry somewhat because I guess the upscaler expects pixelization and overcompensates.
Therefore HDMI is possible on the Amiga via a simple scandoubler type looking device that attaches to the RGB port and does the Upscaling, yet supports SuperHires interlaced mode as well if someone chose to use that.
Personally I use SuperHiresMode for Text credits and scrolling credits on Video.........looks freakin awesome.
Sometimes getting too technical about things makes it seem impossible. but it is easily achievable (and by that I dont mean that it is easy creating the hardware) I just mean the concept is easy.
The Amiga itself doesnt have to have a native HDMI output, because then it would need modifications and slow down the system...........
Hi i also have one of those boxes that can be used with HDMI. but it gets very blurry as you said. it is a shame because it did cost a lot.
-
you would probably be better off with a SCART->HDMI for better quality./QUOTE]
... only if the adapter converts the RGB part. Composite will suck.
-
you would probably be better off with a SCART->HDMI for better quality./QUOTE]
... only if the adapter converts the RGB part. Composite will suck.
Yes that could be nice, but it only takes Composite the one i have now :( why is it SCART is better than Composite? is it something to do with the signal?
-
It's to do with that seperate signals för Red-Green-Blue and sync is way better than just push it all into the same signal wire. But SCART provides both RGB, S-video, Composite and users don't really know which ones are used..
Oh, and a signal path of D/A -> A/D is not better than a fully digital path.
-
It's to do with that seperate signals för Red-Green-Blue and sync is way better than just push it all into the same signal wire. But SCART provides both RGB, S-video, Composite and users don't really know which ones are used..
Oh, and a signal path of D/A -> A/D is not better than a fully digital path.
I have a SCART Adaptor where i can put the Red-White-Yellow cable from the Amiga into, and then i can put it in the SCART on my TV. Will that give me better picture quality or is it still not real SCART?
-
I assume it's Red-White-Yellow <=> Right-Left (sound) -Yellow (composite video) so it's kind of the worst signal quality used with SCART. But's it's still SCART. Because that standard is a collection of possible signal standards.
So yes, it is SCART. But not optimaly used.
-
I have a SCART Adaptor where i can put the Red-White-Yellow cable from the Amiga into, and then i can put it in the SCART on my TV. Will that give me better picture quality or is it still not real SCART?
you need to check if that SCART connector on TV can take RGB signal. some TVs have more than one SCART. look in the manual. there is pinout for making 'RGB cable' on EAB.
-
I assume it's Red-White-Yellow <=> Right-Left (sound) -Yellow (composite video) so it's kind of the worst signal quality used with SCART. But's it's still SCART. Because that standard is a collection of possible signal standards.
So yes, it is SCART. But not optimaly used.
I have 2 SCART to Amiga RGB Cables but when i use them on my 43 inch plasma screen, i get worse picture than when i use Composite cable. I find that very strange
-
I have 2 SCART to Amiga RGB Cables but when i use them on my 43 inch plasma screen, i get worse picture than when i use Composite cable. I find that very strange
are you sure TV is in 'RGB' mode? I suggest you build this one:
http://eab.abime.net/showthread.php?t=47281
-
are you sure TV is in 'RGB' mode? I suggest you build this one:
http://eab.abime.net/showthread.php?t=47281
Hi do you mean there are something i need to change in my TV settings?
-
Hi do you mean there are something i need to change in my TV settings?
well, it depends. some old TVs let you select RGB/S-Video/Composite on the remote with AV button. but nowadays, you probably need good cable that supplies enough voltage on (infamous) pin 16 of SCART connector ( http://en.wikipedia.org/wiki/Scart ) so that TV automagically switches to RGB. other than that, you might need some resistors in signal lines. check out that thread.
-
you would probably be better off with a SCART->HDMI for better quality. Also SVIDO requires yet another adapter, and all the SCART would need is a cable...
Indivision is really worth the money and WB really looks great in 1280x720@4bpp :)
Hopefully this HDMI project is a success... Indivisions will sell out for sure....
SCART would be nice, just a bit impractical for the side of the Atlantic I live on.. RGB->HDMI would be a better bet. Didn't think that would work, though, thought HDMI was digital? Also, not sure if the TV I have would sync HDMI down to the 50hz that most games I like insist upon.. Emerson's tech support line is usually somebody who doesn't know s**t saying the TV doesn't support Amiga's, or any computer without a VGA connector (even an amiga with rgb->vga connector running dbl-ntsc, which I know better...)