ramapcsx2 / gbs-control

GNU General Public License v3.0
786 stars 110 forks source link

GBS with Amstrad #173

Open NZtechguy opened 3 years ago

NZtechguy commented 3 years ago

Hi. I left a question on the Shmups forum but it didn't seem to work.

Anyway, I have an Amstrad CPC464 and have purchased a GBS8200 for it. I'm not sure if you have had any other users with issues concerning the Amstrads. In the Amstrad wiki, they just connect the RGB and composite sync straight into the GBS and away it goes. Not for me, haha. I have the version 5.1 GBS board and it doesn't see any input from the Amstrad. If I disconnect the sync wire and tap it on the connection to the sync input of the GBS a few times, it suddenly gives me one frame with perfect colours but a shifted picture horizontally ie no sync. I have an original Amstrad green screen monitor and if I connect that to the Amstrad CPC, I get perfect mono picture, and that uses the sync pin so I assume the sync is fine enough for that monitor. If I scope the sync line, I see what seems to be normal looking sync pulses of around 3.6 to 4V pk-pk. I also tried attenuating the sync down to 2V or 1V with a couple of series resistors and a 120ohm between sync and ground also. No joy.

Do you think I would need to clean up the syncs for the converter? What is the sync spec that the GBS expects? We use PAL here in New Zealand so I'm assuming it's auto sensing sync freq? I'm trying to get another RGB source to test the board in case I have a bad GBS.

Any help would be greatly appreciated. I'm dying to get my old Amstrad in colour :-)

Thanks, Mark

necroware commented 3 years ago

Hi Mark, I also messed a lot with GBS-8200 and gbs-control in the recent time, but for MDA/Hercules/CGA/EGA formats. What you describe sounds like a C-Sync issue indeed. I have three GBS-8200 in different revisions and my experience was, that GBS-8200 can work reliably only with 15kHz. Using gbs-control you can kind of go up to 21kHz, but the more you go away from 15kHz, the more it is a question of luck. Second, do you use gbs-control or plain GBS-8200? When using plain GBS-8200, it sometimes goes mad with sync, when you change the screen geometry (width, high, etc.). Try to play with that settings and see if something changes. If you are using gbs-control however, this is not an issue.

NZtechguy commented 3 years ago

Thanks for your reply. I'm assuming 15.625kHz line frequency since we use PAL. I'll try to look deeper into it. The Csync is generated by a logic array chip in the computer and sent straight out. I don't think there is any way to adjust it. I haven't modified my GBS in any way yet since I'm still getting to grips with why other modders seem to just wire their Amstrads straight into RGBS wires and get a nice locked picture. I can't find anyone mentioning the settings they used for geometry so I might ask in the Amstrad forums. I haven't played with geometry (I thought it was output related) so thanks for that advice. I see an auto scan function mentioned (pressing the down button) but I see nothing happen if I press it. Should it show anything on the OSD to indicate it's scanning?

I'll try some more playing around. Also, I might be able to use the luminance side of the monitor's signals to get a sync since there is a separate luma pin I found as well. Do you know if the GBS can sync from a luma signal or does it need pure Csync signal without video signal?

necroware commented 3 years ago

In regards of geometry here is an example: https://youtu.be/7dNEmRvxVf4 And about luma, unfortunately I don't know. As I told, I just was playing around with real CGA and such, but not with Amstrad. So the information, I can share is may be not quite applicable in your case :)

ramapcsx2 commented 3 years ago

PAL is always harder to support, both on the scaler board and your display as well (so make sure that the problem is actually with the GBS ;p). Otherwise, go straight to the gbscontrol modifications and hope it does it :)

issalig commented 3 years ago

I am trying to attach it to an amstrad CPC 6128 but I get some good frames and the corrupted frames and again. I have a 100 ohm resistor on sync-gnd P8 is shorted

Any hint?


startup
(WiFi): AP mode (SSID: gbscontrol, pass 'qqqqqqqq'): Access 'gbscontrol.local' in your browser
no ext clockgen
<reset>
Chip ID: 1A 1
 G: 3E G: 3F G: 40 G: 41 G: 42 G: 43
 R: 3E

