The NEW Build Your Own Arcade Controls

Software Support => GroovyMAME => Topic started by: Calamity on April 04, 2019, 12:33:58 pm

Title: Asrock DeskMini A300
Post by: Calamity on April 04, 2019, 12:33:58 pm
I'm looking forward to getting one of these (https://www.asrock.com/nettop/AMD/DeskMini%20A300%20Series/index.la.asp).

Paired with a Ryzen APU, it looks like it could make for a great arcade cabinet mini-pc.

The problem is, it's literally vanished from shops, at least here in Spain. The wifi version is available from newegg (https://www.newegg.com/Product/Product.aspx?Item=N82E16856158064&Description=deskmini%20a300&cm_re=deskmini_a300-_-56-158-064-_-Product). No luck in Amazon. Hopefully it pops up at some point in European shops.

https://youtu.be/FjbB-ogun_I

https://youtu.be/dzEOEUy7Hv8
Title: Re: Asrock DeskMini A300
Post by: donluca on April 04, 2019, 02:16:21 pm
That's cute! How much does it cost in EU? $150 I guess it's 120€?

EDIT: there's also an Intel variant: https://www.amazon.it/dp/B01GSWJ3JM/
Title: Re: Asrock DeskMini A300
Post by: Calamity on April 04, 2019, 02:28:13 pm
I'd say in technology 150$ equals 150€, regardless the exchange rate.

Yeah, there's an Intel variant but I'm exclusively interested in the AM4 one, it's the possiblity to use a Ryzen APU what makes this box appealing.
Title: Re: Asrock DeskMini A300
Post by: donluca on April 04, 2019, 03:33:43 pm
Do these board output an analog video signal? I'm pretty sure not which means that a converter is needed to use those with a CRT.
Title: Re: Asrock DeskMini A300
Post by: JDFan on April 04, 2019, 04:22:40 pm
Do these board output an analog video signal? I'm pretty sure not which means that a converter is needed to use those with a CRT.

Would think it does - since it mentions triple monitor support and has VGA connector on the MOBO !

