-
Posts
178 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Events
Store
Community Map
Everything posted by Windless
-
It needs to be tested, but I hope that : -PAL-I can be generated by the timer, -PAL-S can be put on an interruptable pin, and hopefully since it need to trigger at 900KHz (15 times per VBL) it happens during VBLANK so it won't slow the colour conversion -Reading the 3 LUM could be just one cycle -Reading COL would require reading a timer when a signal occures -Then combining everything and reading a lookup table could take a few cycles -Generating the SYNC can be done while waiting for COL or while outputing RGB values ? I did not write the code, but it's probably 10-20 cycles total. Since the TIA is 3.54MHz on pal when the bluepill is 72MHz, that *may* work. But it only work if the 1.55% error additionned to the error of the blupill crystal is precise enough for PAL-I It has a few 5V tolerant pins, IIRC scart is 0.7V so output will be ok also. Disclaimer : I have very few experience with microcontrollers, and none with analog signals, I may forget lot of things.
-
Do you have a schematic of this part ? Because from what I could see, the LUMx output of the TIA seems to be directly connected to the inputs of the D flip-flops. Maybe the three other inputs/outputs of the hex fliflop serves this purpose ? (the tracks run under some IC, I will ty to find a cheap broken 2600 to remove components and make a complete schematic) Ho, so maybe I made some wrong assumption and the sound goes to J201.11 and is muliplexed elsewhere ? (by an mc1373 like on my SECAM 2600, even thought its datasheet says it expects color on the same pin as sound, but probably it does not hurt if color is already multiplexed with ULM and SYNCH ?) Is it open source ? Because if I'm going to make a PCB for the clock anyway, It would be nice to make an all-in-one one. I also, I still have not given up the idea of using a $2 cortex board, which could generate the clock and scan the output from COL, and generate RGB to a SCART. Not sure all this would fit on the 72MHz board, but it would be nice.
-
On my board, instead of a CD4050, there is a T74LS174B1. Apparently it would be a flip-flop (the datasheet if for t74ls174 no b1), it buffers AND keep he value until next clock signal. An interesting thing is there is no pull-ups before the T74LS174. Are they required only because of the CD5040 ? Are they unneeded when you use some kind of buffer ?
-
Ok. I'll wait to receive the DIP40 sockets (I don't want to bend or cut pins) to make the test on the PAL-U pin from the 3.5MHz signal. In the meantime, I can start trying to understand the other side of the schematic : This is the schematic of the PAL 2600 as found on atariage. I took this one because I have a PAL TIA on my REV7 SECAM 2600 board. The greyed part are the parts that I think are not relevant to the PAL signal generation. The untouched part are the one I am unsure about The red part is the 4.43MHz signal needed to generate PAL color. this is the one we already discussed. The blue parts seems to be a used to generate a constant adjustable voltage on DEL (CADJ) to adjust color. This is true if 1nF C203 capacitor is just here to clean the OSC signal and has no effect on the blue part, which seems true (but I'm not skilled with electronics). The green part is the part that needs be remade to generate the composite signal (without sound) Blue part Not much to say about this, except that on my board if there are potentiometer to adjust the delay, they are from the TIA (bottom right corner) and have been locked with some welding. The voltage at DEL seems to be a fixed 5.04V. Hopefully this dos not need to be changed. Green part -This seems easy to re-do. CD4050BDR seems to be still available at mouser. But is it the same pat ? The datasheet says it is an hex non-inverter buffer, the FAQ on this forum says it is a video buffer. -The output goes to J12. I guess this is the composite entry for the RF module,but the RF module on my PAL REV7 is quite different : it uses a MC1373 which has a separate Composite (lum + synch) and Color (+audio) input. Does it mean that if I want to reuse the HF output, I need to no connect R222 and R234 and input the two separated tracks into the MC1373 ? Or maybe I could just add a CD4050 an AV output as described by alex_79 here. Can I do that without disconnecting the existing part of the schematic to preserve the hugly HF SECAM output ? -I do not understand the part that is let B&W on the bottom right of the schematic. I guess J201/10 in ground (since it is connected to CD4050 pin 8, Vss), but then all the part with coil and the 2N3563 would be a can of modulated powersupply that would create a carrier, modulate it with AUD, and use this modulated output as a Vcc for the 4050, hence modulating the output to add sound on it ? Anyway with AV output, I can just ignore everything that is inside the purple polygon, add a CD4050 with a clean 0/5V on the its Vss/Vcc ? Or do I need to disconnect the existing components ? MC1373.pdf
-
Cortex was a rather simple solution for me, but wht you propose is even simpler Wil try this. Thaks you, Windless. * : (I have two blue pill that I paid $3 a pair and don't use, would need to order the crystal, capacitors, and a coil of undefined value to reproduce the clock found on the schematic of the pal 2600)
-
Do you think I can use a 22pf on the output of PAL-S to filter, read it with a blue pill (72MHz Cortex 0 board you can buy for $1.5), then generate a 4.43MHz-ish square signal to PAL-I with the Cortex ? This would introduce a delay of about 3 cycles (<50ns) to detect the crossing of the 890KHz signal, then I could generate a 16 cycles signal to PAL-I (4.5 instead of 4.43MHz). This is a 1.6% variation, which needs to be added to the variation of the crystal on the cheapo cortex M0 board. Could this be used to test to see if a signal appear on COL, even if the output is not good enough to get real secam colors ? Random guess : could the PAL-I signal be used only to modulate the output of COL signal, hence I could just tie PAL-I to +5V and get a square signal instead of 4.43MHz signal on COL ? I need to find some documentation about how subcarriers work
-
Ok, the track fom pin8 of the tia (PAL-I) quickly reaches pin 2 on the 6507 (Vss). I tryed to understand from the schematic of the TIA if this should give no signal on COL or a signal that would not have the expected shape/timing on the NTSC / SECAM ouput but that's a bit complicated for me. I order DIP40 sockets so I can lift pins without too much deterioration of the IC.
-
I'll try making a schematic of what I find on this part of the board tomorrow. Unfortunately I won't understand much of what I will see not completely impossible I made shortcut and blow something, but I'll try on other tuners to see if I can have my color back.
-
One thing I did not mention but may be of importance : I use an old 4:3 LCD monitor with a tuner. The first time I switch this console on, I hade to on/off several time so the game would start. The TV did not find the color signal everytime and often displayed B&W. Now that I have open the console and removed the EMI shield (and move to another power outlet), the picture is always B&W with lot of snow unless I put the switch on B&W.
-
Converting to PAL is an option, another is to read COL and LIM with a pi zero and have an HDMI output, maybe being able to select NTSC / PAL / SECAM palette with a switch. For now I learn using the oscilloscope, and start understanding a few things about analog signals and RF, that's my main goal for now. 4.680kR on the 4.45MHz side of the crystal, nearly 0 on the pin 8 of the TIA.
-
My console is SECAM with a PAL TIA, not PAL. That might be the reason. I was writting " But should this explain the fact that there is no output on the COL pin ? " but then it occurred to me... that COL is unconnected on this board. The schematic of the PAL 2600 shows a 1K pull up... That may be all I need to read the signal on COL ^^ In the capture on my previous message, I used a trigger at +100mV and a manual 500ns and 5us per division. The 4.453125MHz crystal is labelled Y202 not 201.It took measurements on both side of the crystal. The side which is up on the last picture of my previous post (on the small smallest of the two yellow components) have a signal with the same 890kHz hat is found at PAL-S, but cleaner and with a superposed sinusoïd : On the other side, the expected 4.45MHz is found. It is not very clean but this I removes the EMI shield and I know the current from the power outlet is far from clean here (bad ground + electrical water pumps around) : (on the picture the oscilloscope guessed 6.99MHz, but most of the times it shows 4.45) Still no change on pin 8 / PAL-I. For reference, a picture of the points I used to measure (maybe I made a mistake ?)
-
I play a bit with my oscilloscope that I almost never used, and got a bit better. -On PAL-I seems to show a 890kHz signal : NewFile2_png.txt I found this thread : stating that on PAL consoles, the PAL-S provides a signal to keep the crystal oscillating, the output of this crystal entering in PAL-I. Is this noisy 890kHz used to make sure a crystal oscillate ? There is a crystal but not 4.43,it is a 4.453125MHz, I did not follow the track to see if it is somehow connected to PAL-I, but PAL-I seems to have only a very noisy 1gHz signal : I really don't know enough about electronic to understand how the PAL TIA is used there, but I did not find any output on COL. Here are a few pictures of the crystal on the SECAM 2600 : Is there any chance to make a modification so I can get some kind of ouput on the COL pin ? Thank you, Windless.
-
Ok, thank you for this information a! aIs there a documentation I missed where this is explained ? (I found some info on the biglist archive but nothing that precise)
-
Something I do not understand : SECAM uses 50Hz, one frame lasts as long as 262*228 pixels, so one pixel lasts 1/2.986.800 seconds, or 0.335µs, or the signal here appear to have a period of 2*3.4µs... Did I miss something ?
-
Thank you Alex I did a few tests with Jump'n'Bump on pin 9 (COL) of my PAL TIA on SECAM 2600, and failed to observe a signal there nor on PAL-S or PAL-I. I did find something on LUM2. Possible problems are : -Wrong use of the DS1054Z (frequency, mode, ... ?) -Maybe a lacking signal on PAL-S / PAL-I pins or something unexpected on DEL causes the output on COL to be absent ? Instead of recreating the composite signal, one could also probe the COL and LUM0/1/2 with a raspberry pi zero (1gHz), and have an HDMI output. It would be interesting to see if the 1x, Ex and Fx color give no COL signal, or a COL signal that is out of scope (if the later is true, it would be possible to use the full NTSC palette on PAL and SECAM consoles) Here is a small sample of the signal I find on LUM (with settings in txt file) : NewFile1_png.txt should the same setting show something that does not look like 0.5V noise on COL or PAL-I / PAL-S ?
-
Thank you Alex I did a few tests with Jump'n'Bump on pin 9 of my PAL TIA on SECAM 2600, and failed to observe a signal. I did find something on LUM2. Possible problems are : -Wrong use of the DS1054Z (frequency, mode, ... ?) -Maybe a lacking signal on PAL-S / PAL-I pins or something unexpected on DEL causes the output on COL to be absent ? Instead of recreating the composite signal, one could also probe the COL and LUM0/1/2 with a raspberry pi zero (1gHz), and have an HDMI output. It would be interesting to see if the 1x, Ex and Fx color give no COL signal, or a COL signal that is out of scope (if the later is true, it would be possible to use the full NTSC palette on PAL and SECAM consoles)
-
I wanted to try this myself but : -I'm not very skilled with scopes, I used mine only twice -My 2600 is SECAM, which means it has the B&W pin grounded, so nothing on COL if I understood correctly, so I either need a game that ignores B&W or to code something but for this i need some devcart. I could make one with a bluepill I guess. The game I own are : -Tennis -Circus Atari -Bump'n'Jup ("P" sticker) -Real Sport Soccer (P) -Defender (P) -Real Sport Boxing -Pole Position -Jungle Hunt -Off the wall -Centipede (P) -Forest -Ms. Pac-man (p) Is there a B&W ignoring game in this list ?
-
Hi, Is there a documentation showing the shape of the signal on the COL pin ? I think LUM0/1/2 show 0/+5V (because they a reconverted to an analog value via aresistor ladder), SYNC probably do the same, but what about COL ? Does it output the 4.43361875 MHz modulated carrier ? Or does it just output a squarish signal (with a delay varying with the color, and staying 0 if color is black) that is later multiplied with the 4.433 signal ? thanks, Windless. PS: i tryed opening a subject in the hardware part of the forum but maybe the subject will get more attraction here ?
-
Digging the forum : -In mid 2015, alex_79 gives some hints about how the TIA has some pin (which one ?) set to ground for PAL, NTSC, and W&B switched SECAM, and LUMx are used as RVB on color mode SECAM. Also refers to a lacking "additional oscillator circuit needed to generate the PAL chroma signal",I'll try to find in schematic where this is (inside the modulator or connected to the TIA ? If it is inside the modulator, it seems possible to read the LUMx and COL from the TIA and use them in either a scavenger or home made modulator ? Or an high frequency IC which could output VGA / HDMI signal ?) -In late 2015,Apocalypse had something similar in mind but the topic ended without a real conclusion.
-
Hi, I try to understand how the TIA is connected to the VHF module on a SECAM 2600, having in mind to try displaying the proper colors instead of the 8 ugly ones. From what I've found for now, LUM0/1/2 behave exactly as expected from the TIA (no difference on LUMx on NTSC and PAL TIAs). Now the problem is the color signal : -Is there a document about how the color is encoded on either PAL or NTSC TIA ? -I've read somewhere on this forum that you can get the signal from the COL pin of a TIA on a SECAM 2600 because it's missing a clock signal hence it won't produce the output, but no precise information. Do you know where to find any of these information ? Thanks, Windless.
-
Could this work ? After line 192, you VBLANK, then : -init Y at zero (2) and A to proper collision mask (2) -position a missile at pixel X (11 cycles) -position a ball at start of line (3 cycles) -set HMBL at 3 (5 cycles) -at each new scanline, HMOVE (3 cycles) and increment Y (2) until collision detected (6/5 cycles) total : 28 + result * 11, max about 380 cycles, but definitively more fun. Note you can divide many number at once using this techic, or divide a number by severals number, saving many cycles.
-
Displaying P0 twice more than 64 pixels appart ?
Windless replied to Windless's topic in Atari 2600 Programming
Ok, that can not work. Here is what I understood after some test (nothing new, everything was in the doc, but learning by doing is great) The code : P0 is positioned on left of the screen NUSIZ0 is set to %00000111 (1:4 clock speed) Wait for a few ticks for P0 to be partly drawn, then switch NUSIZ0 to %000001100 (1:1 clock speed, 3 copies medium spacing) Top and bottom halves of the screen keep the clock 1:4 for different time spawn. What I understood : The start signal is triggered by value of the Player Horizontal Position Counter The Player Graphic Scan Counter is the one which goes divided by 1:2 or 1:4 to stretch the Player, not the PHPC Next step trying to understand this : I think this is refering to the fact that on next line, I will need to RSP0 the player, hence reset the PHPC before it reaches 160, hence the first/third copy will never be drawn. Trying to do the same thing using HMOVE during a scanline. Windless The test : test.asm test.bin -
Displaying P0 twice more than 64 pixels appart ?
Windless replied to Windless's topic in Atari 2600 Programming
Mmm, I think I get the idea. I would still need a second hmove between the two of them but it would probably saves cycles when compared to my other solution. Reading th TIA HW Notes, I seems to me it would be possible to : -Start drawing 'main' player 1 with NUSIZ0 set at 0 for 3x3 cycles -Switch NUSIZ0 to either 5 or 7 so the Player Horizontal Position Counter only gets incremented every two or four crystal clock -Wait for for the PHPC to reach up to 64[1] and switch NUSIZ0 to 6 to get just before drawing of the third (which will be actually) second copy. With this, and mixing 3x1, 3*1/2 and 3*1/4 PHPC increments, it seems I could achieve what I need ? I will try to test that on the emulator, I still need to find a 2600 Wlss 1 : (it starts at 8, so that's 56 increments, with PHPC incrementing every 4 color clocks it takes up to 224 pixels) -
Displaying P0 twice more than 64 pixels appart ?
Windless replied to Windless's topic in Atari 2600 Programming
Ok, reading this lead me to more questions, which made me find the TIA HW Notes with an important information I missed : the players start being drawn not 0 but 160 TIA clocks after the RESP0, but also 16, 32, and/or 64 depending on NUSIZ0. With 1 CPU clock equal to 3 TIA clock, it means that without RESP0 you can position a player drawing at 16, 32, 64 or 160 + n*3 pixels. Then if you can position a player at X = (32 + (n+1)*3), you can also position it at (16 + (n+6)*3) = (32 + n*3) - 1 = X-1 and of course (32 + (n)*3) = X-3. This means I no longer loose 2 bits but only 1. I'll continue to digg the doc to try understanding if I can do a +0 instead of +160 drawing, or if there is another trick to get a +1, that would solve my problem if the horizontal distance between the sprites is more than 32px. Wlss. -
Hi, I want to display P0 twice (P1 is used for something else). Using NUSIZ0 I can have a copy up to 64 pixel away from the first instance. But I'd like to have more distance than that. I can RESP0, but then I can only position P0 every 3 pixels. I can then ASL / LSR the pixels, but I loose two pixels (can only have a 6px width P0. I can't HMOVE the second P0, because RESP0 will reset the +7/-8 offset, and an HMOVE made after RESP0 apparently prevents sprites from being display or the next 72 pixels. Is a possibility with making an HMOVE then making a RESP0 or changing HMP0 during the 24 forbidden cycles to achieve the +1/-1 on the modulo 3 position I need ? Or something else I don't know about yet ? (I've only been into 2500 for a week ) Thank you, Windless.