<reset>
Activity detected, input: RGB

2345678
Format change: 2 <stable>
ADC offset: R:3E G:43 B:3D
HTotal Adjust: -13, source Hz: 50.094, output Hz: 50.112

preset applied: 1280x1024 for PAL 50Hz 

. (debug) ign. length: 0x57
.** (debug) ign. length: 0x56

.* (debug) ign. length: 0x56
 (debug) ign. length: 0x57

.* (debug) ign. length: 0x59

. (debug) ign. length: 0x57
.* (debug) ign. length: 0x56
 (debug) ign. length: 0x57

.** (debug) ign. length: 0x56

.*** (debug) ign. length: 0x56

.* (debug) ign. length: 0x5C

.*** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.* (debug) ign. length: 0x56
.** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
. (debug) ign. length: 0x57

. (debug) ign. length: 0x57
.*** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.** (debug) ign. length: 0x56

.** (debug) ign. length: 0x56
 (debug) ign. length: 0x57

.* (debug) ign. length: 0x56
.* (debug) ign. length: 0x56
.* (debug) ign. length: 0x56
.** (debug) ign. length: 0x56

.***** (debug) ign. length: 0x56

.*** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.*****
no signal
h: 431 v: 622 PLL:0 A:7b7b7b S:02.18.10 H-   I:00 D:058c m:0 ht:2289 vt: 311 hpw: 141 u: 96 s: 0 S:13 W:31
***
 (debug) ign. length: 0x56

.**** (debug) ign. length: 0x56

.* (debug) ign. length: 0x56
HTotal Adjust (skipped), source Hz: 50.094, output Hz: 50.112
 (debug) ign. length: 0x57

.** (debug) ign. length: 0x56

. (debug) ign. length: 0x57
.** (debug) ign. length: 0x56
 (debug) ign. length: 0x57

. (debug) ign. length: 0x57

. (debug) ign. length: 0x57
. (debug) ign. length: 0x57
. (debug) ign. length: 0x57
.*****
no signal
h: 431 v: 623 PLL:0 A:7b7b7b S:02.18.10 H-   I:00 D:058c m:0 ht:2289 vt: 311 hpw: 142 u: 96 s: 0 S:13 W:31
***
 (debug) ign. length: 0x56

.** (debug) ign. length: 0x56

.*****
no signal
h: 431 v: 622 PLL:0 A:7b7b7b S:02.18.00 H-   I:00 D:058c m:0 ht:2289 vt: 311 hpw: 142 u: 96 s: 0 S:13 W:31
*
 (debug) ign. length: 0x56

. (debug) ign. length: 0x57
. (debug) ign. length: 0x57
issalig commented 3 years ago

I have ported https://github.com/pulkomandy/gembascan to esp8266 and it works. It just writes initialisation values and sets progressive pal mode You can check it on https://github.com/issalig/gbs2cpc

I think we could just set the same parameters to gbs-control

NZtechguy commented 3 years ago

That would be good. I ended up finding a SCART TV to run my Amstrad CPC464 through but I’d like to get the GBS working on pal sync at some stage. I also have a pal RGB Amiga coming which I hear is also dodgy through a GBS so I might be a candidate to do some testing. Definitely don’t want to buy a pricey LM microcontroller eval board just to set it, so GBS control would be great

From: issalig @.*** Sent: Saturday, 3 April 2021 3:47 a.m. To: ramapcsx2/gbs-control Cc: NZtechguy; Author Subject: Re: [ramapcsx2/gbs-control] GBS with Amstrad (#173)

I have tried https://github.com/pulkomandy/gembascan and it works, not perfect but it works. I think we could set the same parameters to gbs-control and get rid off the LM4F120 board.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ramapcsx2/gbs-control/issues/173#issuecomment-812562095 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ASQRUUCIDXJ5H34HRBUN6BTTGXKHFANCNFSM4WIP4PHQ .Image removed by sender.

issalig commented 3 years ago

I edited the comment, I ported the code to esp8266 :) You can check it on https://github.com/issalig/gbs2cpc