(https://www.asrock.com/nettop/photo/DeskMini%20A300%20Series(L5).png)
Title: Re: Asrock DeskMini A300
Post by: donluca on April 04, 2019, 05:25:48 pm
Oh, WOW, VGA port in 2019 hardware, that's something.

Definitely color me interested. What kind of performance can we squeeze out from this?
Title: Re: Asrock DeskMini A300
Post by: Substring on April 04, 2019, 06:40:41 pm
Found it on the French major online reseller. 160€

https://www.ldlc.com/fiche/PB00266891.html
Title: Re: Asrock DeskMini A300
Post by: Foxhole on April 05, 2019, 12:26:16 am
Do you think it's possible to make it output 15khz right from the bios? This looks really interesting.
Title: Re: Asrock DeskMini A300
Post by: Calamity on April 05, 2019, 11:09:40 am
Found it on the French major online reseller. 160€

https://www.ldlc.com/fiche/PB00266891.html

Thanks! It looks like the send it to Spain too.

Oh, WOW, VGA port in 2019 hardware, that's something.

Definitely color me interested. What kind of performance can we squeeze out from this?

I'll add some videos to the first post of people testing this with games.

Do you think it's possible to make it output 15khz right from the bios? This looks really interesting.

Not sure. What I'm quite sure of is Vega has no native analog support, so Asrock must have added some sort of digital-analog conversion chip on the board. Whether this works right from boot or later in Windows I don't know.

If it works right from boot maybe, theoretically, the bios could be hacked to output 15 kHz, but since the vbios will be bundled with the motherboard's it can be quite difficult and risky. Even if it was possible, it may be dotclock-limited and thus worthless.

Title: Re: Asrock DeskMini A300
Post by: Recapnation on April 05, 2019, 12:33:52 pm
145 € in Alternate (DE):

https://www.alternate.de/ASRock/DeskMini-A300-Barebone/html/product/1527152

At least not too long ago you could order anything there from Alternate Spain (by phone), though they have this currently:

https://www.alternate.es/ASRock/DeskMini-310-B-BB-Barebone/html/product/1481344?


Ugly as sin and a too short of USB ports, but that's me.
Title: Re: Asrock DeskMini A300
Post by: Calamity on April 05, 2019, 12:57:08 pm
145 € in Alternate (DE):

https://www.alternate.de/ASRock/DeskMini-A300-Barebone/html/product/1527152

At least not too long ago you could order anything there from Alternate Spain (by phone), though they have this currently:

https://www.alternate.es/ASRock/DeskMini-310-B-BB-Barebone/html/product/1481344?


Ugly as sin and a too short of USB ports, but that's me.

Nice, thanks. The A300 is the good one, the 310 is for Intel.
Title: Re: Asrock DeskMini A300
Post by: ghost13500 on April 07, 2019, 03:55:47 am
I have this mobo (with A12 / R7 graphics integrated processor).
I confirm, VGA port is not a "real" VGA analog port.
Windows view this like a DisplayPort, you will need a HDMI>VGA converter (not yet tested). ..
Title: Re: Asrock DeskMini A300
Post by: pubjoe on April 10, 2019, 05:37:47 pm
I’m confused about that.  Reviews keep referring to Legacy VGA.  If it isn’t then it’s weird that there’d be a D-SUB port in addition to the HDMI and display port.
Title: Re: Asrock DeskMini A300
Post by: ghost13500 on April 10, 2019, 11:21:38 pm
I was also confused by this fact -_-
But I was not able get out 15khz by Deskmini's VGA port.
VGA port is not listed in Vmmaker (newest CRT Emudriver), in Video Card/Edid Emulation section :/
But perhaps I do wrong with installation or the problem comes from my cpu (I've A12 apu Bristol Ridge) ? (I have already successfully installed many CRT Emudriver on many computers with HD and R7 series)

I've also tried with this mobo
https://www.asrock.com/mb/AMD/AB350M-HDV%20R3.0/index.asp
Same results...

Calamity mentionned in this forum that VGA is no more directly supported by AMD (GPU and APU). VGA implementation  is the responsability of motherboard constructor.
Title: Re: Asrock DeskMini A300
Post by: raibol1 on April 11, 2019, 05:33:07 am
Hallo,

I´m also interested in buying this barebone with a AMD Ryzen 2400G.
I´ve seen on the asrock Homepage, that for Bios 3.2 and 3.4 there is a Graphic Driver with VGA AIO Version 18.50.16.01 upwards necessary.
The latest CRT-Emudriver is based on 18.5.1, so maybe this is the reason for not functioning on the VGA Port.
(Maybe calamity can release a newer version  ;) ?

Greets

Rainer
Title: Re: Asrock DeskMini A300
Post by: Calamity on April 11, 2019, 06:08:26 am
Hi,

@ghost13500, thanks a lot for the information, very helpful.

AMD doesn't support EDID emulation over DP, this is confirmed by AMD. That's why it won't work. EDID emulation works for VGA, DVI and HDMI, but not DP. DP is a complex thing however, as it can act like an HDMI, so EDID emulation might work through DP as long as you use a DP->HDMI adapter, but that's not possible in this case since a DP->VGA adapter is already on board. What this motherboard likely uses is one of the chips you can find in DP->VGA dongles. I've tried those and you can't get EDID emulation on them.

This doesn't mean 15 kHz through that VGA port is not possible, it just probably won't be that convenient. My experience with DP-VGA has been very disappointing: huge dotclock limitations and terrible support for interlaced modes.

In case it doesn't work, we can always use the HDMI port that will support EDID emulation, an a HDMI->VGA adapter. It won't be as cool as using the VGA port directly but anyway.
Title: Re: Asrock DeskMini A300
Post by: Calamity on June 25, 2019, 01:35:35 pm
Finally, I have one of these in the way.
Title: Re: Asrock DeskMini A300
Post by: ghost13500 on June 25, 2019, 03:30:15 pm
Hi,

Good news, I hope it will be profitable for your research ! What do you plan to try with ?

To date, my experience with  AMD mobo is very frustrating :(
(see http://forum.arcadecontrols.com/index.php/topic,141855.msg1685640.html#msg1685640)
Title: Re: Asrock DeskMini A300
Post by: Calamity on June 26, 2019, 01:07:44 pm
Good news, I hope it will be profitable for your research ! What do you plan to try with ?

I want to check the viability of this as an emulation system, specifically regarding custom video. In theory these Ryzen AMD APUs are supported by CRT Emudriver but the users that tried have reported a number of issues. I need to check it here and see if these issues are solvable at all.

Title: Re: Asrock DeskMini A300
Post by: Calamity on July 08, 2019, 04:46:53 pm
I've been testing this thing for a couple of days. I haven't had luck so far.

Though I've managed to output 15 kHz through HDMI-VGA, the support is very limited. EDID emulation is NOT supported by these APUs. This makes it very complicated to add custom modes since the drivers are so picky without an emulated EDID. For instance, interlaced resolutions are all rejected.

Using Adrenaline 18.5.1 drivers on Windows 10, latest release.

The included VGA port works surprisingly fine with a PC monitor, but internally the APU sees it as a DP, and since EDID emulation is not supported on DP ports anyway, it seems it won't be of much use for 15 kHz.

The most promising strategy now may be unlocking the drivers so that 15 kHz are allowed even without EDID emulation. I'm don't know if this will be possible however.

Adding EDID emulation to the APUs will probably be impossible.
Title: Re: Asrock DeskMini A300
Post by: buttersoft on July 08, 2019, 07:34:58 pm
Sounds tough! So annoying how AMD and microsoft keep throwing up roadblocks to us getting what we want :)
Title: Re: Asrock DeskMini A300
Post by: ghost13500 on July 09, 2019, 04:24:50 am

The included VGA port works surprisingly fine with a PC monitor, but internally the APU sees it as a DP, and since EDID emulation is not supported on DP ports anyway, it seems it won't be of much use for 15 kHz.
.
.
.
Adding EDID emulation to the APUs will probably be impossible.

That's what I sadly found... but I don't undertand why myconsolegame reported that edid work http://forum.arcadecontrols.com/index.php/topic,141855.msg1685640.html#msg1685640
Ryzen 2400G + ASROCK A320M-HDV  + bios version 4.80 = EDID list show all port for him (even VGA port).

I've A12-9800 + ASROCK A320M-HDV + bios version 5.50 = no EDID for VGA port (seen as DP port)

What is your opinion ?
EDID is only limited here by software/bios version and not by hardware ?
Title: Re: Asrock DeskMini A300
Post by: Substring on July 09, 2019, 01:36:32 pm
Would be interesting to test with linux as edid can easily be forced
Title: Re: Asrock DeskMini A300
Post by: buttersoft on July 09, 2019, 07:46:21 pm
Would be interesting to test with linux as edid can easily be forced

Yeah but you can just dictate resolutions to linux, can't you? So you don't even need the EDID?
Title: Re: Asrock DeskMini A300
Post by: Substring on July 10, 2019, 04:53:13 am
You're very right regarding resolutions in X/linux. But you should consider a few points :
- using edid can avoid hacking the kernel
- we're not even sure that weird vga works in linux
Title: Re: Asrock DeskMini A300
Post by: Doozer on July 11, 2019, 05:24:54 am
Would be interesting to test with linux as edid can easily be forced

Yeah but you can just dictate resolutions to linux, can't you? So you don't even need the EDID?

Hi,

For the boot process, you need EDID to allow kernel to switch to 15KHz graphical mode. X is picking the EDID resolution by default and XRandR can produce any desired resolution (no kernel patch required).

EDID is helpful during boot to not have a rolling/waving picture due to 31KHz sync signal.
Title: Re: Asrock DeskMini A300
Post by: Doozer on July 11, 2019, 05:32:54 am
You're very right regarding resolutions in X/linux. But you should consider a few points :
- using edid can avoid hacking the kernel
- we're not even sure that weird vga works in linux

You are right.

Can someone make a test by launching the GroovyArcade from a stick and check if mame is producing 15KHz in-game? (different CPU model and generation might give different results)
Title: Re: Asrock DeskMini A300
Post by: Substring on July 11, 2019, 05:45:34 am
You are right.

Can someone make a test by launching the GroovyArcade from a stick and check if mame is producing 15KHz in-game? (different CPU model and generation might give different results)

Ves' GroovyArcade's kernel is probably way out of date to fully support the APU, better give a try to my attempt of renewing GA (i think kernel is 5.1.16 on the DVD as of now). Anyway, any cutting edge distro with recent kernel (i.e. not debian nor ubuntu, prefer arch linux) would be enough to test
Title: Re: Asrock DeskMini A300
Post by: Calamity on July 11, 2019, 08:04:16 am
That's the fastest/easiest way to get GA iso booting from a pendrive?
Title: Re: Asrock DeskMini A300
Post by: keilmillerjr on July 11, 2019, 08:05:11 am
You are right.

Can someone make a test by launching the GroovyArcade from a stick and check if mame is producing 15KHz in-game? (different CPU model and generation might give different results)

Ves' GroovyArcade's kernel is probably way out of date to fully support the APU, better give a try to my attempt of renewing GA (i think kernel is 5.1.16 on the DVD as of now). Anyway, any cutting edge distro with recent kernel (i.e. not debian nor ubuntu, prefer arch linux) would be enough to test

A quick google, many people say ryzen 2400G cpu was supported in kernel 4.17.
Title: Re: Asrock DeskMini A300
Post by: Doozer on July 11, 2019, 08:29:31 am

Raven and raven2 GPU architectures are indeed supported by the Linux kernel (part of the 5.2 source).

@substring, it would have been a pleasure to test it but I do not own a Ryzen cpu ;-)



Title: Re: Asrock DeskMini A300
Post by: Substring on July 11, 2019, 08:59:06 am
@Doozer your enthusiasm is touchy already :D

I'm counting on Calamity for this one haha I'm releasing 15khz 5.2 kernel on https://github.com/substring/packages/releases/tag/testing in the next minutes, haven't even tested it yet on my GA build
Title: Re: Asrock DeskMini A300
Post by: Calamity on August 12, 2019, 01:50:20 pm
I'd like to write an update on this since I've been testing it thoroughly for the last two weeks. I've tested both Windows 10 and Linux on it, and here I'll write some notes of what I've found, for other people interested.

This is my build (end of June-2019):

ASRock DESKMINI A300              124,00 €
AMD Ryzen 5 2400G                    126,21 €
HyperX Impact 8GB x 2               123,46 €
HP EX920 256GB SSD NVMe M.2    60,94 €
WD Scorpio Blue 750 GB SATA        0,00 € (recycled from laptop)
------------------------------------------------
                                                  434,61 €

- First, I'd like to remark that these APUs are different to anything I've tested so far, in a lot of ways. The commercial way AMD labels its products as "Vega" is misleading. So, while we can use mainly the same techniques for discrete video cards from the HD 5xxx family up to the Vega 56, these RX Vega 11 APUs are certainly different, and some critical stuff simply won't work. AMD refers to this hardware as "Raven", and it seems it has its own specific code inside the drivers


- The most shocking difference about this hardware is that it DOES NOT SUPPORT INTERLACE. Neither on Windows nor Linux. In Windows, interlaced modes are rejected by the driver. When patched to force interlaced modes being accepted, the result is 30 Hz-progressive, which means the retrace for the odd field is missing. In Linux, the drivers don't reject the mode, but instead some blurry, downscaled 240p mode is activaded, with halved width.


- Working with a desktop at 240p is really unconvenient and practically unusable, even for me that's too much. I've found 768x288@50 a bit more usable, though equally not enough in many situations. The conclusion is that you no longer can do any reasonable setup job on a resolution like this, and you need to resort to a PC monitor or a remote desktop for anything other than using a frontend to lauch games. This applies for both Windows and Linux.


- When booting in DOS, video support (BIOS video modes) is different to anything I've seen, it's like if it's being emulated. I've tried some DOS programs that switch video modes (both normal BIOS modes and VESA modes), and none of them work. The screen is stuck at 48 kHz. It reports mode 3 as the active one. It doesn't matter if I use VGA or HDMI. Activating a VESA mode results in garbage on the screen. I've dumped the VBIOS and patched it with ATOM-15, then forced it active in RAM (not flashing!) and it doesn't result in the expected 15 kHz output, instead the right half of the screen shows garbage but the output frequency is unmodified. No interlace support here either.


- In Linux, the first thing you need to know is that these APUs are NOT supported by the old "radeon" driver, but by the new "amdgpu" one. Once you have the correct driver, you need to know that the VGA output is actually DP-3 from the kernel point of view. So now in the kernel boot line you have to add "video=DP-3:640x240ec", and in the kernel patches for custom resolutions you need to add 640x240, since this hardware does not support interlace. In X, DP-3 maps as "DisplayPort-2", etc. I've tried all this with the help of Ves, and aside of the issue with interlaced not existing, everything else works once you figure this out.


- In Windows 10 (1903, Adrenaline 18.5.1), the biggest disappointment is EDID emulation is not supported. This breaks the whole configuration recipe we've been using since the days of HD 5000. EDID emulation fixed two issues at once: it helped with display detection and it filtered out undesired modes. As a note, EDID emulation has never been supported anyway for DP connectors, but I hoped it'd work on the HDMI output (it doesn't). Fortunately, although it doesn't fix detection, ToastyX's CRU works just as well for EDID emulation from the Windows OS point of view. So now it's a matter of using this tool to create a custom EDID with 15 kHz modes, which (attention) must be progressive, otherwise they'll be ignored. VMMaker works as usual either with normal or super resolutions, although anything interlaced will be rejected.


- With regards to the VGA output in the deskmini A300 box, I have to say I'm really surprised to find it's perfectly usable, even in the BIOS setup (with a 31 kHz monitor in this case, obviously). Being a DisplayPort on the inside means that the motherboard must have some chip for digital to analog conversion, that does a really good job. It was a nice surprise to realize that there's no low dotclock limitation for this output. This is not the case for the HDMI output, which is not usable for 15 kHz precisely for this, at least with the current patches in this driver (maybe some extra limits must be removed). But in my experience, even with the limits removed, HDMI has always had remaining limitations that virtually forced you to use super resolutions. Well, this is not the case with this "VGA" output, and it's good.


- The "dark" side of this chip is that it seems to cut the video signal as soon as it doesn't feel a load in the RGB lines. For those of you who've been around some time you know this means detection problems. The specific case where this is an issue is with arcade monitors connected through a J-PAC. Since the J-PAC doesn't load the lines with 75 Ohm, you'll get a black picture whatever you do. It doesn't help to force an output enabled from Linux boot line: the OS will enable the output but video won't pass through the DAC chip. It won't work to use EDID emulation either: Windows will enable the desktop and everything but video will get stuck in the chip. The only thing that works is to fake the 75 Ohm load with three resistors between the R-G-B lines and their respective grounds. You can do it in the actual VGA cable. I tried something more fancy by modding a Soft-15kHz EDID dongle (http://abadiadelcrimen.com/crt/edid/20190805_230259.jpg) I had around. The downside of this trick is that it dramatically cuts off the picture's brightness. Since this is mainly required with a J-PAC and this already has a video amplifier, I believe I'll manage to compensate the brightness up using the potentiometers in the monitor's chassis. But it'd be nice to find a way to fake this load without affecting picture quality. It must be noted that I've only seen this detection issue with my cabinet where the J-PAC is, but it doesn't happen with my BVM, which just appears detected as a "Generic non-Plug-n-Play" monitor.


- Before you ask, this DAC does NOT add any latency to the VGA output. I've measured it: next frame response, consistently, for Windows 10 + frame delay. Unfortunately (again) Linux lags one frame for the same frame delay configuration, -video opengl.


- With regards to performance, this is a 4 core CPU and its single thread performance isn't great (1944 in Passmark), but I've found it runs fine everything I've tried and usually with frame delay 7. Obviously the more demanding drivers required to lower frame delay.


- The lack of interlaced modes is probably the worst, and quite probably unsolvable issue to consider this a viable emulation box. I must say that I was so used to having interlaced modes available that not having them to play vertical games for instance seems like something is missing. However, once you try those games on a progressive, scaled-down mode, it doesn't look so terrible. Please don't get me wrong, playing vertical games that way sucks deeply, but so it does using interlaced modes. I mean, the extra sharpness you get comes at the price of flicker, so it's hard to say which way sucks more. And people have always complained about flicker anyway. Another story are systems that, natively, worked in interlaced modes, or were able to switch from progressive to interlaced. For these, at least a proper de-interlace method might be implemented. What I've found is that GroovyMAME is not properly suited for this case, since I've always been conceptually against downscaling. But I may have been wrong. I'd really like to hear Recap's comments on this.


Title: Re: Asrock DeskMini A300
Post by: Substring on August 12, 2019, 05:33:59 pm
Quite a complete review, nice job !

A small word regarding Linux and a test I made today ... I bought a small EDID dongle (https://www.amazon.fr/gp/product/B07BDLB6D3/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1) a while ago and gave it a try to see how Linux would behave with it. It reported the EDID fine, so how about fake monitor connection ? It's considered as connected. So I guessed there were some load resistors inside and indeed, 3x150 ohms load resistors (not 75, surprisingly). Here is a small script to test Linux detection :

Code: [Select]
for p in /sys/class/drm/card? ; do
  id=$(basename `readlink -f $p/device`)
  name=$(lspci -mms $id | cut -d '"' -f4,6 --output-delimiter=" ")
  cardnum=$(basename $p)
  echo "$cardnum: $name"
  for p in /sys/class/drm/${cardnum}-*/status; do con=${p%/status}; echo -n "${con#*/card?-}: "; cat $p; done
done

It works fine in groovyarcade.

I've done my tests on my everyday rig (GTX760 + i6500), and I'm using both GPUs. The only difference is that I'm using the Nvidia proprietary driver (with modeset enabled, which is not the defautlt case) instead of Nouveau, on Ubuntu 18.04. Useless details ... What is important is that, on the intel GPU,  VGA was DP-3 and DVI was HDMI-1  :o Couldn't test for interlace stuff.

TL;DR :
- verical games on a horizontal 15khz will always have drawbacks, so choose your poison
- mind running the upper script without the load resistors ?
- will you keep using the deskmini A300 in your cab ?
- r-type is a tricky game : 284x256@55Hz, does it run fine ? no lines missing ?
- 16GB RAM ? not a little overkill for arcade ?
- looks like you tried 768x288@50 for windows, but 640x240(@60 ?) for Linux. Why not try the highest resolution in Linux ?
- mind running the following script (in those 2 cases: monitor and no dongle, dongle and no monitor+no load resistors -> this is a very intereting case, which would tell us if EDID detection through I2C depends on monitor detection) ? It runs I2C detection for each I2C bus, the script can take up to 30 seconds aconsidering I2C scan timeouts... You may need to enable I2C devices
Code: [Select]
sudo modprobe i2c-dev and get I2C tools
Code: [Select]
pacman -Sy i2c-tools. If you also install the read-edid package
Code: [Select]
sudo pacman -Sy read-edid, you could even get the binary EDID. Here you go for the non EDID version :
Code: [Select]
for bus in `ls /sys/class/i2c-adapter/` ; do
  id=${bus#*-}
  sudo i2cdetect -y $id 2>/dev/null | grep -q "^50: 50" && echo "Found EDID on bus #$id"
done

With EDID read:
Code: [Select]
for bus in `ls /sys/class/i2c-adapter/` ; do
  id=${bus#*-}
  sudo i2cdetect -y $id 2>/dev/null | grep -q "^50: 50" && echo -e "\nFound EDID on bus #$id" &&  sudo get-edid --bus $id
done

Side note: the most common linux EDID tools (parse-edid and edid-decode) fail at reporting correct resolution for interlace modes, they don't x2 Y resolution.  I have read the specs today, and EDID indeed stores half the resolution (as you told me). To continue...
Title: Re: Asrock DeskMini A300
Post by: planexcvs on August 12, 2019, 08:16:31 pm
Many thanks for all your hard work Calamity and Substring.

The results are a bit disappointing to hear considering the APU chip, form factor size and price would have provided some convenience.
Title: Re: Asrock DeskMini A300
Post by: schmerzkaufen on August 12, 2019, 09:40:17 pm
Don't want to be that guy, but as krick pointed not long ago; today you can have an i3-9100F at 90€, a monster for the price, with a 70€ micro-ATX mobo (even the H310C aka H310 R2.0 that support W7), and any of the AMD gpu's supported by CRT-Emudriver (even still several low profiles easily found if volume is a concern)

So I don't understand the persistance for AMD APUs considering the known poorer performance in MAME and - now further confirmed but we saw it coming - significant potential for issues and limitations.
Title: Re: Asrock DeskMini A300
Post by: donluca on November 22, 2019, 05:49:36 pm
Bumping this old thread because I've just read this: https://www.pcgamer.com/amd-trots-out-an-overclockable-athlon-processor-with-vega-graphics-for-dollar49/

What I was wondering... does the availability of a real, analogue VGA output rely on the motherboard chosen?

50 bucks for an overclockable 2 core 4 threads processor *with integrated AMD GPU* does absolutely kill the old G3258 pentium builds, although you could get old radeon cards cheap as chips.

With this one you could really make a tiny build with everything integrated in it.
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 23, 2019, 07:55:18 am
What I was wondering... does the availability of a real, analogue VGA output rely on the motherboard chosen?

Yes, it totally depends on the motherboard. The thing is these APUs do NOT support analogue video. It is the motherboard the one that has to include some silicon to do the DAC. Internally, the APU sees this VGA output as a DP. The amazing thing with the one I tried (A300 mini) is that this output had no low dotclock limitation. The only real turnoff in practice is the lack of support for interlaced video, something I never expected.

I still think these kind of setups have a lot of potential as emulation builds. However that Athlon 3000G seems a bit weak, I prefer 4 cores. It'll be interesting to see how well it overclocks.
Title: Re: Asrock DeskMini A300
Post by: donluca on November 23, 2019, 01:47:22 pm
Not to bring over the now obnoxious "mame uses more cores" topic, but a single core G3258 OC'd to 4.8Ghz was able to run full speed the entirety of MAME's catalog with the only exception the 3dfx based ones, Zeus (MK4 IIRC) and that was pretty much it.

If this Athlon will be able to OC anywhere near the G3258 (which has an even older architecture than the Athlon) it's going to emulate everything without a hitch and leave the user a much wider breathing room to play with frame_delay values (ie: for CV1k games).

I think that for 50$ you can't possibly go wrong as far as dedicated MAME builds are concerned, especially with a motherboard which offers true analogue out.

And IIRC, the only games which used interlaced resolution gave the user the option in the service menu to switch over to a 15khz progressive one (Tekken 3 and Soul Calibur come to mind).
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 25, 2019, 03:12:53 am
I don't see myself using a dual core in 2019, but I understand the high overclockability is appealing. However, maybe tiny setups are not suitable for overclocking due to cooling requirements.

AMD is doing the most exciting progress in processors in years, this is the reason I considered this build in the first place. I used a Ryzen 5 2400G, but the board can be upgraded to a 3400G too.
Title: Re: Asrock DeskMini A300
Post by: Substring on November 25, 2019, 05:37:33 am
Regarding the lack of interlace support, is it an APU issue, or a DAC issue ? Quite hard to tell ...
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 25, 2019, 05:54:44 am
Regarding the lack of interlace support, is it an APU issue, or a DAC issue ? Quite hard to tell ...

Good question. I don't know  :)

But when I tried DP->VGA dongles, interlaced modes looked scrambled. These motherboards might be using similar chips as the dongles, so my theory is that AMD knowing this issue prevents support of interlace modes to avoid this. Who knows.
Title: Re: Asrock DeskMini A300
Post by: donluca on November 25, 2019, 09:10:52 am
Take this with a grain of salt, but it might be either an APU issue or a driver limitation. Someone should look into this and spend some time to understand what's wrong with it.
Title: Re: Asrock DeskMini A300
Post by: Zebra on November 25, 2019, 05:57:01 pm
Don't want to be that guy, but as krick pointed not long ago; today you can have an i3-9100F at 90€, a monster for the price, with a 70€ micro-ATX mobo (even the H310C aka H310 R2.0 that support W7), and any of the AMD gpu's supported by CRT-Emudriver (even still several low profiles easily found if volume is a concern)

So I don't understand the persistance for AMD APUs considering the known poorer performance in MAME and - now further confirmed but we saw it coming - significant potential for issues and limitations.

I agree that this is not an obvious or smart choice for an emulation box. If the aim is to build a cheap and tiny mame-only box that outputs analog RGB at native res, that niche is already filled very well with the Raspberry Pi. If it doesn't have to be tiny, you can get a better used mini ITX setup for less as you said. If it doesn't need analog RGB, mame will run well on almost any decent smart phone these days.

I use my phone and tablet for mame when I travel (which is the only time I need my mame box to be tiny). Mame really doesn't need much horsepower to run well:

Mortal Kombat 3 on my phone: https://www.youtube.com/watch?v=H113JRugBR0

SF2 CE, Ridge Racer 2 and Final Fight on my tablet: https://www.youtube.com/watch?v=0FwM0QhEQOM


I think most of us here would want the option to do more than just mame though. Most of the emulators of more up to date systems like Dreamcast / Naomi require a decent CPU and GPU to run well. If saving space is the goal, it's usually better to have one machine instead of two. I haven't managed this myself yet though.

Even though GM now works with some fairly powerful AMD GPUs, some of the newer PC based arcades in Teknoparrot seem to need an Nvidia GPU to run well. I've concluded that this hobby just doesn't lend it self to space-saving minimalism. We all need at least 2 PCs as a minimum. Unless you have s teeny tiny house, there no need to worry about space.
Title: Re: Asrock DeskMini A300
Post by: Paradroid on November 25, 2019, 06:45:15 pm
I'm all about saving space...
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 26, 2019, 03:17:33 am
I agree that this is not an obvious or smart choice for an emulation box. If the aim is to build a cheap and tiny mame-only box that outputs analog RGB at native res, that niche is already filled very well with the Raspberry Pi. If it doesn't have to be tiny, you can get a better used mini ITX setup for less as you said. If it doesn't need analog RGB, mame will run well on almost any decent smart phone these days.t 2 PCs as a minimum. Unless you have s teeny tiny house, there no need to worry about space.

I beg you guys not to start a debate in this thread, I'd like to keep it focused on the APU builds subject. I do *know* there are cheapest options if you're going to build a pc for emulation. Just the ram required for this box is specific and expensive. I'm not trying to sell anything, that's why I highlighted the many issues I've found.

The point is to explore the possibilities of this new hardware. Whether this is a viable route or not. It's a matter of time these APUs get cheaper, and I'd like to have things ready to support them properly, as long as it's possible. That's why I spend time and cash on it. If I was just thinking on making an optimal use of cash then I'd go for one of the already verified risk-free hardware combinations.

I totally agree that saving space obsession is all part of this permanent teeny nomad lifestyle that's a side effect of the housing bubble that has devastated the western world.

But it's also true that many users are simply reluctant to having a dedicated true pc for emulation and for this reason they're embracing things like the Pi. Most do it just because it's cheap whether they admit it or not, they won't be interested on this. Others might see this tiny setups as an appealing alternative, that can properly run games with frame delay, supports Freesync, etc.

Title: Re: Asrock DeskMini A300
Post by: Substring on November 26, 2019, 05:43:30 am
Quote
In Linux, the first thing you need to know is that these APUs are NOT supported by the old "radeon" driver, but by the new "amdgpu" one. Once you have the correct driver, you need to know that the VGA output is actually DP-3 from the kernel point of view. So now in the kernel boot line you have to add "video=DP-3:640x240ec", and in the kernel patches for custom resolutions you need to add 640x240, since this hardware does not support interlace. In X, DP-3 maps as "DisplayPort-2", etc. I've tried all this with the help of Ves, and aside of the issue with interlaced not existing, everything else works once you figure this out.
Just regarding the interlace stuff and as I'm more interestde in the linux part: amdgpu is not a problem, and X is supposed to work without configuration (unless you had to force resolution at boot). The interesting thing would be to know if EDID emulation works or not, if we can trick to have a 640x480i or eventually 640x240p whihc means configuration-less X. This would avoid kernel patching. So far, I guess we never had the opportunity to test amdgpu GFX cards, and see if it supports interlace or not. I wanted to buy a R5 card, haven't done it yet ...

Maybe if we knew which chip makes the DP -> VGA conversion, we could find if interlace is a hardware limitation or a driver problem.
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 26, 2019, 06:05:02 am
I don't think the R5 is supported by amdgpu, take care. The tricky part is probably amdgpu only supports already digital-only cards.
Title: Re: Asrock DeskMini A300
Post by: Substring on November 26, 2019, 10:05:28 am
This is partially true : you can enable amdgpu compatibility for Southern Islands en Sea Islands GPUs (Rx 200 is part of Sea Islands). Real native support starts for Rx 300 series (aka Volcano Islands)

source https://www.x.org/wiki/RadeonFeature/ + https://wiki.gentoo.org/wiki/AMDGPU#Feature_support + https://wiki.archlinux.org/index.php/AMDGPU#Enable_Southern_Islands_(SI)_and_Sea_Islands_(CIK)_support
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 26, 2019, 11:09:49 am
Interesting, so you need to build a kernel specifically for this:

Code: [Select]
Enable Southern Islands (SI) and Sea Islands (CIK) support
The linux package enables AMDGPU support for cards of the Southern Islands (SI) and Sea Islands (CIK). When building or compiling a kernel, CONFIG_DRM_AMDGPU_SI=Y and/or CONFIG_DRM_AMDGPU_CIK=Y should be be set in the config.
Title: Re: Asrock DeskMini A300
Post by: Substring on November 26, 2019, 11:52:30 am
As for Arch linux (and GA), no need :
https://git.archlinux.org/svntogit/packages.git/tree/repos/core-x86_64/config?h=packages/linux#n6270
Title: Re: Asrock DeskMini A300
Post by: Calamity on November 26, 2019, 11:55:51 am
So this should be enough?

Code: [Select]
/etc/modprobe.d/amdgpu.conf
options amdgpu si_support=1
options amdgpu cik_support=0

/etc/modprobe.d/radeon.conf
options radeon si_support=0
options radeon cik_support=0
Title: Re: Asrock DeskMini A300
Post by: Substring on November 26, 2019, 03:22:46 pm
As they are loaded at initramfs in GroovyArcade, i'd rather add the options in the kernel command line. Otherwise you must make sure the .conf files are added to the initramfs.

Edit : this means to add the files to the FILES in /etc/mkinitcpio.conf. Once booted, you can check it is set with cat /sys/modules/amdgpu/parameters/cik_support /sys/modules/amdgpu/parameters/si_support
Title: Re: Asrock DeskMini A300
Post by: Calamity on December 20, 2020, 04:08:31 am
I have an important update on this topic: interlaced is confirmed to be supported by this hardware, it's just disabled in the drivers.

I managed to enable interlace support on Linux (amdgpu driver) for this specific hardware (DCN 1), through a kernel patch. Thanks to Substring for educating me on kernel modification.

After this modification, this board can do any low dotclock mode through its VGA connector, both progressive and interlace.

I doubt an equivalent patch can be ported to the Windows drivers, because it's not a trivial hack. So anyone using this hardware should consider Linux definitely.

My understanding is this same patch should work on the 3400G. Newer APUs will need a different patch.

There are still some issues, like tearing on stretching, probably related to amdgpu drivers, that will need further investigation.

I've attached the patch for kernel 5.9.9.
Title: Re: Asrock DeskMini A300
Post by: Phreakwars on December 20, 2020, 06:40:50 am
I've been also thinking of going with an A300 and tossing one of my 3400g's inside and run hyperspin on it in my Arcade DoubleUp project after I finish shooting my videos on the Pi project in it ATM. I love that compact size, plan on pulling the board and running it open air. Would love to get one of those 4000 series APU's, but dang are they pricey ATM, gonna wait a bit on it. Pretty cool what you have done with it so far Calamity.
Title: Re: Asrock DeskMini A300
Post by: Josh128 on January 09, 2021, 11:30:54 am
I have an important update on this topic: interlaced is confirmed to be supported by this hardware, it's just disabled in the drivers.

I managed to enable interlace support on Linux (amdgpu driver) for this specific hardware (DCN 1), through a kernel patch. Thanks to Substring for educating me on kernel modification.

After this modification, this board can do any low dotclock mode through its VGA connector, both progressive and interlace.

I doubt an equivalent patch can be ported to the Windows drivers, because it's not a trivial hack. So anyone using this hardware should consider Linux definitely.

My understanding is this same patch should work on the 3400G. Newer APUs will need a different patch.

There are still some issues, like tearing on stretching, probably related to amdgpu drivers, that will need further investigation.

I've attached the patch for kernel 5.9.9.

This is fantastic news as it applies to all Ryzen APUs, not just Deskminis.  I do have a Deskmini in my household but already have an i5 6500 box in my cab, so I probably wont be tinkering.  Do you know if all the native 240p resolutions pretty much work now in Linux with this new development?
Title: Re: Asrock DeskMini A300
Post by: Calamity on January 09, 2021, 12:12:53 pm
Do you know if all the native 240p resolutions pretty much work now in Linux with this new development?

Yes, all low resolution modes that I've tested work so far. However, progressive modes already worked without this patch. What this patch allows is having an interlaced desktop or frontend that is readable at 15 kHz.
Title: Re: Asrock DeskMini A300
Post by: dmckean on January 09, 2021, 03:56:15 pm
I have an important update on this topic: interlaced is confirmed to be supported by this hardware, it's just disabled in the drivers.

I managed to enable interlace support on Linux (amdgpu driver) for this specific hardware (DCN 1), through a kernel patch. Thanks to Substring for educating me on kernel modification.

After this modification, this board can do any low dotclock mode through its VGA connector, both progressive and interlace.

I doubt an equivalent patch can be ported to the Windows drivers, because it's not a trivial hack. So anyone using this hardware should consider Linux definitely.

My understanding is this same patch should work on the 3400G. Newer APUs will need a different patch.

There are still some issues, like tearing on stretching, probably related to amdgpu drivers, that will need further investigation.

I've attached the patch for kernel 5.9.9.

I hope all the final issues get worked out. I've always hoped we'd reach a point where I could build a contained stand alone arcade stick that supports groovymame and the only I/O being power input and component video output to connect to an old TV. This Arock A300 motherboard looks small enough to accomplish that.
Title: Re: Asrock DeskMini A300
Post by: Zebidee on January 10, 2021, 06:31:48 am
I've always hoped we'd reach a point where I could build a contained stand alone arcade stick that supports groovymame and the only I/O being power input and component video output to connect to an old TV. This Arock A300 motherboard looks small enough to accomplish that.

I'll be excited to see that happen too. There is already a GreenAntz transcoder whizzing its way towards you now, but if you wanted I could do a special build where I leave the triple RCA gang (component output plugs) off, unsoldered, separate. That way you could keep everything internal and reposition the RCA gang wherever you like, say an output panel of your design. Or I could supply you with separate RCA panel-mount plugs for your control panel instead of the default RCA gang.

That would help you fulfill this idea: "the only I/O being power input and component output".

Obviously you'd need to do some basic soldering yourself, just a few wires, merely putting the options out there.
Title: Re: Asrock DeskMini A300
Post by: dmckean on February 07, 2021, 01:49:26 am
http://www.asrock.com/nettop/AMD/Mars%204000U%20Series/index.asp

This one has a VGA connector too and it's tiny. I don't see anywhere to buy one though, I guess it just launched in November?

Title: Re: Asrock DeskMini A300
Post by: Substring on February 07, 2021, 05:57:33 am
The collaborative groovyarcade release 2021.01 has Calamity.s DCN1 interlaced patch
Title: Re: Asrock DeskMini A300
Post by: Dumbkid on February 07, 2021, 10:49:57 pm
So i have a 3400g and then newest collaborative groovymame. im using a retrotek vgactv2 to get component to a consumer panasonic CRT. The setup screen displays correctly but attractmode doesnt. desktop displays at 720x480i but disconnects every couple seconds. retroarch menu works perfect at 480i or 240p, but when games start it switches to correct resolutions but disconnects every couple seconds
Title: Re: Asrock DeskMini A300
Post by: Zebidee on February 08, 2021, 01:32:38 am
So i have a 3400g and then newest collaborative groovymame. im using a retrotek vgactv2 to get component to a consumer panasonic CRT. The setup screen displays correctly but attractmode doesnt. desktop displays at 720x480i but disconnects every couple seconds. retroarch menu works perfect at 480i or 240p, but when games start it switches to correct resolutions but disconnects every couple seconds

Seems like a sync issue. It might be to do with the vgatv2 box as it generates own sync. Even for better transcoders, if generated composite sync signals aren't "clean" enough they can create "glitches" around the vertical sync period which can cause your momentary loss of sync. Some TVs are fussier than others.

I get this exact issue with one of my component TVs if I try to use composite sync out of CRTEMU. However, it works fine with my GreenAntz RGB/VGA to component transcoders! GreenAntz sync generation includes a deglitch filter and cleanly integrates sync with luma (Y).

To help rule other issues out, you might try running CRTEMU with a conservative monitor preset such as the NTSC (60hz) preset when generating /installing modes and see if you get the same issues. Try 640x480i for desktop. You could also experiment with using composite sync out of CRTEMU, it might work better with your TV, but I'm not sure how well the vgatv2 transcoder will deal with it.
Title: Re: Asrock DeskMini A300
Post by: Dumbkid on February 08, 2021, 11:54:37 am
Seems like a sync issue. It might be to do with the vgatv2 box as it generates own sync. Even for better transcoders, if generated composite sync signals aren't "clean" enough they can create "glitches" around the vertical sync period which can cause your momentary loss of sync. Some TVs are fussier than others.

I get this exact issue with one of my component TVs if I try to use composite sync out of CRTEMU. However, it works fine with my GreenAntz RGB/VGA to component transcoders! GreenAntz sync generation includes a deglitch filter and cleanly integrates sync with luma (Y).

To help rule other issues out, you might try running CRTEMU with a conservative monitor preset such as the NTSC (60hz) preset when generating /installing modes and see if you get the same issues. Try 640x480i for desktop. You could also experiment with using composite sync out of CRTEMU, it might work better with your TV, but I'm not sure how well the vgatv2 transcoder will deal with it.


yeah so it could be a sync issue but its hard to test. im also awful with linux so i could just have to set it up way better

im not too good with linux but im not sure how to change the resolution, the on ly ones exposed are 640x480p or 720x480i
and under groovyarcade change resolution it either says doesnt support low dotclock, or doesnt need resolution change.

Im using the linux build of groovyarcade with Calamitys kernel patch to support interlaced resolutions. the deskmini doesnt work with windows/Crtemu.

Ive been using this transcoder for a couple years on my other pc with an r9 380, CRTEMU, and the same tv with 0 issues
Title: Re: Asrock DeskMini A300
Post by: Zebidee on February 08, 2021, 05:24:33 pm
Unf I don't know GroovyArcade at all. Would be interesting to see how your modelines are generated, and how your sync looks with an oscilloscope.

If you ask about this on one of the stickied GroovyArcade threads (or start a new one with GA in topic title), you might get more attention from someone like who knows it better like Substring.
Title: Re: Asrock DeskMini A300
Post by: Substring on February 09, 2021, 06:49:45 am
GroovyArcade or not, it's the same groovymame base code. Modelines are generated on the fly in Linux, that's the big difference where in windows, you have to pre-generate them.
As all cards from the generation listed https://wiki.gentoo.org/wiki/AMDGPU#Feature_support (http://here) can't be thouroughly tested, they use super resolution to void being stucked because of a low pixel clock limit.

That said, I'd be curious to get the output of cat /proc/cmdline. If you're using my GroovyArcade (the collaborative one), the single case I know where setup works but not AM is when you apply a SVGA or 31kHz setup.
Title: Re: Asrock DeskMini A300
Post by: Calamity on February 09, 2021, 07:18:26 am
@Dumbkid, there could be a problem with the DAC in the motherboard. I've seen a similar issue with a DP to VGA DAC dongle plugged to the DP output of my A300.
Title: Re: Asrock DeskMini A300
Post by: Dumbkid on February 12, 2021, 09:07:02 am
Here's the output of cat /proc/cmdline

Looks like gasetup and commandline run in 480i perfectly. But as soon as I launch desktop or attract the tv doesn't handle whatever signal it sends.

And on my previous installation of groovy arcade(I've been reinstalling) I had retroarch installed and it would at least switch to 240p and display correctly. Albeit disconnecting if I ran a game but not in the menu.

I'm if this is super specific to my A300 or my transcoder. But I know my tv transcoder combo works great with crtemudriver with my other pc.

Title: Re: Asrock DeskMini A300
Post by: Calamity on February 12, 2021, 09:36:21 am
Hi Dumbkid,

Do you have another TV or arcade monitor to try it with this setup? Anyway, if possible, record a video of the sync problem. I'd try using 1280x480i for the desktop and -dotclock_min 25.0 in GM, to make sure it's not a low dotclock stability issue.