Subscribe via RSS
13Jan/220

Handy Portable Ethernet Pocket Adapter

Aaand another impulse purchase from eBay: a Handy Portable Ethernet Pocket Adapter. What a name? Turns out this is a clone of the Accton EN2209. Finding software wasn't the easiest, but somehow a university in Taiwan had the required file.

DSC04560

DSC04620

DSC04564 DSC04566 DSC04568

DSC04619

Installation on a 486

My IBM PS/1 486 received this unit (after a WFW311 upgrade) and worked perfectly with it. Installation was very straight forward! Just download TCP/IP for WFW and install it as an additional protocol. DHCP worked fine.

DSC04602 DSC04583 DSC04599

Installation on a PIII-500mhz

Things got awry from here. Firstly, running WFW311 on a PIII-500 with 512mb RAM is probably not a recommended thing to do... but... it installed so quickly... it was lovely. The adapter drivers installed and came up on a reboot. As soon as TCP/IP was installed, the whole machine froze!

DSC04576

That second transmission light just stayed locked on and the whole machine actually became non-responsive. Seems to be some kind of race condition with the device... so... what to do? After thinking it was Parallel port settings, I changed them all to no avail. I then guessed it was clock speed, so I down-graded the 500mhz to the slowest setting possible: 333mhz.

DSC04614

At 333mhz, the unit worked perfectly! WFW311 on this hardware is lovely! :) I then upgraded to 375mhz (75mhz bus), but it was NOT stable. WFW311 would lock every-other-time when booting? Seems 333mhz is the magic number.

What about Linux?

I started digging around for a Linux driver and found a few hits on the parport mailing list. These then lead me to harshman's archived page containing a driver! Seems it needs Kernel 2.0.30, so I went back to le'googs and started hunting.

Since I love Red Hat Linux so much, I jumped over to their page and checked the version history. Nice, we have a matched kernel with Red Hat Linux Version 4.2! Back to the Red Hat Linux Archive and there's a 4.2 folder... but wait, there's no ISO in the expected folder? Fortunately, the main guts of the OS are still available and we can then make our own installation media. Download that folder and copy it ALL onto a blank CD. Then jump into the images folder and write boot.img to a floppy. Special thanks to grem75 in this reddit thread for pointing out the required steps.

But that actually didn't work... No matter what I copied over, the installer baulked with an unrecognised Red Hat CD. So, I then downloaded the ISOs from archive.org. I'm surprised that didn't come up as a first search result, but then it occurred to me that archive.org never does? Has it blocked google?

Meanwhile, no amount of burning that image under Windows would work! I even tried to boot up an old ThinkPad with Linux Mint and wodim to try and get it to burn successfully. It didn't... it seems there's an issue with those images on archive.org? Finally, I used the FTP method and an NE2000 compatible card I had lying around to install RedHat.

Once RedHat 4.2 was up, I followed the instructions on harshman's page and, after a first failed insmod, the unit came up on the second attempt, received an IP and I was able to ftp into redhat! Amazing! This was also on the 500mhz at 100% speed, so no race conditions here!

Finally, if you check harshman's page, you'll note that he notes that there's already an updated version whilst he was making his... I wonder if a newer version of RedHat will support this unit?

Filed under: Retro No Comments
11Jan/220

Covox Voice Master Key

This item came up on eBay a long time back and went straight into the 'projects' box. Thanks to a newfound push to clean up the spare room, that box has been turned upside-down and dealt with. So, without any further ado, I present to you a 1988-vintage COVOX Voice Master Key.

DSC04518

DSC04520 DSC04523 DSC04524

DSC04528

DSC04531 DSC04533 DSC04525

The box was well-worn, but all text can be read. Of interest is, in the second-last paragraph, the redacting of the quote "Plays back through optional COVOX Speech Thing". Was the redaction done by a child with a marker? Or from the factory? Finding information on this card online is pretty difficult. First hit was this Korean blog post on naver.com and you'll notice that the redacted sentence is totally removed from their version of the product. Their version seems to be a lot newer, but only of box design, not product name or quality.

Nerdly Pleasures also has a post on COVOX devices, but was very light-on for info on this card. I hope I can help them with their photo of the card as well. Also, the I/O for the DAC can be gleaned from the jumper setting above.

So what does it do?

First and foremost, this is one of the first pieces of hardware to let you control an IBM PC via voice. If I had the software, I'd test this functionality out... unfortunately I don't and no amount of searching has dredged up the installation disks. There's a disk image listing here, but no actual disk image? I messaged the author of that post and he just silently stepped out of the conversation... he must have the actual image to take those screenshots from DOSBOX? I then started by own thread, but no one cares.

A little more digging brought up this request post on Amibay for the same software. I posted a bump reply and got in trouble for hijacking someone else's thread... didn't realise that was a rule. I then PM'd the author, but no response as of yet.

So, without any software, I can't do the voice recognition/control stuffs... but can it play audio?

Audio output hardware

This unit does have an output port and the included head-set is just that; a speaker and a microphone! There are two microphone ports on the card, but we don't actually care about them as we don't have any software that'll make use of them. The headphone port interests me though as, with the redacted text on the box, there must be some way to use the 'included' COVOX Speech Thing functionality. The directory listing of the installation disk above even has a THING.EXE which must enable this card as a sound output device.

The output circuit includes an LM386N amplifier that's fed from the resistor bridge. That bridge is fed directly from the ISA bus data lines, so it must do something if data is fed in. The I/O Address jumper selections allow settings from 0x22f through to 0x28f. I initially thought that was 0x0220, thinking the F was just some naming style, and, after taking out my SB16, tried to get my machine to output sound via FT2 on 0x220... this was entirely fruitless and entirely wrong! I mean, come on, the jumpers don't lie... the I/O ranges really are all based with an 'f' on the end!

So, what to do? First up, anything that wants to use a COVOX Speech Thing as a sound output device will expect it to be on LPT1 or LPT2. These ports are configured via your BIOS and, well, it just wont work adjusting BIOS settings as anything configured there will just send data out the existing configured printer port. I went googling around and found that people had built their own DACs back in the day and someone even has a project for a DAC that sits in an ISA slot known as ISA-DAC-r0. Further on from that, I then found instructions on how to use it on the DOS Re-loaded forum.

There's a really interesting screenshot half-way down that forum topic where the user has used the DOS debug command to hack a memory address. This address contains the I/O register of your machine's LPT ports. Hilariously, you can actually tweak these addresses live when your machine is running!? The basic idea is to type debug, hit enter, then type the following:

-e 40:08 78 03 2f 02

then press enter and then type q and enter to quit. Above, you've entered the bytes 78 03 2f 02 into memory address 40:08. It turns out that that memory address is the system configuration area for the IO base address for your LPT ports and you can chain as many as you want together to pretend you have LPT ports. In the case above, the first port is 0x378, written as high-byte low-byte and then 0x22f, again as high-byte low-byte. Entering the command above will configure your DOS session to have LPT1:0x378 and LPT2:0x22F. Does it work? I configured Fast Tracker II to have a SoundPlayer on LPT2...

DSC04540

And...

DSC04538

Actually... here's a proper demo of its capabilities:

Woah! The audio quality was as-good-as any original SB2.0 that I remember... but it's probably worse... and MONO. Seems can you have two DACS and have FT2 run LPT1+LPT2 for stereo sound. More games were downloaded and tested and all worked fine! Amazing.

Now to just find the actual software!

Filed under: Retro No Comments
6Dec/210

NEC PC-9801VX – Video Output

After getting the PC-9801VX up and running via the monochrome output, it was time to get the RGB signals properly-connected to a real monitor. Thanks to previously playing with Amigas, I actually have an LCD on-hand that can do 15khz via a standard VGA cable. What to do? Hack together a cable that would interface with the DB-15 port on the PC-9801.

DSC04303

As mentioned, this unit uses a DB-15 Analog port which looks exactly like a Macintosh Video port. Of course, it's not, so you can't just use a Mac adapter, but you can refit one, thanks to this blog. You can also just roll-your-own-cable, using the pinout here. Jaycar has the necessary DB-15 male port with housing and the cable above was built.

DSC04285 DSC04297 DSC04288

DSC04290

Plugging it in saw the picture work beautifully... but the fonts were still out. A-Train was also still scaling off the bottom edge?

Front-Panel Dip-Switches

Turns out there's display configuration options on the front-panel to configure resolutions and font-sizes. As seen above, the DOS installation screen looked OK for the most part, but the selectable menu options showed stretched/cut-off fonts!? A quick read of the the dipswitch descriptions pointed to items that may help.

SW1-1 sets the output resolution from 640x200 to 640x400 and this helped a bit, but the fonts were still wrong. I then also toggled SW2-3 and SW2-4 to enable both 80-character screen width and 25-character screen height. After this? Perrrrrfect!

DSC04312 DSC04309 DSC04313

DSC04311

Very similar to the version from the MSX.

You don't have a 15khz monitor?

No fret! This is the internet and someone has already done this before. To make this work, you'll need a GBS8200 video adapter. Once you have this in-hand, you'll need to either wire things in directly, or build a circuit such as antarcticlion's GBHV_RGBS_CONV adapter. I've had a few PCBs printed for me...

DSC04307

... and I intend to build them up and test them. If anyone wants one, then contact me here. I'll post again once I've built one and got it going.

Filed under: Retro No Comments
29Nov/210

NEC PC-9801VX – Floppy Drive Maintenance

If you have the opportunity, do NOT use floppy disks... for anything... ever. I've just spent a lot of time debugging issues when I should've been playing A-Train! Due to the effort I've spent, I hope the answers you find in the rant below help you and prevent such effort expenditure. The goal was simple: The PC-9801VX was up and running and I wanted to run this...

20211126 000853

Yes, it's another version of A-Train. It's version 2, still prior to the version 3 that was released internationally. Now that I think of it, I'd actually purchased this game with a bunch of trains back here! I'd done nothing with it since... but now finally had a machine to run it on.

Unfortunately, the drives wouldn't even accept floppies!

I can't insert a floppy disk!

When this unit arrived, I tried to insert A-Train Disk A into Drive A. The disk would slide 70% in and then hit something. I decided not to push my luck and opened everything up...

20211123 224841

If you've noticed too much copper in the photo above, then you'd be spot-on. The 'head cover' of the read head has popped off (presumably in transit) and sat itself in front of the read head. This has succesfully blocked the floppy disk from inserting all the way. As these machines are super-popular in Japan, a quick Google found many examples of people having the same issue. I opened up the second drive and found the same issue!

20211123 224917

Each site that mentioned this issue had a different solution! Leave the cover on, take it off... leave it on? take it off? I'll do the latter... for now.

Expired capacitors

Now that the floppies could enter the drives, I tried to boot the machine. Drive A would do nothing... it'd just pretend there was no floppy at all. Drive B got as far as below and then noisily failed. The failure let me believe that it'd at-least loaded a bit of data from the disk.

pc-9801-floppy-boot-attempt

So, what to do? Fix Drive A first, then work out if it could do better than Drive B. I've already hinted to the issue, but it all became very obvious after extracting Drive A and flipping it over:

20211124 103158

What a mess! A quick google around found this article on FD1155D maintenance and, to my surprise, it actually mentions how to fix this exact problem. It mentions that if the disk isn't found and the motor just spins (which it did), then these capcitors are to blame. After a quick bit of cleaning and soldering, the tracks actually proved to still be conductive. I added a jumper wire anyway and replaced the capacitors as required.

20211124 114036

Shit job, I know, but.. it worked! Drive A now produced the SAME ERROR as Drive B! Progress!? Based on process-of-elimination, if both drives produce the same error, it's no longer the drives at fault. It's the motherboard (in-built controller) or the floppy disk!

Making my own floppies

First things first: make sure you have an old PC with a known-working 5 1/4" drive. Don't even bother going down this route if you have suspicions about the PC side of things. I went around in a few circles at the start as my floppy drive half-read the first disk I put in, only to totally reject everything after. The fix? Clean the heads with an ear-bud (q-tip?) and isopropyl alcohol! After that, it worked like a dream.

With the floppy drive functional, and Win98 Japanese version installed, I could then use the tools to get floppies written. I followed the instructions here and downloaded both Virtual Floppy Image Converter and Disk Copy Utility. Aim for the green download buttons on the pages when you're trying to obtain the software.

From here, everything was extracted and a relevant DOS bootdisk was found from the PC-98 Software Dump archive over at archive.org. There's also a bigger archive here, for those interested. The DOS disk image was inside the OS folder in FDI format, so it needed to be converted first. Go to the Virtual Floppy Image Converter folder and double-click the exe.

vf-1

Choose English and then set the default output location.

vf-2

Finally drop the FDI image onto the app and a DCU file will be spat out. With a blank/spare floppy disk in the 5 1/4" floppy drive, open a DOS prompt and browse to the folder where the DCU image file is. Alternatively you can browse to the DCU application folder and just edit the command line below to find the DCU image file.

c:\DCU\DCU.exe -f @C:\PC-98\A.DCU,0

Above, correct the path for DCU and the path and filename for your DCU floppy image. The -f means format the sector prior to writing and the ,0 means write to Drive 0. This is A:, with Drive 1 being B. This software also runs on the PC-98 where the drives are 1,2,3,4 and not A,B,etc...

writing-floppy

I tested writing the DOS 3.3 disk to a blank floppy first. It ran quickly and worked flawlessly .. My PC-9801VX booted this newly-written disk to an installer! No hard-drives on this unit yet, but this made me pretty darn happy! I then decided to try and re-write the A-Train Disk A. It was already broken, so why not just try and re-write the same image back to it. The disk image is actually in the same archive above, so I extracted it, converted it and tried to write it...

atrain-better-but-not-good

I first tried to write the DCU file to a blank disk and this completed with no issues, so I put it to the side. I then tried repeatedly to write the image back to the actual A-Train floppy, after removing the copy-protect tape. It kicked off and threw me to an input prompt very quickly. This prompt, as shown above along the bottom line, gives you a few options when DCU hits an error: R for retry, F for re-format and then retry and I for ignore-and-continue. Of course, choosing the latter will leave holes in your written image. As I'd mentioned, and as seen above, the errors weren't always perfectly aligned, but they were not stopping, so yeah, unfortunately that disk was trashed. I wondered if it could be cleaned (Herb Johnson has some tips)? Or if it's totally scratched up... or if you can even replace the medium inside? I tried a bit of isopropyl on it, as I'd done with the drive heads, but it didn't many any huge difference.

Just for fun, I thought I'd test the A-Train Disk A that I'd written to a blank disk. It booted fine, and that's when I realised I had options: leave the 'backup' disk in the box and don't touch the original?, try and transfer outer disk labels?, try and transfer inner disk guts? Hmmmm....

Re-sleeving or Re-mediuming a 5 1/4" Floppy Disk

This was super-risky. I had a properly-copied version of disk A on a (lol) Microsoft Works disk.. and a dead original disk. What to do? Pry open the original and swap the medium. First? Get out your Swiss Army Knife and perform surgery...

20211126 154603

Once you have the top broken open, do the same with the donor disk... being super-careful the whole time and remember: DON'T TOUCH THE MEDIUM.

20211126 154624

Looking at the old medium, you can see why it was never going to work (and also really hard to photograph):

20211126 152639 20211126 153833 20211126 154049

20211126 160741

With everything out, just slot the new medium into the old sleeve and apply a TINY bit of glue along the seam you previously split open. And then?... test...

20211126 155159 20211126 155205 20211126 155210

20211126 155218 20211126 155224 20211126 155231

20211126 155244

Shit photos, I know... the game also seems to have shifted into a new resolution/mode and it's interlaced itself off the screen. Whilst my SCSI adapters are in-transit, I'll have to work out a proper video solution.

Filed under: Retro No Comments
25Nov/210

NEC PC-9801VX – Tear-down

I've always been fascinated by the older Japanese beige desktops and couldn't resist another impulse-buy when I saw this PC-9801VX show up on eBay. It was cheap, as it was listed as junk, until the shipping cost doubled the price. Regardless, I took the gamble, as I have a copy of A-Train for the PC-98 that needs a home.

20211124 174537

It arrived quickly, as postage from Japan can only currently be done via expensive couriers. Before long it was plugged into the step-down converter and failed to do anything good. From what I understand, on power up these machines are meant to PI-PO from their internal speakers... Of which this one did not!

A quick tear down saw the cause... but more on that later. What was I thinking?; purchasing such a huge beige boxen of junk. Fortunately, the tear down also saw that it came with surprises! The list included: a 4MB o'RAM CBUS board, an 8MB o'RAM CBUS board, a SCSI CBUS board and a SASI CBUS board. Also, two 5 1/2" floppy drives which can't be scoffed at... if they work.

20211124 174737 20211124 174728 20211124 174708 20211124 174812

After a lot of research, it turns out that this unit is actually a 286, when purchased new. There's a lot of information online, but most of it is in Japanese. Fortunately, Wikipedia has a great article on the PC-98 series of machines and, if you scroll down far enough, you'll see this unit listed as an 80286 @ 8 or 10 MHz. BUT! What's that random sticker on the front?

20211125 095514

A 486, you say? In a 286 motherboard? I didn't quite believe it when I saw the photos on the auction... but opening it up showed that there was a slot for CPU upgrades and, well yes, you can actually put a myriad of faster CPUs in there! This one just happened to have a 486 upgrade.

20211125 095550

Nice. This opens up the game-play and MS Windows opportunities... if only I can get it to run.

Why wouldn't it boot?

Unfortunately, once down to the board, the CMOS battery proved to be the cause of failing to post. Excuse the awful photo, but I was in a state of buyer's remorse...

20211103 170605

You can see the green.. all the way into the CPU slot (middle-bottom) and, well, even further off the edges of the photo. The battery was quickly removed, but the damage was far-spread. Without schematics, tracing those corroded lines would be a nightmare. But what if I could find a replacement?

Buyee to the rescue

Turns out I had a cart of things to purchase from Japan, so I bit the bullet and purchased a junk spare motherboard for this machine. Yes, junk! That's all that was available online... no one in their right-mind would list these boards as 100% brand-new and ready-to-roll. I threw in a LAN card and a terribly-yellowed keyboard, just to double-down on my losses if everything failed! These also arrived in quick succession as Buyee charges like a wounded bull for shipping and uses top-notch couriers.

20211117 150338

The board was inspected and, to my surprise, was somehow perfectly clean. As above, you can see that the battery had corrosion, but it hadn't spread! Compared to the other board, it was a beautiful site.

20211123 215959

20211123 220027

Shit photo, I agree... but above you can see the difference of the areas under the battery. Top being the newly-acquired board, bottom being the one I may have half-attacked with isopropyl and a toothbrush. Maybe, now that I have a working board, I can trace everything on it and check on the old... but honeslty, even in 1986 these boards were so bloody complex that I don't believe I have the skills to re-trace all of those traces.

But does it work?

Everything was assembled hastily... First flick of the switch, nothing... crickets. After a re-seat of everything that could be re-seated, I flicked it again. During the re-seating, I'd also turned the front volume dial up to MAXXX and, on pressing the power a seriously neighbour-annoying PIIIII-POOO PAAAAAAAAAAAAAA was emitted... Of course, the glee of the first two notes was murdered when that last note came out, deafening and disturbing, lasting until I hit the power switch.

Third flick, after another re-seat... PI-PO! Shit, that sounded perfect... I just had nothing plugged in to any video outputs.

Making it output video

This vintage beast loves its archaic refresh rates (more info here). RGB is 15khz or possibly 24khz, but nothing a new monitor will approve of. This video card has three output ports and you'll find the pin-outs here. I hacked together a 5-pin DIN to RCA plug cable (same as the Megadrive, actually, just without sound) and hooked it from the video card's top Mono output port to my 4:3 Samsung LCD.

It worked! But the picture wasn't great... maybe this is NTSC? Probably. I re-installed my capture card and tested out VLC with correct NTSC_J settings.

pc-9801-memcheck pc-9801-basic-startpc-9801-scsi-bios

It @#$%#$$# works! That last shot is with the SCSI card in... so it's found the TEXACO BIOS (is that the oil company? where did this machine come from?!) and tried to enumerate SCSI devices. I had none for it... so I removed ALL CBUS cards and tried to boot my A-Train floppy...

pc-9801-floppy-boot-attempt

First drive found nothing, and when nothing is found the machine just boots into the BASIC prompt. After a reboot with the floppy in drive B, it produced the above and stalled. It actually sounded pretty bad... but diagnosing the floppy drives is a whole-nother post, of which I'll tackle later.

In the meantime, if you want to know more about these machines, check out NEC PC98 Basic Reference. The amount of information in there is amazing!

Filed under: Retro No Comments
10Sep/210

HoneyBee Mega Drive Controller Directions At 45°?

I've been fixing a bulk load of SMS/SMS2/MegaDrive stuff and one of these controllers was thrown in with a note stating "Erratic Directions."

received 898562814076309

Externally everything checked out, so I opened it up and continuity-tested the cable and plug. No issues there! I tested it again on the SMS2 that I had available and realised that I could get the directions I wanted by mashing in the corners of the D-PAD... what gives? I opened it right up...

received 544488250168490

What's going on here? The actual D-PAD circuit board contacts aren't in an NESW orientation? They're a box, flat on the ground? I continuity-tested for the UP button and it turns out to be the top-right pad. Just to confirm I wasn't bonkers, I put the rubber-contact-thingy back in the D-PAD housing and sure-enough, the pads match the pads!

20210910 181650 (1)

So wait, to get the direction I want, I REALLY DO have to mash in the corners of the D-PAD. This is BY DESIGN. I wasn't a very good gamer when I was young, and this system was available to me at that time. The range is Competition Pro, so I assume this was an answer to the kiddies who held the controller at 45-deg in their left hand and mashed the other buttons with their right? Google is giving me nothing.

NOTE: just looking at that first picture, you can see where your thumb is meant to rest. This easily hints at where UP is. Can someone please point me to documentation where this is made clear that the directions are 45-deg clockwise rotated?

Filed under: Retro No Comments
2Sep/210

IBM 45U0018 POS Keyboard

I saw this unit on eBay and couldn't resist. It really did remind me of the department store POS keyboards and I remember them being clicky. I checked the photos on the auction and saw that it had a non-standard socket and no cable included.

DSC04101

DSC04081 DSC04082 DSC04083

DSC04089 DSC04086 DSC04096

DSC04100

The main keys are fixed, but the surrounding keys have optional translucent key 'covers' where inserts have been placed for special functions. Some of them even cover standard keyboard keys.

DSC04103

But yeah, back to the socket, and do excuse the photo...

DSC04099

It's very similar to a standard IDC Header, but in-set which makes it really difficult to use anything other than IBM's proprietary cables. After a lot of googling, I found that there's both a USB and PS/2 cable version available.

cable-options

Unfortunately, these weren't actually available anywhere... and if they were, the cost was out of control. It seems that these keyboards could also just dock onto the POS system above the till, so it's possible that the cable was only required if you wanted to mount the keyboard elsewhere. Anyway, a cable would be too easy... I'm sure we can work this out!

What does it look like on the inside?

With the hunch that the port supported PS/2 and USB, the keyboard was opened to work out the pinout. Opening it was actually very easy with just 6 small screws on the back. A large plate comes off and then there's just a bit of foil-cardboard shielding over the main circuit board.

DSC04061

Inside, of note, were a TUSB2046B IC and a STM32F103VBT6 Microcontroller with V0326_PF.bin programmed into it. The first IC happens to be the brains for a USB 4-port hub and provided a huge hint for determining the unit's wiring. I started tracing along the pins and the table below is the result. Note that, when looking at the back of the keyboard into the socket, I've started Pin 1 from the top-right, with pin 6 then being top left, pin 7 bottom right and pin 12 bottom left. This turned out to be silly as all the wires are in vertical pairs.

Pin # Connected To Notes
1 Pin 1 of T-46 aka TPS73633DBV Voltage supply for the power regulator. Must be 5v!
2 Pin 1 of TUSB2046B DP0 = Root port USB differential data plus. DP0 paired with DM0 constitutes the upstream USB port.
3 NC?
4 Pin 3 (or 6) of U4 U4 is not populated.
5 Pin 64 (PC7) of STM32F103VBT6 Microcontroller
6 Pin 48 (PB11) of STM32F103VBT6 Microcontroller
7 GND
8 Pin 2 of TUSB2046B DMO = Root port USB differential data minus. DM0 paired with DP0 constitutes the upstream USB port.
9 NC?
10 Pin 2 (or 7) of U4 U4 is not populated.
11 Pin 66 (PC9) of STM32F103VBT6 Microcontroller
12 Pin 52 (PB13) of STM32F103VBT6 Microcontroller

Ok, so that's easy for the USB connection.. just wire the 'upstream' pins, +5v and GND into a spare USB cable. The other 2-pair of wires which run into the Microcontroller must be for the PS/2 mouse and keyboard? I wonder which is clock and which is data? There are plenty of images online showing microcontroller-to-PS/2-port hookups, so I'll try that after USB.

Hooking Up USB

USB cables contain 4 wires. First you need two wires for a very standard 5v DC rail and then you need two more wires to transmit and receive data. As you can see from the table above, we have all of these already mapped out. This was all very straight-forward thanks to the documentation for the TUSB2046B USB Root Hub IC. I grabbed a bunch of spare parts from the box'o'junk and started wiring something together. The USB cables I first tried to use happened to be power-only? No data lines! No wonder someone else threw them out.

DSC04065 DSC04070 DSC04071

Too short anyway! So instead, I remembered I had a mini USB socket in another tray'o'junk and set to wiring that up...

DSC04064 DSC04075 DSC04077

I plugged it into my RasPi 400 and it evicted all USB devices...

Sep  2 17:04:30 raspberrypi kernel: [63187.047153] usb usb2-port1: over-current change #1
Sep  2 17:04:30 raspberrypi kernel: [63187.202027] usb 1-1-port1: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.278524] usb usb2-port2: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.438880] usb 1-1-port2: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.518607] usb usb2-port3: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.678902] usb 1-1-port3: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.758546] usb usb2-port4: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.918864] usb 1-1-port4: over-current change #1
Sep  2 17:04:31 raspberrypi kernel: [63187.998562] usb usb2-port1: over-current change #2
Sep  2 17:04:32 raspberrypi kernel: [63188.238478] usb usb2-port2: over-current change #2
Sep  2 17:04:32 raspberrypi kernel: [63188.478480] usb usb2-port3: over-current change #2
Sep  2 17:04:32 raspberrypi kernel: [63188.718503] usb usb2-port4: over-current change #2
Sep  2 17:04:32 raspberrypi kernel: [63188.890074] usb 1-1-port1: over-current change #2

Ooops! Why am I chewing too much power? I google'd around and couldn't find an easy solution to inject my own power, as all answers indicated VCC needed to stay connected. Looking at my wiring again, I realised that this error was bound to happen as I'd wired the polarity around the wrong way! So, after correcting that...

Sep  2 18:44:47 raspberrypi kernel: [69203.309095] usb 1-1.3: new full-speed USB device number 9 using xhci_hcd
Sep  2 18:44:47 raspberrypi kernel: [69203.443182] usb 1-1.3: New USB device found, idVendor=0451, idProduct=2046, bcdDevice= 1.25
Sep  2 18:44:47 raspberrypi kernel: [69203.443193] usb 1-1.3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Sep  2 18:44:47 raspberrypi kernel: [69203.449815] hub 1-1.3:1.0: USB hub found
Sep  2 18:44:47 raspberrypi kernel: [69203.452677] hub 1-1.3:1.0: 4 ports detected
Sep  2 18:44:47 raspberrypi kernel: [69203.779047] usb 1-1.3.4: new full-speed USB device number 10 using xhci_hcd
Sep  2 18:44:47 raspberrypi kernel: [69203.922725] usb 1-1.3.4: New USB device found, idVendor=04b3, idProduct=4604, bcdDevice= 3.26
Sep  2 18:44:47 raspberrypi kernel: [69203.922734] usb 1-1.3.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Sep  2 18:44:47 raspberrypi kernel: [69203.922741] usb 1-1.3.4: Product: IBM Retail USB Alphanumeric POS Keyboard                                     
Sep  2 18:44:47 raspberrypi kernel: [69203.922747] usb 1-1.3.4: Manufacturer: (c) Copyright IBM Corp. 2008
Sep  2 18:44:47 raspberrypi kernel: [69203.922752] usb 1-1.3.4: SerialNumber: 44T4011-200811231006420977000036
Sep  2 18:44:47 raspberrypi kernel: [69203.935428] input: (c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard                                      as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3.4/1-1.3.4:1.0/0003:04B3:4604.000D/input/input18
Sep  2 18:44:47 raspberrypi kernel: [69204.000545] hid-generic 0003:04B3:4604.000D: input,hidraw4: USB HID v1.00 Keyboard [(c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard] on usb-0000:01:00.0-1.3.4/input0
Sep  2 18:44:47 raspberrypi kernel: [69204.008558] hid-generic 0003:04B3:4604.000E: hiddev97,hidraw5: USB HID v1.00 Device [(c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard] on usb-0000:01:00.0-1.3.4/input1
Sep  2 18:44:47 raspberrypi kernel: [69204.016919] hid-generic 0003:04B3:4604.000F: hiddev98,hidraw6: USB HID v1.00 Device [(c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard] on usb-0000:01:00.0-1.3.4/input2
Sep  2 18:44:47 raspberrypi kernel: [69204.035363] input: (c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard                                      as /devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3.4/1-1.3.4:1.5/0003:04B3:4604.0010/input/input19
Sep  2 18:44:47 raspberrypi kernel: [69204.036075] hid-generic 0003:04B3:4604.0010: input,hidraw7: USB HID v1.00 Mouse [(c) Copyright IBM Corp. 2008 IBM Retail USB Alphanumeric POS Keyboard] on usb-0000:01:00.0-1.3.4/input5
Sep  2 18:44:47 raspberrypi mtp-probe: checking bus 1, device 10: "/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3.4"
Sep  2 18:44:47 raspberrypi mtp-probe: bus: 1, device: 10 was not an MTP device
Sep  2 18:44:48 raspberrypi mtp-probe: checking bus 1, device 10: "/sys/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3.4"
Sep  2 18:44:48 raspberrypi mtp-probe: bus: 1, device: 10 was not an MTP device

DSC04097

HAHA. It just worked. It's very loosely-clicky, but not bad at all. Hilariously sounds like the registers at David Jones. The trackpad and touchpoint actually work beautifully as well. Very impressive. I assume there's further commands that could be sent to change LEDs, use the peripherals, but I don't need it.

PS/2 Wiring

I didn't feel like plugging this into a PC and restarting it 17 times to work out the wiring, so I used an Arduino Uno instead! Unfortunately, no combination of pairs would get the unit to produce any output. I'll have to do some more digging at some point in the future... a cop-out, I know, but I'm happy with USB for now!

Printing a proper plug

I searched Thingiverse and found a very nice set of IDC Plug Frames. With the correct size printed, I could glue my single-pin header wires in and then solder-up a USB cable.

...to be completed!

Note there's still plenty of these keyboards on eBay from a WA seller. Highly recommended!

Filed under: Retro No Comments
1Sep/210

Dual Technologies SKD-4000

This beauty had been doing laps on eBay for a while. I had tried to low-ball it early on, only to receive a swift declination. A week or two later, I offered a little more and it was accepted! The seller took no time to send it to me, perfectly packed. It was listed as untested and with a cracked front-right case. Indeed it was, with one of the plastic clips actually hanging out the front of the opposing top-half, looking slightly like a buck-tooth.

DSC03857

DSC03829 DSC03831 DSC03833

DSC03840 DSC03839 DSC03843

DSC03851 DSC03853 DSC03854

DSC03856

After a little googlin', I came across a site talking about a slightly different version to this laptop. Turns out Dual Group were a Taiwanese manufacturer and built laptops that were then re-branded and on-sold. They therefore didn't really have their own site with any relevant info on this laptop. If anyone manages to find any information on this laptop, then please get in touch in the comments section! I therefore kept inspecting the unit, disassembling what I could prior to needing a screwdriver.

DSC03858

DSC03859 DSC03870 DSC03865

This unit didn't have a power supply, but thankfully the link above provided a pinout for the power supply their SKD-4000 needed. Under this unit, it stated it needed DC 20v @ 1.0A, so I tinned up a set of power wires and dialed in the voltage.

DSC03872 DSC03873 DSC03874

DSC03877

Jamming the wires in the power socket, after continuity-testing for GND, I flicked the power switch... lo'an'behold: the full orchestra of a vintage HDD and a POST beep!

DSC03880 DSC03883 DSC03886

The joy was very short-lived though... the BIOS quickly reported a low battery and incorrect date/time. Hardly surprising! I went into the BIOS anyway and did a HDD auto-detect.

DSC03894 DSC03895 DSC03890

DSC03896 DSC03891 DSC03893

116mb, nice! I saved the config and rebooted, but nothing seemed to have stuck. Seems I'll need to replace the battery to get further. Before that though, does VGA out work?

DSC03898

Nice! Ok, back to the CMOS battery. The link above provided a tear-down guide to help me, but in the end I didn't really need it as this laptop was surprising easy to open and work with! Even the CPU had a flap for easy access? It also has DIP switches for setting the CPU and they seem to configure the CPU pins directly? I'll try and decode them shortly.

DSC03904

The CMOS battery is a piece of work. It's hard-soldered in and it happens to be a rechargeable coin-cell. These are pretty rare nowadays... and... stupid me... I just tried to solder in a coin-cell holder and use a CR2032. DO NOT TRY AND USE NON-RECHARGEABLE BATTERIES IN-PLACE OF RECHARGEABLE BATTERIES!

DSC03929 DSC03948 DSC03958

Turning the unit on saw the coin-cell heat up rapidly, but fortunately I had my finger on the power switch, ready to prevent any spontaneous combustion. I then tried a 3.7v cell I had lying around, but the laptop started reporting 10 error beeps indicating that no battery was available at all. I really do hope I haven't trashed the charging circuit. At this point, I ordered an exact replacement Panasonic VL2330 battery and then looked for other things to fix up.

Power Plug

Whilst waiting for a battery to arrive, I realised I should solidify the power supply. Seems this type of plug is called a SnapNLock 4-Pin Mini DIN and I was pleased to see it available at Jaycar. I purchased a few (luckily) and attempted to wire one up. Soldering it was easy enough, but assembling it was next-level.

DSC03971

I mean, just look at the datasheet (which, actually, wasn't even east to find!), and you'll see what I mean... 8 components to jam together in a not-so-obvious order. I trashed the first plug and sorta-but-not-really succeeded with the second plug... it was good enough to test with.

Dip-Switch Dissection...

There are two blocks of four switches and, with no documentation, I set about trying to determine what these might control. Looking at the set closest to the CPU first, one can find the traces run off CPU pins.

DSC03975

Thanks to the glory of the internet, one can find pin maps and descriptions of pins readily available. The latter doesn't go into much detail, so actual CPU datasheets can also come in handy. After a little digging, it seems this block of switches controls maths error handling and interrupt line access to the CPU. I might just leave them as-is.

Dip-switch Name Solderable-jumper name Connected CPU Pin Pin Function
JP1-1 JP44 B15 NMI - Non-Maskable Interrupt
JP1-2 JP41 Can't tell... but seems to toggle the signal from JP1-1 through to JP3.
JP1-3 JP42 A15 IGNNE# - Ignore numeric error
JP1-4 JP43 C14 FERR# - Floating Point Error

The second block's traces disappear into the board's layers and are impossible to trace and understand.

The BIOS

Just for fun, I popped out the PLCC32 and read it in my Willem Programmer.

DSC03972

You can download the BIN file here.

Back to that Battery

A proper Panasonic VL2330 arrived and I soldered it in place. Applying power heard the same beeping. Ok, let's follow the traces to the left and see what's going on... two diodes, both seem to conduct power... then the voltage goes into pin 20 of that IC... with no marking? Why no marking?

DSC04002

Under the right light, it turned out to be an Epson RTC-6593 Real-time Clock. It even has integrated battery-backed RAM! Of course, this unit stores my BIOS settings. Why has the label disappeared? It's COOKED! It tried to burn me when I touched it. We can only assume it's due to my testing of other batteries... if only I'd bought the correct replacement at the start.

Replacing the RTC

So, I'm game to try this... what I'm not game for is fake chips! Searching for this IC has only come up with seemingly-dodgy sellers on Alibaba and eBay. I've just thrown in a few orders and we'll see what comes back. In the meantime I've removed the existing IC and cleaned up the area. Interesting to note that the silk-screen shows the IC should be an RTC-6583, whereas a 6593 was installed. The datasheet seems to indicate that 659x has "Extended Alarms" whereas 658x doesn't.

DSC04005

During removal of the chip, I just happened to remove a pad... I blame the fact that the IC was actually glued down to the board! I couldn't work out why the IC wouldn't move, regardless of the pressure I applied. Furtunately, it was a quick fix with winding wire and it's ready to solder up.

DSC04011 DSC04014 DSC04020

I'll post a Part II once the ICs have arrived.

Filed under: Retro No Comments
4May/210

Mega Drive Circuit Board Repairs

A bunch of Sega Mega Drives came via the workbench recently, all looking for a 50/60hz mod and region unlocking. Two older Mega Drive 1s were in the batch and the first modded with zero concern. Unfortunately, the second wouldn't even boot... a quick opening of the case saw the reason:

210420175211377

This area of the circuit board is easily accessible from the cartridge slot and I can only assume that a screwdriver (or other sharp object) has been jammed in at some point, destroying a few traces. You'll also notice solder to the left, but that was me in a previous attempt to repair this. I tried again as I now have a USB Microscope and it really does work well for reviewing damage and making intricate repairs!

How not to repair it

I first-up thought I'd be able to use copper winding wire and simply solder to each pad where the IC contacts the circuit board.

210420182637721 210420182556394 210420182604906

210420182616201

From the shots above, you can see how quickly that process failed. The combination of using a soldering iron under a microscope, a large soldering tip and shakey hands meant that solder spread everywhere. Fortunately, solder wick cleaned all that up in no time.

Also how not to repair it

The next method was a little dodgy, but proved successful. From above, I knew i needed more room to solder, so the goal was to create this room by lifting and spreading the pins and running wires to the other end of the traces.

210420184735028

A multimeter found the other end of the traces and winding wire was attached.

210420182842266

Thanks to the tiny tweezers in the iFixit kit, I was able to bend, lift and then straighten the leftmost leg.

210420183049993

From there, the other legs were lifted easily.

210420183502119

Finally, they were all spread out both horizontally and vertically to make soldering as easy as possible. I then connected the right-most as it was only going as far as the local via.

210420185734059

With the wires hideously attached, I considered bending the legs back down... But a blind person could see my dodgy soldering job would make contact.

DSC03699

Instead? Glue gun to the rescue! Finally? Test. It worked!

Filed under: Retro No Comments
15Mar/210

Arcade1Up Hacking

Thanks to some heavy coin-pusher usage at a local amusement center, this unit was 'won' and dragged home on the train. Pretty funny watching everyone watching me carrying a box'o'arcade machine on public transport!

20210122 194927

20210122 195931

In no time the machine was upright and SF2 was being played. All very nostalgic from both childhood and ... exactly 10 years and 10 days ago when I built MAME controllers from MS Keyboards.

20210122 211203

20210122 211301 20210122 212935 20210122 213844

20210122 215418

The unit came with 3 versions of SF2, but it was never my intention to keep it stock. The unit itself would provide a perfect base to build a fully-fledged arcade machine with all the games of my childhood!

The Base Hardware

The unit has an AllWinner ARM SOC built into a case mounted behind the screen. It's a tiny board that wont be easy to flash or extend. This actually means that there's a ridiculous amount of free space in the bottom of the unit as the actual electronics are tiny.

The ARM board would be difficult to re-flash and would also be limited with storage, so the decision was quickly made to replace the guts. Fortunately I could still use the screen and controls.

The New Hardware and Software

To use the screen, I had to purchase a controller board. It seems that the Arcade1Up guys have used a screen that's popular in other actual LCD monitors and therefore the boards are easy to come by. I found one on eBay... just search for LCD Controller Board For HSD190MEN4 M170EN06 17 inch D2K4. Pretty cryptic, but it's the model of the LCD.

s-l1600

With this unit swapped in, I now had VGA/HDMI/DVI access to the LCD! From here, I grabbed the nearest motherboard which happened to be an AMD Sempron X2 with 16GB RAM. I initially tried to use a GTX970 as well, but the compatibility with retro Linux distros wasn't up to scratch and therefore just stuck with the onboard video.

The controllers were wired in with USB Joystick Interfaces from Jaycar. They both were really plug-and-play and it meant I just had to unplug the controllers from the current distribution board and plug them into this one.

Choosing an OS can be difficult as there are a few great options: Lakka and Recalbox. I can't remember why I didn't enjoy Recalbox.

Slow Boot

I had initially installed a spare 1TB SSD, but found out quickly that it was unhealthy. I hadn't guessed it was the issue to start with, until I enabled SSH and reviewed dmesg.

login as: root
root@lakka's password:
###########################################
# Lakka - The DIY retro emulation console #
# ...... visit http://www.lakka.tv ...... #
###########################################

Lakka (official): 2.3.2 (Generic.x86_64)
Lakka:~ # dmesg
[    0.000000] BRK [0x03cf3000, 0x03cf3fff] PGTABLE
[    0.000000] BRK [0x03cf4000, 0x03cf4fff] PGTABLE
[    0.000000] BRK [0x03cf5000, 0x03cf5fff] PGTABLE
[    0.000000] BRK [0x03cf6000, 0x03cf6fff] PGTABLE
[    0.000000] ACPI: Early table checksum verification disabled
[    0.000000] ACPI: RSDP 0x00000000000F0450 000024 (v02 ALASKA)
[    0.000000] ACPI: XSDT 0x00000000BFB18070 00005C (v01 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: FACP 0x00000000BFB1CD28 0000F4 (v04 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI BIOS Warning (bug): Optional FADT field Pm2ControlBlock has valid Length but zero Address: 0x0000000000000000/0x1 (20170119/tbfadt-649)
[    0.000000] ACPI: DSDT 0x00000000BFB18158 004BC9 (v02 ALASKA A M I    00000000 INTL 20051117)
[    0.000000] ACPI: FACS 0x00000000BFB54F80 000040
[    0.000000] ACPI: APIC 0x00000000BFB1CE20 000092 (v03 ALASKA A M I    01072009 AMI  00010013)
[    0.000000] ACPI: MCFG 0x00000000BFB1CEB8 00003C (v01 ALASKA A M I    01072009 MSFT 00010013)
[    0.000000] ACPI: AAFT 0x00000000BFB1CEF8 00003A (v01 ALASKA OEMAAFT  01072009 MSFT 00000097)
[    0.000000] ACPI: MCFG 0x00000000BFB1CF38 00003C (v01 ALASKA A M I    01072009 MSFT 00000097)
[    0.000000] ACPI: HPET 0x00000000BFB1CF78 000038 (v01 ALASKA A M I    01072009 AMI  00000004)
[    0.000000] ACPI: SSDT 0x00000000BFB1CFB0 0008BC (v01 AMD    POWERNOW 00000001 AMD  00000001)
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] No NUMA configuration found
[    0.000000] Faking a node at [mem 0x0000000000000000-0x000000012fffffff]
[    0.000000] NODE_DATA(0) allocated [mem 0x12fff9000-0x12fffcfff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x00000000ffffffff]
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000012fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000001000-0x000000000009dfff]
[    0.000000]   node   0: [mem 0x0000000000100000-0x00000000bfacbfff]
[    0.000000]   node   0: [mem 0x00000000bfd84000-0x00000000bfefffff]
[    0.000000]   node   0: [mem 0x0000000100001000-0x000000012fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000001000-0x000000012fffffff]
[    0.000000] On node 0 totalpages: 981988
[    0.000000]   DMA zone: 64 pages used for memmap
[    0.000000]   DMA zone: 21 pages reserved
[    0.000000]   DMA zone: 3997 pages, LIFO batch:0
[    0.000000]   DMA32 zone: 12210 pages used for memmap
[    0.000000]   DMA32 zone: 781384 pages, LIFO batch:31
[    0.000000]   Normal zone: 3072 pages used for memmap
[    0.000000]   Normal zone: 196607 pages, LIFO batch:31
[    0.000000] ACPI: PM-Timer IO Port: 0x808
[    0.000000] ACPI: Local APIC address 0xfee00000
[    0.000000] ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1])
[    0.000000] IOAPIC[0]: apic_id 0, version 33, address 0xfec00000, GSI 0-23
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
[    0.000000] ACPI: IRQ0 used by override.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] Using ACPI (MADT) for SMP configuration information
[    0.000000] ACPI: HPET id: 0xffffffff base: 0xfed00000
[    0.000000] smpboot: Allowing 8 CPUs, 4 hotplug CPUs
[    0.000000] e820: [mem 0xbff00000-0xfebfffff] available for PCI devices
[    0.000000] Booting paravirtualized kernel on bare hardware
[    0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1910969940391419 ns
[    0.000000] setup_percpu: NR_CPUS:16 nr_cpumask_bits:16 nr_cpu_ids:8 nr_node_ids:1
[    0.000000] percpu: Embedded 36 pages/cpu @ffff88012fc00000 s107904 r8192 d31360 u262144
[    0.000000] pcpu-alloc: s107904 r8192 d31360 u262144 alloc=1*2097152
[    0.000000] pcpu-alloc: [0] 0 1 2 3 4 5 6 7
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 966621
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: root=/dev/ram0 rdinit=/init usbcore.autosuspend=-1 BOOT_IMAGE=/KERNEL boot=LABEL=System disk=LABEL=Storage  quiet vt.global_cursor_default=0 loglevel=2
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] AGP: Checking aperture...
[    0.000000] AGP: No AGP bridge found
[    0.000000] AGP: Node 0: aperture [bus addr 0xfbf6000000-0xfbf7ffffff] (32MB)
[    0.000000] Aperture beyond 4GB. Ignoring.
[    0.000000] AGP: Your BIOS doesn't leave an aperture memory hole
[    0.000000] AGP: Please enable the IOMMU option in the BIOS setup
[    0.000000] AGP: This costs you 64MB of RAM
[    0.000000] AGP: Mapping aperture over RAM [mem 0xb4000000-0xb7ffffff] (65536KB)
[    0.000000] Memory: 3687652K/3927952K available (12780K kernel code, 1042K rwdata, 25412K rodata, 3464K init, 504K bss, 240300K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=8, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 64.
[    0.000000]  RCU restricting CPUs from NR_CPUS=16 to nr_cpu_ids=8.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=8
[    0.000000] NR_IRQS:4352 nr_irqs:488 16
[    0.000000] Console: colour VGA+ 80x25
[    0.000000] console [tty0] enabled
[    0.000000] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 133484873504 ns
[    0.000000] hpet clockevent registered
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.001000] tsc: Detected 3013.189 MHz processor
[    0.001000] Calibrating delay loop (skipped), value calculated using timer frequency.. 6026.37 BogoMIPS (lpj=3013189)
[    0.001000] pid_max: default: 32768 minimum: 301
[    0.001000] ACPI: Core revision 20170119
[    0.002751] ACPI: 2 ACPI AML tables successfully acquired and loaded
[    0.003214] Dentry cache hash table entries: 524288 (order: 11, 8388608 bytes)
[    0.005267] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.005794] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.005798] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.006004] CPU: Physical Processor ID: 0
[    0.006004] CPU: Processor Core ID: 0
[    0.006006] Last level iTLB entries: 4KB 512, 2MB 16, 4MB 8
[    0.006007] Last level dTLB entries: 4KB 512, 2MB 128, 4MB 64, 1GB 0
[    0.006093] Freeing SMP alternatives memory: 40K
[    0.007078] smpboot: Max logical packages: 2
[    0.007443] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1
[    0.018000] smpboot: CPU0: AMD Phenom(tm) II X4 945 Processor (family: 0x10, model: 0x4, stepping: 0x2)
[    0.021022] Performance Events: AMD PMU driver.
[    0.021027] ... version:                0
[    0.021028] ... bit width:              48
[    0.021028] ... generic registers:      4
[    0.021029] ... value mask:             0000ffffffffffff
[    0.021029] ... max period:             00007fffffffffff
[    0.021030] ... fixed-purpose events:   0
[    0.021031] ... event mask:             000000000000000f
[    0.033080] NMI watchdog: enabled on all CPUs, permanently consumes one hw-PMU counter.
[    0.035016] smp: Bringing up secondary CPUs ...
[    0.046024] x86: Booting SMP configuration:
[    0.046025] .... node  #0, CPUs:      #1 #2 #3
[    0.251031] smp: Brought up 1 node, 4 CPUs
[    0.251031] smpboot: Total of 4 processors activated (24103.72 BogoMIPS)
[    0.252078] sched_clock: Marking stable (252000000, 0)->(361237982, -109237982)
[    0.252339] devtmpfs: initialized
[    0.252739] PM: Registering ACPI NVS region [mem 0xbfacc000-0xbfb1dfff] (335872 bytes)
[    0.252744] PM: Registering ACPI NVS region [mem 0xbfb52000-0xbfb59fff] (32768 bytes)
[    0.252745] PM: Registering ACPI NVS region [mem 0xbfb81000-0xbfd83fff] (2109440 bytes)
[    0.252825] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[    0.252856] futex hash table entries: 2048 (order: 6, 262144 bytes)
[    0.252927] xor: measuring software checksum speed
[    0.262649]    prefetch64-sse: 13896.000 MB/sec
[    0.272663]    generic_sse: 13184.000 MB/sec
[    0.272666] xor: using function: prefetch64-sse (13896.000 MB/sec)
[    0.272672] pinctrl core: initialized pinctrl subsystem
[    0.272890] NET: Registered protocol family 16
[    0.273193] cpuidle: using governor ladder
[    0.273229] cpuidle: using governor menu
[    0.273232] PCCT header not found.
[    0.273236] node 0 link 0: io port [c000, ffff]
[    0.273238] TOM: 00000000d0000000 aka 3328M
[    0.273239] Fam 10h mmconf [mem 0xe0000000-0xefffffff]
[    0.273241] node 0 link 0: mmio [d0000000, efffffff] ==> [d0000000, dfffffff]
[    0.273243] node 0 link 0: mmio [f0000000, fe4fffff]
[    0.273244] node 0 link 0: mmio [fe500000, fe6fffff]
[    0.273246] node 0 link 0: mmio [fe700000, febfffff]
[    0.273247] node 0 link 0: mmio [fec00000, fffeffff]
[    0.273248] node 0 link 0: mmio [ffff0000, ffffffff]
[    0.273249] TOM2: 0000000130000000 aka 4864M
[    0.273250] bus: [bus 00-1f] on node 0 link 0
[    0.273251] bus: 00 [io  0x0000-0xffff]
[    0.273251] bus: 00 [mem 0xd0000000-0xdfffffff]
[    0.273252] bus: 00 [mem 0xf0000000-0xffffffff]
[    0.273253] bus: 00 [mem 0x130000000-0xfcffffffff]
[    0.273389] ACPI: bus type PCI registered
[    0.273465] PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0xe0000000-0xefffffff] (base 0xe0000000)
[    0.273467] PCI: not using MMCONFIG
[    0.273468] PCI: Using configuration type 1 for base access
[    0.273468] PCI: Using configuration type 1 for extended access
[    0.294675] raid6: sse2x1   gen()  3851 MB/s
[    0.311663] raid6: sse2x1   xor()  4023 MB/s
[    0.328658] raid6: sse2x2   gen()  6687 MB/s
[    0.345652] raid6: sse2x2   xor()  6890 MB/s
[    0.362658] raid6: sse2x4   gen()  7949 MB/s
[    0.379655] raid6: sse2x4   xor()  3494 MB/s
[    0.379657] raid6: using algorithm sse2x4 gen() 7949 MB/s
[    0.379658] raid6: .... xor() 3494 MB/s, rmw enabled
[    0.379659] raid6: using intx1 recovery algorithm
[    0.379749] ACPI: Added _OSI(Module Device)
[    0.379750] ACPI: Added _OSI(Processor Device)
[    0.379751] ACPI: Added _OSI(3.0 _SCP Extensions)
[    0.379751] ACPI: Added _OSI(Processor Aggregator Device)
[    0.380050] ACPI: Executed 3 blocks of module-level executable AML code
[    0.383018] ACPI: Interpreter enabled
[    0.383038] ACPI: (supports S0 S1 S3 S5)
[    0.383040] ACPI: Using IOAPIC for interrupt routing
[    0.383184] PCI: MMCONFIG for domain 0000 [bus 00-ff] at [mem 0xe0000000-0xefffffff] (base 0xe0000000)
[    0.383223] PCI: MMCONFIG at [mem 0xe0000000-0xefffffff] reserved in ACPI motherboard resources
[    0.383234] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[    0.390118] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
[    0.390123] acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI]
[    0.390127] acpi PNP0A03:00: _OSC failed (AE_NOT_FOUND); disabling ASPM
[    0.390236] acpi PNP0A03:00: ignoring host bridge window [mem 0x000c8000-0x000dffff window] (conflicts with Video ROM [mem 0x000c0000-0x000cedff])
[    0.390268] PCI host bridge to bus 0000:00
[    0.390270] pci_bus 0000:00: root bus resource [io  0x0000-0x0cf7 window]
[    0.390271] pci_bus 0000:00: root bus resource [io  0x0d00-0xffff window]
[    0.390272] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]
[    0.390273] pci_bus 0000:00: root bus resource [mem 0xd0000000-0xffffffff window]
[    0.390275] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.390283] pci 0000:00:00.0: [1022:9601] type 00 class 0x060000
[    0.390392] pci 0000:00:01.0: [1849:9602] type 01 class 0x060400
[    0.390495] pci 0000:00:09.0: [1022:9608] type 01 class 0x060400
[    0.390528] pci 0000:00:09.0: PME# supported from D0 D3hot D3cold
[    0.390576] pci 0000:00:09.0: System wakeup disabled by ACPI
[    0.390614] pci 0000:00:0a.0: [1022:9609] type 01 class 0x060400
[    0.390646] pci 0000:00:0a.0: PME# supported from D0 D3hot D3cold
[    0.390705] pci 0000:00:0a.0: System wakeup disabled by ACPI
[    0.390753] pci 0000:00:11.0: [1002:4390] type 00 class 0x01018f
[    0.390768] pci 0000:00:11.0: reg 0x10: [io  0xf090-0xf097]
[    0.390776] pci 0000:00:11.0: reg 0x14: [io  0xf080-0xf083]
[    0.390784] pci 0000:00:11.0: reg 0x18: [io  0xf070-0xf077]
[    0.390792] pci 0000:00:11.0: reg 0x1c: [io  0xf060-0xf063]
[    0.390800] pci 0000:00:11.0: reg 0x20: [io  0xf050-0xf05f]
[    0.390808] pci 0000:00:11.0: reg 0x24: [mem 0xfeb0b000-0xfeb0b3ff]
[    0.390827] pci 0000:00:11.0: set SATA to AHCI mode
[    0.390928] pci 0000:00:12.0: [1002:4397] type 00 class 0x0c0310
[    0.390940] pci 0000:00:12.0: reg 0x10: [mem 0xfeb0a000-0xfeb0afff]
[    0.391038] pci 0000:00:12.0: System wakeup disabled by ACPI
[    0.391080] pci 0000:00:12.2: [1002:4396] type 00 class 0x0c0320
[    0.391095] pci 0000:00:12.2: reg 0x10: [mem 0xfeb09000-0xfeb090ff]
[    0.391165] pci 0000:00:12.2: supports D1 D2
[    0.391166] pci 0000:00:12.2: PME# supported from D0 D1 D2 D3hot
[    0.391217] pci 0000:00:12.2: System wakeup disabled by ACPI
[    0.391279] pci 0000:00:13.0: [1002:4397] type 00 class 0x0c0310
[    0.391290] pci 0000:00:13.0: reg 0x10: [mem 0xfeb08000-0xfeb08fff]
[    0.391386] pci 0000:00:13.0: System wakeup disabled by ACPI
[    0.391429] pci 0000:00:13.2: [1002:4396] type 00 class 0x0c0320
[    0.391443] pci 0000:00:13.2: reg 0x10: [mem 0xfeb07000-0xfeb070ff]
[    0.391513] pci 0000:00:13.2: supports D1 D2
[    0.391514] pci 0000:00:13.2: PME# supported from D0 D1 D2 D3hot
[    0.391563] pci 0000:00:13.2: System wakeup disabled by ACPI
[    0.391624] pci 0000:00:14.0: [1002:4385] type 00 class 0x0c0500
[    0.391803] pci 0000:00:14.1: [1002:439c] type 00 class 0x01018a
[    0.391814] pci 0000:00:14.1: reg 0x10: [io  0xf040-0xf047]
[    0.391822] pci 0000:00:14.1: reg 0x14: [io  0xf030-0xf033]
[    0.391830] pci 0000:00:14.1: reg 0x18: [io  0xf020-0xf027]
[    0.391838] pci 0000:00:14.1: reg 0x1c: [io  0xf010-0xf013]
[    0.391846] pci 0000:00:14.1: reg 0x20: [io  0xf000-0xf00f]
[    0.391863] pci 0000:00:14.1: legacy IDE quirk: reg 0x10: [io  0x01f0-0x01f7]
[    0.391864] pci 0000:00:14.1: legacy IDE quirk: reg 0x14: [io  0x03f6]
[    0.391865] pci 0000:00:14.1: legacy IDE quirk: reg 0x18: [io  0x0170-0x0177]
[    0.391866] pci 0000:00:14.1: legacy IDE quirk: reg 0x1c: [io  0x0376]
[    0.391986] pci 0000:00:14.2: [1002:4383] type 00 class 0x040300
[    0.392004] pci 0000:00:14.2: reg 0x10: [mem 0xfeb00000-0xfeb03fff 64bit]
[    0.392063] pci 0000:00:14.2: PME# supported from D0 D3hot D3cold
[    0.392111] pci 0000:00:14.2: System wakeup disabled by ACPI
[    0.392149] pci 0000:00:14.3: [1002:439d] type 00 class 0x060100
[    0.392287] pci 0000:00:14.4: [1002:4384] type 01 class 0x060401
[    0.392364] pci 0000:00:14.4: System wakeup disabled by ACPI
[    0.392424] pci 0000:00:14.5: [1002:4399] type 00 class 0x0c0310
[    0.392436] pci 0000:00:14.5: reg 0x10: [mem 0xfeb06000-0xfeb06fff]
[    0.392534] pci 0000:00:14.5: System wakeup disabled by ACPI
[    0.392578] pci 0000:00:15.0: [1002:43a0] type 01 class 0x060400
[    0.392644] pci 0000:00:15.0: supports D1 D2
[    0.392706] pci 0000:00:15.0: System wakeup disabled by ACPI
[    0.392748] pci 0000:00:15.1: [1002:43a1] type 01 class 0x060400
[    0.392815] pci 0000:00:15.1: supports D1 D2
[    0.392865] pci 0000:00:15.1: System wakeup disabled by ACPI
[    0.392938] pci 0000:00:16.0: [1002:4397] type 00 class 0x0c0310
[    0.392949] pci 0000:00:16.0: reg 0x10: [mem 0xfeb05000-0xfeb05fff]
[    0.393046] pci 0000:00:16.0: System wakeup disabled by ACPI
[    0.393089] pci 0000:00:16.2: [1002:4396] type 00 class 0x0c0320
[    0.393103] pci 0000:00:16.2: reg 0x10: [mem 0xfeb04000-0xfeb040ff]
[    0.393174] pci 0000:00:16.2: supports D1 D2
[    0.393175] pci 0000:00:16.2: PME# supported from D0 D1 D2 D3hot
[    0.393224] pci 0000:00:16.2: System wakeup disabled by ACPI
[    0.393277] pci 0000:00:18.0: [1022:1200] type 00 class 0x060000
[    0.393355] pci 0000:00:18.1: [1022:1201] type 00 class 0x060000
[    0.393430] pci 0000:00:18.2: [1022:1202] type 00 class 0x060000
[    0.393503] pci 0000:00:18.3: [1022:1203] type 00 class 0x060000
[    0.393579] pci 0000:00:18.4: [1022:1204] type 00 class 0x060000
[    0.393708] pci 0000:01:05.0: [1002:9714] type 00 class 0x030000
[    0.393715] pci 0000:01:05.0: reg 0x10: [mem 0xd0000000-0xdfffffff pref]
[    0.393718] pci 0000:01:05.0: reg 0x14: [io  0xe000-0xe0ff]
[    0.393722] pci 0000:01:05.0: reg 0x18: [mem 0xfe600000-0xfe60ffff]
[    0.393730] pci 0000:01:05.0: reg 0x24: [mem 0xfe500000-0xfe5fffff]
[    0.393748] pci 0000:01:05.0: supports D1 D2
[    0.393783] pci 0000:01:05.1: [1002:970f] type 00 class 0x040300
[    0.393789] pci 0000:01:05.1: reg 0x10: [mem 0xfe610000-0xfe613fff]
[    0.393818] pci 0000:01:05.1: supports D1 D2
[    0.393911] pci 0000:00:01.0: PCI bridge to [bus 01]
[    0.393914] pci 0000:00:01.0:   bridge window [io  0xe000-0xefff]
[    0.393916] pci 0000:00:01.0:   bridge window [mem 0xfe500000-0xfe6fffff]
[    0.393918] pci 0000:00:01.0:   bridge window [mem 0xd0000000-0xdfffffff 64bit pref]
[    0.393956] pci 0000:02:00.0: [1b6f:7023] type 00 class 0x0c0330
[    0.393971] pci 0000:02:00.0: reg 0x10: [mem 0xfea00000-0xfea07fff 64bit]
[    0.394043] pci 0000:02:00.0: supports D1 D2
[    0.394044] pci 0000:02:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.396723] pci 0000:00:09.0: PCI bridge to [bus 02]
[    0.396728] pci 0000:00:09.0:   bridge window [mem 0xfea00000-0xfeafffff]
[    0.396784] pci 0000:03:00.0: [1969:1083] type 00 class 0x020000
[    0.396805] pci 0000:03:00.0: reg 0x10: [mem 0xfe900000-0xfe93ffff 64bit]
[    0.396815] pci 0000:03:00.0: reg 0x18: [io  0xd000-0xd07f]
[    0.396908] pci 0000:03:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.399669] pci 0000:00:0a.0: PCI bridge to [bus 03]
[    0.399673] pci 0000:00:0a.0:   bridge window [io  0xd000-0xdfff]
[    0.399675] pci 0000:00:0a.0:   bridge window [mem 0xfe900000-0xfe9fffff]
[    0.399775] pci 0000:00:14.4: PCI bridge to [bus 04] (subtractive decode)
[    0.399783] pci 0000:00:14.4:   bridge window [io  0x0000-0x0cf7 window] (subtractive decode)
[    0.399784] pci 0000:00:14.4:   bridge window [io  0x0d00-0xffff window] (subtractive decode)
[    0.399785] pci 0000:00:14.4:   bridge window [mem 0x000a0000-0x000bffff window] (subtractive decode)
[    0.399786] pci 0000:00:14.4:   bridge window [mem 0xd0000000-0xffffffff window] (subtractive decode)
[    0.399846] pci 0000:05:00.0: [1106:3403] type 00 class 0x0c0010
[    0.399871] pci 0000:05:00.0: reg 0x10: [mem 0xfe800000-0xfe8007ff 64bit]
[    0.399883] pci 0000:05:00.0: reg 0x18: [io  0xc000-0xc0ff]
[    0.399991] pci 0000:05:00.0: supports D2
[    0.399992] pci 0000:05:00.0: PME# supported from D2 D3hot D3cold
[    0.402728] pci 0000:00:15.0: PCI bridge to [bus 05]
[    0.402734] pci 0000:00:15.0:   bridge window [io  0xc000-0xcfff]
[    0.402736] pci 0000:00:15.0:   bridge window [mem 0xfe800000-0xfe8fffff]
[    0.402807] pci 0000:06:00.0: [1b6f:7023] type 00 class 0x0c0330
[    0.402831] pci 0000:06:00.0: reg 0x10: [mem 0xfe700000-0xfe707fff 64bit]
[    0.402945] pci 0000:06:00.0: supports D1 D2
[    0.402946] pci 0000:06:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.405671] pci 0000:00:15.1: PCI bridge to [bus 06]
[    0.405682] pci 0000:00:15.1:   bridge window [mem 0xfe700000-0xfe7fffff]
[    0.406441] ACPI: PCI Interrupt Link [LNKA] (IRQs 10 11 14 15) *0
[    0.406501] ACPI: PCI Interrupt Link [LNKB] (IRQs 10 11 14 15) *0
[    0.406562] ACPI: PCI Interrupt Link [LNKC] (IRQs 10 11 14 15) *0
[    0.406623] ACPI: PCI Interrupt Link [LNKD] (IRQs 10 11 14 15) *0
[    0.406675] ACPI: PCI Interrupt Link [LNKE] (IRQs 10 11 14 15) *0
[    0.406728] ACPI: PCI Interrupt Link [LNKF] (IRQs 10 11 14 15) *0
[    0.406766] ACPI: PCI Interrupt Link [LNKG] (IRQs 10 11 14 15) *0
[    0.406804] ACPI: PCI Interrupt Link [LNKH] (IRQs 10 11 14 15) *0
[    0.407006] pci 0000:01:05.0: vgaarb: setting as boot VGA device
[    0.407008] pci 0000:01:05.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[    0.407012] pci 0000:01:05.0: vgaarb: bridge control possible
[    0.407012] vgaarb: loaded
[    0.407074] SCSI subsystem initialized
[    0.407114] libata version 3.00 loaded.
[    0.407139] ACPI: bus type USB registered
[    0.407160] usbcore: registered new interface driver usbfs
[    0.407171] usbcore: registered new interface driver hub
[    0.407192] usbcore: registered new device driver usb
[    0.407216] pps_core: LinuxPPS API ver. 1 registered
[    0.407217] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.407219] PTP clock support registered
[    0.407278] wmi: Mapper loaded
[    0.407292] Advanced Linux Sound Architecture Driver Initialized.
[    0.407293] PCI: Using ACPI for IRQ routing
[    0.414819] PCI: pci_cache_line_size set to 64 bytes
[    0.414882] e820: reserve RAM buffer [mem 0x0009ec00-0x0009ffff]
[    0.414883] e820: reserve RAM buffer [mem 0xbfacc000-0xbfffffff]
[    0.414884] e820: reserve RAM buffer [mem 0xbff00000-0xbfffffff]
[    0.415150] clocksource: Switched to clocksource hpet
[    0.415214] FS-Cache: Loaded
[    0.415240] pnp: PnP ACPI init
[    0.415341] system 00:00: [mem 0xe0000000-0xefffffff] has been reserved
[    0.415345] system 00:00: Plug and Play ACPI device, IDs PNP0c01 (active)
[    0.415485] system 00:01: [mem 0xc0000000-0xcfffffff] has been reserved
[    0.415488] system 00:01: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.415772] system 00:02: [io  0x040b] has been reserved
[    0.415774] system 00:02: [io  0x04d6] has been reserved
[    0.415775] system 00:02: [io  0x0c00-0x0c01] has been reserved
[    0.415777] system 00:02: [io  0x0c14] has been reserved
[    0.415778] system 00:02: [io  0x0c50-0x0c51] has been reserved
[    0.415780] system 00:02: [io  0x0c52] has been reserved
[    0.415781] system 00:02: [io  0x0c6c] has been reserved
[    0.415783] system 00:02: [io  0x0c6f] has been reserved
[    0.415784] system 00:02: [io  0x0cd0-0x0cd1] has been reserved
[    0.415786] system 00:02: [io  0x0cd2-0x0cd3] has been reserved
[    0.415787] system 00:02: [io  0x0cd4-0x0cd5] has been reserved
[    0.415789] system 00:02: [io  0x0cd6-0x0cd7] has been reserved
[    0.415790] system 00:02: [io  0x0cd8-0x0cdf] has been reserved
[    0.415791] system 00:02: [io  0x0800-0x089f] has been reserved
[    0.415793] system 00:02: [io  0x0b20-0x0b3f] has been reserved
[    0.415795] system 00:02: [io  0x0900-0x090f] has been reserved
[    0.415796] system 00:02: [io  0x0910-0x091f] has been reserved
[    0.415799] system 00:02: [io  0xfe00-0xfefe] has been reserved
[    0.415801] system 00:02: [mem 0xfec00000-0xfec00fff] could not be reserved
[    0.415802] system 00:02: [mem 0xfee00000-0xfee00fff] has been reserved
[    0.415804] system 00:02: [mem 0xfed80000-0xfed8ffff] has been reserved
[    0.415806] system 00:02: [mem 0xfed61000-0xfed70fff] has been reserved
[    0.415807] system 00:02: [mem 0xfec10000-0xfec10fff] has been reserved
[    0.415809] system 00:02: [mem 0xfed00000-0xfed00fff] could not be reserved
[    0.415810] system 00:02: [mem 0xffc00000-0xffffffff] has been reserved
[    0.415813] system 00:02: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.415925] system 00:03: [io  0x0290-0x029f] has been reserved
[    0.415928] system 00:03: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.416118] pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active)
[    0.416202] system 00:05: [io  0x04d0-0x04d1] has been reserved
[    0.416206] system 00:05: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.416279] system 00:06: Plug and Play ACPI device, IDs PNP0c02 (active)
[    0.416322] pnp 00:07: Plug and Play ACPI device, IDs PNP0303 PNP030b (active)
[    0.416371] pnp 00:08: Plug and Play ACPI device, IDs PNP0f03 PNP0f13 (active)
[    0.416594] pnp 00:09: [dma 0 disabled]
[    0.416640] pnp 00:09: Plug and Play ACPI device, IDs PNP0501 (active)
[    0.416914] pnp: PnP ACPI: found 10 devices
[    0.423939] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
[    0.423976] pci 0000:00:01.0: PCI bridge to [bus 01]
[    0.423977] pci 0000:00:01.0:   bridge window [io  0xe000-0xefff]
[    0.423980] pci 0000:00:01.0:   bridge window [mem 0xfe500000-0xfe6fffff]
[    0.423982] pci 0000:00:01.0:   bridge window [mem 0xd0000000-0xdfffffff 64bit pref]
[    0.423984] pci 0000:00:09.0: PCI bridge to [bus 02]
[    0.423986] pci 0000:00:09.0:   bridge window [mem 0xfea00000-0xfeafffff]
[    0.423989] pci 0000:00:0a.0: PCI bridge to [bus 03]
[    0.423990] pci 0000:00:0a.0:   bridge window [io  0xd000-0xdfff]
[    0.423992] pci 0000:00:0a.0:   bridge window [mem 0xfe900000-0xfe9fffff]
[    0.423996] pci 0000:00:14.4: PCI bridge to [bus 04]
[    0.424005] pci 0000:00:15.0: PCI bridge to [bus 05]
[    0.424007] pci 0000:00:15.0:   bridge window [io  0xc000-0xcfff]
[    0.424011] pci 0000:00:15.0:   bridge window [mem 0xfe800000-0xfe8fffff]
[    0.424016] pci 0000:00:15.1: PCI bridge to [bus 06]
[    0.424020] pci 0000:00:15.1:   bridge window [mem 0xfe700000-0xfe7fffff]
[    0.424026] pci_bus 0000:00: resource 4 [io  0x0000-0x0cf7 window]
[    0.424027] pci_bus 0000:00: resource 5 [io  0x0d00-0xffff window]
[    0.424029] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window]
[    0.424030] pci_bus 0000:00: resource 7 [mem 0xd0000000-0xffffffff window]
[    0.424031] pci_bus 0000:01: resource 0 [io  0xe000-0xefff]
[    0.424032] pci_bus 0000:01: resource 1 [mem 0xfe500000-0xfe6fffff]
[    0.424033] pci_bus 0000:01: resource 2 [mem 0xd0000000-0xdfffffff 64bit pref]
[    0.424034] pci_bus 0000:02: resource 1 [mem 0xfea00000-0xfeafffff]
[    0.424036] pci_bus 0000:03: resource 0 [io  0xd000-0xdfff]
[    0.424037] pci_bus 0000:03: resource 1 [mem 0xfe900000-0xfe9fffff]
[    0.424038] pci_bus 0000:04: resource 4 [io  0x0000-0x0cf7 window]
[    0.424039] pci_bus 0000:04: resource 5 [io  0x0d00-0xffff window]
[    0.424040] pci_bus 0000:04: resource 6 [mem 0x000a0000-0x000bffff window]
[    0.424041] pci_bus 0000:04: resource 7 [mem 0xd0000000-0xffffffff window]
[    0.424042] pci_bus 0000:05: resource 0 [io  0xc000-0xcfff]
[    0.424044] pci_bus 0000:05: resource 1 [mem 0xfe800000-0xfe8fffff]
[    0.424045] pci_bus 0000:06: resource 1 [mem 0xfe700000-0xfe7fffff]
[    0.424100] NET: Registered protocol family 2
[    0.424247] TCP established hash table entries: 32768 (order: 6, 262144 bytes)
[    0.424461] TCP bind hash table entries: 32768 (order: 8, 1835008 bytes)
[    0.424773] TCP: Hash tables configured (established 32768 bind 32768)
[    0.424845] UDP hash table entries: 2048 (order: 6, 262144 bytes)
[    0.424922] UDP-Lite hash table entries: 2048 (order: 6, 262144 bytes)
[    0.425046] NET: Registered protocol family 1
[    0.425180] RPC: Registered named UNIX socket transport module.
[    0.425181] RPC: Registered udp transport module.
[    0.425182] RPC: Registered tcp transport module.
[    0.425182] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.425187] pci 0000:00:01.0: MSI quirk detected; subordinate MSI disabled
[    1.472903] pci 0000:01:05.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]
[    1.473147] pci 0000:03:00.0: [Firmware Bug]: disabling VPD access (can't determine size of non-standard VPD format)
[    1.473510] PCI: CLS 64 bytes, default 64
[    1.507331] PCI-DMA: Disabling AGP.
[    1.507448] PCI-DMA: aperture base @ b4000000 size 65536 KB
[    1.507449] PCI-DMA: using GART IOMMU.
[    1.507451] PCI-DMA: Reserving 64MB of IOMMU area in the AGP aperture
[    1.514215] LVT offset 1 assigned for vector 0x400
[    1.514229] IBS: LVT offset 1 assigned
[    1.514332] perf: AMD IBS detected (0x0000001f)
[    1.514858] Scanning for low memory corruption every 60 seconds
[    1.515434] workingset: timestamp_bits=40 max_order=20 bucket_order=0
[    1.517956] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    1.518051] FS-Cache: Netfs 'nfs' registered for caching
[    1.518258] NFS: Registering the id_resolver key type
[    1.518265] Key type id_resolver registered
[    1.518266] Key type id_legacy registered
[    1.518269] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.518413] FS-Cache: Netfs 'cifs' registered for caching
[    1.521501] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
[    1.521503] io scheduler noop registered
[    1.521560] io scheduler cfq registered (default)
[    1.521561] io scheduler mq-deadline registered
[    1.522616] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0
[    1.522619] ACPI: Power Button [PWRB]
[    1.522667] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input1
[    1.522668] ACPI: Power Button [PWRF]
[    1.523207] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.543850] 00:09: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[    1.544261] Linux agpgart interface v0.103
[    1.544328] [drm] radeon kernel modesetting enabled.
[    1.544651] [drm] initializing kernel modesetting (RS880 0x1002:0x9714 0x1849:0x9714 0x00).
[    1.544661] [drm] register mmio base: 0xFE600000
[    1.544662] [drm] register mmio size: 65536
[    1.544704] ATOM BIOS: B43106
[    1.544727] radeon 0000:01:05.0: VRAM: 368M 0x00000000C0000000 - 0x00000000D6FFFFFF (368M used)
[    1.544728] radeon 0000:01:05.0: GTT: 512M 0x00000000A0000000 - 0x00000000BFFFFFFF
[    1.544735] [drm] Detected VRAM RAM=368M, BAR=256M
[    1.544736] [drm] RAM width 32bits DDR
[    1.544826] [TTM] Zone  kernel: Available graphics memory: 1876822 kiB
[    1.544827] [TTM] Initializing pool allocator
[    1.544831] [TTM] Initializing DMA pool allocator
[    1.544853] [drm] radeon: 368M of VRAM memory ready
[    1.544854] [drm] radeon: 512M of GTT memory ready.
[    1.544865] [drm] Loading RS780 Microcode
[    1.544883] [drm] radeon: power management initialized
[    1.544900] [drm] GART: num cpu pages 131072, num gpu pages 131072
[    1.553315] [drm] PCIE GART of 512M enabled (table at 0x00000000C0146000).
[    1.553366] radeon 0000:01:05.0: WB enabled
[    1.553368] radeon 0000:01:05.0: fence driver on ring 0 use gpu addr 0x00000000a0000c00 and cpu addr 0xffff880129a7fc00
[    1.555643] radeon 0000:01:05.0: fence driver on ring 5 use gpu addr 0x00000000c0056038 and cpu addr 0xffffc90000e16038
[    1.555644] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.555645] [drm] Driver supports precise vblank timestamp query.
[    1.555646] radeon 0000:01:05.0: radeon: MSI limited to 32-bit
[    1.555744] [drm] radeon: irq initialized.
[    1.587948] [drm] ring test on 0 succeeded in 1 usecs
[    1.763997] [drm] ring test on 5 succeeded in 1 usecs
[    1.764001] [drm] UVD initialized successfully.
[    1.764293] [drm] ib test on ring 0 succeeded in 0 usecs
[    2.416235] [drm] ib test on ring 5 succeeded
[    2.416456] [drm] Radeon Display Connectors
[    2.416456] [drm] Connector 0:
[    2.416457] [drm]   VGA-1
[    2.416458] [drm]   DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c
[    2.416458] [drm]   Encoders:
[    2.416459] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[    2.416459] [drm] Connector 1:
[    2.416460] [drm]   HDMI-A-1
[    2.416460] [drm]   HPD3
[    2.416461] [drm]   DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c
[    2.416462] [drm]   Encoders:
[    2.416462] [drm]     DFP3: INTERNAL_KLDSCP_LVTMA
[    2.494140] [drm] fb mappable at 0xD0247000
[    2.494141] [drm] vram apper at 0xD0000000
[    2.494142] [drm] size 5242880
[    2.494142] [drm] fb depth is 24
[    2.494143] [drm]    pitch is 5120
[    2.494247] fbcon: radeondrmfb (fb0) is primary device
[    2.527033] Console: switching to colour frame buffer device 160x64
[    2.528241] tsc: Refined TSC clocksource calibration: 3013.233 MHz
[    2.528253] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x2b6f19b8b69, max_idle_ns: 440795211742 ns
[    2.538463] radeon 0000:01:05.0: fb0: radeondrmfb frame buffer device
[    2.538486] [drm] Initialized radeon 2.49.0 20080528 for 0000:01:05.0 on minor 0
[    2.538605] [drm] amdgpu kernel modesetting enabled.
[    2.542764] brd: module loaded
[    2.542830] loop: module loaded
[    2.548965] usbcore: registered new interface driver rtsx_usb
[    2.548987] Loading iSCSI transport class v2.0-870.
[    2.549124] iscsi: registered transport (tcp)
[    2.549125] megasas: 07.701.17.00-rc1
[    2.549381] ahci 0000:00:11.0: version 3.0
[    2.549725] ahci 0000:00:11.0: AHCI 0001.0200 32 slots 4 ports 6 Gbps 0xf impl SATA mode
[    2.549729] ahci 0000:00:11.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part sxs
[    2.551517] scsi host0: ahci
[    2.551673] scsi host1: ahci
[    2.551803] scsi host2: ahci
[    2.551949] scsi host3: ahci
[    2.551997] ata1: SATA max UDMA/133 abar m1024@0xfeb0b000 port 0xfeb0b100 irq 19
[    2.551999] ata2: SATA max UDMA/133 abar m1024@0xfeb0b000 port 0xfeb0b180 irq 19
[    2.552001] ata3: SATA max UDMA/133 abar m1024@0xfeb0b000 port 0xfeb0b200 irq 19
[    2.552003] ata4: SATA max UDMA/133 abar m1024@0xfeb0b000 port 0xfeb0b280 irq 19
[    2.553046] scsi host4: pata_atiixp
[    2.554211] scsi host5: pata_atiixp
[    2.554260] ata5: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0xf000 irq 14
[    2.554261] ata6: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xf008 irq 15
[    2.554624] tun: Universal TUN/TAP device driver, 1.6
[    2.554758] pcnet32: pcnet32.c:v1.35 21.Apr.2008 tsbogend@alpha.franken.de
[    2.554800] Atheros(R) L2 Ethernet Driver - version 2.2.3
[    2.554801] Copyright (c) 2007 Atheros Corporation.
[    2.578466] atl1c 0000:03:00.0: version 1.0.1.1-NAPI
[    2.578612] cnic: QLogic cnicDriver v2.5.22 (July 20, 2015)
[    2.578722] uli526x: ULi M5261/M5263 net driver, version 0.9.3 (2005-7-29)
[    2.578744] e100: Intel(R) PRO/100 Network Driver, 3.5.24-k2-NAPI
[    2.578745] e100: Copyright(c) 1999-2006 Intel Corporation
[    2.578769] e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI
[    2.578769] e1000: Copyright (c) 1999-2006 Intel Corporation.
[    2.578794] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[    2.578794] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    2.578820] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.4.0-k
[    2.578821] igb: Copyright (c) 2007-2014 Intel Corporation.
[    2.578844] ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 5.0.0-k
[    2.578845] ixgbe: Copyright (c) 1999-2016 Intel Corporation.
[    2.578950] ixgb: Intel(R) PRO/10GbE Network Driver - version 1.0.135-k2-NAPI
[    2.578951] ixgb: Copyright (c) 1999-2008 Intel Corporation.
[    2.578974] jme: JMicron JMC2XX ethernet driver version 1.0.8
[    2.579017] sky2: driver version 1.30
[    2.579294] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    2.579295] ehci-pci: EHCI PCI platform driver
[    2.579575] QUIRK: Enable AMD PLL fix
[    2.579605] ehci-pci 0000:00:12.2: EHCI Host Controller
[    2.579611] ehci-pci 0000:00:12.2: new USB bus registered, assigned bus number 1
[    2.579616] ehci-pci 0000:00:12.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround
[    2.579624] ehci-pci 0000:00:12.2: debug port 1
[    2.579716] ehci-pci 0000:00:12.2: irq 17, io mem 0xfeb09000
[    2.586249] ehci-pci 0000:00:12.2: USB 2.0 started, EHCI 1.00
[    2.586469] hub 1-0:1.0: USB hub found
[    2.586475] hub 1-0:1.0: 5 ports detected
[    2.586947] ehci-pci 0000:00:13.2: EHCI Host Controller
[    2.586951] ehci-pci 0000:00:13.2: new USB bus registered, assigned bus number 2
[    2.586954] ehci-pci 0000:00:13.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround
[    2.586963] ehci-pci 0000:00:13.2: debug port 1
[    2.587044] ehci-pci 0000:00:13.2: irq 17, io mem 0xfeb07000
[    2.593248] ehci-pci 0000:00:13.2: USB 2.0 started, EHCI 1.00
[    2.593473] hub 2-0:1.0: USB hub found
[    2.593478] hub 2-0:1.0: 5 ports detected
[    2.593954] ehci-pci 0000:00:16.2: EHCI Host Controller
[    2.593959] ehci-pci 0000:00:16.2: new USB bus registered, assigned bus number 3
[    2.593961] ehci-pci 0000:00:16.2: applying AMD SB700/SB800/Hudson-2/3 EHCI dummy qh workaround
[    2.593970] ehci-pci 0000:00:16.2: debug port 1
[    2.594048] ehci-pci 0000:00:16.2: irq 17, io mem 0xfeb04000
[    2.600263] ehci-pci 0000:00:16.2: USB 2.0 started, EHCI 1.00
[    2.600475] hub 3-0:1.0: USB hub found
[    2.600480] hub 3-0:1.0: 4 ports detected
[    2.600697] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    2.600701] ohci-pci: OHCI PCI platform driver
[    2.600943] ohci-pci 0000:00:12.0: OHCI PCI host controller
[    2.600949] ohci-pci 0000:00:12.0: new USB bus registered, assigned bus number 4
[    2.601032] ohci-pci 0000:00:12.0: irq 18, io mem 0xfeb0a000
[    2.656475] hub 4-0:1.0: USB hub found
[    2.656518] hub 4-0:1.0: 5 ports detected
[    2.656880] ohci-pci 0000:00:13.0: OHCI PCI host controller
[    2.656885] ohci-pci 0000:00:13.0: new USB bus registered, assigned bus number 5
[    2.656949] ohci-pci 0000:00:13.0: irq 18, io mem 0xfeb08000
[    2.712446] hub 5-0:1.0: USB hub found
[    2.712454] hub 5-0:1.0: 5 ports detected
[    2.712786] ohci-pci 0000:00:14.5: OHCI PCI host controller
[    2.712791] ohci-pci 0000:00:14.5: new USB bus registered, assigned bus number 6
[    2.712854] ohci-pci 0000:00:14.5: irq 18, io mem 0xfeb06000
[    2.726061] ata5.00: supports DRM functions and may not be fully accessible
[    2.726063] ata5.00: ATA-9: Samsung SSD 840 EVO 1TB mSATA, EXT41B6Q, max UDMA/133
[    2.726065] ata5.00: 1953525168 sectors, multi 1: LBA48 NCQ (depth 0/32)
[    2.726210] ata5.00: limited to UDMA/33 due to 40-wire cable
[    2.728973] ata5.00: supports DRM functions and may not be fully accessible
[    2.729103] ata5.00: configured for UDMA/33
[    2.768469] hub 6-0:1.0: USB hub found
[    2.768512] hub 6-0:1.0: 2 ports detected
[    2.768876] ohci-pci 0000:00:16.0: OHCI PCI host controller
[    2.768882] ohci-pci 0000:00:16.0: new USB bus registered, assigned bus number 7
[    2.768949] ohci-pci 0000:00:16.0: irq 18, io mem 0xfeb05000
[    2.824470] hub 7-0:1.0: USB hub found
[    2.824512] hub 7-0:1.0: 4 ports detected
[    2.824654] uhci_hcd: USB Universal Host Controller Interface driver
[    2.824800] xhci_hcd 0000:02:00.0: xHCI Host Controller
[    2.824805] xhci_hcd 0000:02:00.0: new USB bus registered, assigned bus number 8
[    2.824876] xhci_hcd 0000:02:00.0: hcc params 0x040050af hci version 0x100 quirks 0x00080490
[    2.825165] hub 8-0:1.0: USB hub found
[    2.825172] hub 8-0:1.0: 2 ports detected
[    2.825358] xhci_hcd 0000:02:00.0: xHCI Host Controller
[    2.825362] xhci_hcd 0000:02:00.0: new USB bus registered, assigned bus number 9
[    2.825376] usb usb9: We don't know the algorithms for LPM for this host, disabling LPM.
[    2.825532] hub 9-0:1.0: USB hub found
[    2.825539] hub 9-0:1.0: 2 ports detected
[    2.825725] xhci_hcd 0000:06:00.0: xHCI Host Controller
[    2.825729] xhci_hcd 0000:06:00.0: new USB bus registered, assigned bus number 10
[    2.825828] xhci_hcd 0000:06:00.0: hcc params 0x040050af hci version 0x100 quirks 0x00080490
[    2.826102] hub 10-0:1.0: USB hub found
[    2.826145] hub 10-0:1.0: 2 ports detected
[    2.826289] xhci_hcd 0000:06:00.0: xHCI Host Controller
[    2.826291] xhci_hcd 0000:06:00.0: new USB bus registered, assigned bus number 11
[    2.826306] usb usb11: We don't know the algorithms for LPM for this host, disabling LPM.
[    2.826453] hub 11-0:1.0: USB hub found
[    2.826497] hub 11-0:1.0: 2 ports detected
[    2.826628] usbcore: registered new interface driver uas
[    2.826666] usbcore: registered new interface driver usb-storage
[    2.826739] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
[    2.829998] serio: i8042 KBD port at 0x60,0x64 irq 1
[    2.830034] serio: i8042 AUX port at 0x60,0x64 irq 12
[    2.830151] mousedev: PS/2 mouse device common for all mice
[    2.830429] rtc_cmos 00:04: RTC can wake from S4
[    2.830542] rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0
[    2.830588] rtc_cmos 00:04: alarms up to one month, y3k, 114 bytes nvram, hpet irqs
[    2.830603] i2c /dev entries driver
[    2.830908] piix4_smbus 0000:00:14.0: SMBus Host Controller at 0xb00, revision 0
[    2.830914] piix4_smbus 0000:00:14.0: Using register 0x2c for SMBus port selection
[    2.831271] piix4_smbus 0000:00:14.0: Auxiliary SMBus Host Controller at 0xb20
[    2.831444] w83627ehf: Found NCT6775F chip at 0x290
[    2.831825] w83627ehf w83627ehf.656: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
[    2.831849] sdhci: Secure Digital Host Controller Interface driver
[    2.831849] sdhci: Copyright(c) Pierre Ossman
[    2.831917] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.831919] No iBFT detected.
[    2.831929] hidraw: raw HID events driver (C) Jiri Kosina
[    2.832443] usbcore: registered new interface driver usbhid
[    2.832443] usbhid: USB HID core driver
[    2.832792] NET: Registered protocol family 10
[    2.833059] Segment Routing with IPv6
[    2.833073] NET: Registered protocol family 17
[    2.833095] Key type dns_resolver registered
[    2.833180] microcode: microcode updated early to new patch_level=0x010000db
[    2.833264] microcode: CPU0: patch_level=0x010000db
[    2.833272] microcode: CPU1: patch_level=0x010000db
[    2.833277] microcode: CPU2: patch_level=0x010000db
[    2.833285] microcode: CPU3: patch_level=0x010000db
[    2.833321] microcode: Microcode Update Driver: v2.2.
[    2.833862] Btrfs loaded, crc32c=crc32c-generic
[    2.834220] console [netcon0] enabled
[    2.834221] netconsole: network logging started
[    2.834253] rtc_cmos 00:04: setting system clock to 2021-03-12 06:43:59 UTC (1615531439)
[    2.834334] acpi_cpufreq: overriding BIOS provided _PSD data
[    2.834641] ALSA device list:
[    2.834642]   No soundcards found.
[    2.862278] ata1: SATA link down (SStatus 0 SControl 300)
[    2.862318] ata2: SATA link down (SStatus 0 SControl 300)
[    2.862358] ata4: SATA link down (SStatus 0 SControl 300)
[    2.862396] ata3: SATA link down (SStatus 0 SControl 300)
[    2.862580] scsi 4:0:0:0: Direct-Access     ATA      Samsung SSD 840  1B6Q PQ: 0 ANSI: 5
[    2.862833] sd 4:0:0:0: Attached scsi generic sg0 type 0
[    2.862940] sd 4:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[    2.862957] sd 4:0:0:0: [sda] Write Protect is off
[    2.862958] sd 4:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    2.862992] sd 4:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    2.867013]  sda: sda1 sda2
[    2.867531] sd 4:0:0:0: [sda] Attached SCSI disk
[    2.869915] Freeing unused kernel memory: 3464K
[    2.869917] Write protecting the kernel read-only data: 40960k
[    2.871338] Freeing unused kernel memory: 1540K
[    2.874363] Freeing unused kernel memory: 1212K
[    3.046234] usb 5-1: new low-speed USB device number 2 using ohci-pci
[    3.078254] usb 4-4: new full-speed USB device number 2 using ohci-pci
[    3.158252] usb 7-2: new low-speed USB device number 2 using ohci-pci
[    3.214402] input: DragonRise Inc.   Generic   USB  Joystick   as /devices/pci0000:00/0000:00:13.0/usb5/5-1/5-1:1.0/0003:0079:0006.0001/input/input5
[    3.214559] dragonrise 0003:0079:0006.0001: input,hidraw0: USB HID v1.10 Joystick [DragonRise Inc.   Generic   USB  Joystick  ] on usb-0000:00:13.0-1/input0
[    3.214567] dragonrise 0003:0079:0006.0001: Force Feedback for DragonRise Inc. game controllers by Richard Walmsley <richwalm@gmail.com>
[    3.238701] input:   mini keyboard as /devices/pci0000:00/0000:00:12.0/usb4/4-4/4-4:1.0/0003:1997:2433.0002/input/input6
[    3.290479] hid-generic 0003:1997:2433.0002: input,hidraw1: USB HID v1.01 Keyboard [  mini keyboard] on usb-0000:00:12.0-4/input0
[    3.294773] input:   mini keyboard as /devices/pci0000:00/0000:00:12.0/usb4/4-4/4-4:1.1/0003:1997:2433.0003/input/input7
[    3.324411] input: DragonRise Inc.   Generic   USB  Joystick   as /devices/pci0000:00/0000:00:16.0/usb7/7-2/7-2:1.0/0003:0079:0006.0004/input/input8
[    3.346388] hid-generic 0003:1997:2433.0003: input,hidraw2: USB HID v1.01 Mouse [  mini keyboard] on usb-0000:00:12.0-4/input1
[    3.346572] dragonrise 0003:0079:0006.0004: input,hidraw3: USB HID v1.10 Joystick [DragonRise Inc.   Generic   USB  Joystick  ] on usb-0000:00:16.0-2/input0
[    3.346578] dragonrise 0003:0079:0006.0004: Force Feedback for DragonRise Inc. game controllers by Richard Walmsley <richwalm@gmail.com>
[    3.552292] clocksource: Switched to clocksource tsc
[    4.336769] EXT4-fs (sda2): couldn't mount as ext3 due to feature incompatibilities
[    4.336928] EXT4-fs (sda2): couldn't mount as ext2 due to feature incompatibilities
[    4.366532] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
[   34.795714] ata5: lost interrupt (Status 0x58)
[   34.795733] ata5.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[   34.795737] ata5.00: cmd c8/00:01:74:08:00/00:00:00:00:00/e0 tag 0 dma 512 in
[   34.795737]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[   34.795755] ata5: soft resetting link
[   34.955362] ata5.00: supports DRM functions and may not be fully accessible
[   34.958209] ata5.00: supports DRM functions and may not be fully accessible
[   34.958337] ata5.00: configured for UDMA/33
[   34.958341] ata5.00: device reported invalid CHS sector 0
[   34.958352] ata5: EH complete
[   66.028167] ata5: lost interrupt (Status 0x58)
[   66.028185] ata5.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[   66.028190] ata5.00: cmd c8/00:01:78:09:00/00:00:00:00:00/e0 tag 0 dma 512 in
[   66.028190]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[   66.028208] ata5: soft resetting link
[   66.187810] ata5.00: supports DRM functions and may not be fully accessible
[   66.190681] ata5.00: supports DRM functions and may not be fully accessible
[   66.190807] ata5.00: configured for UDMA/33
[   66.190810] ata5.00: device reported invalid CHS sector 0
[   66.190821] ata5: EH complete
[   96.748611] ata5: lost interrupt (Status 0x58)
[   96.748630] ata5.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[   96.748635] ata5.00: cmd c8/00:01:0e:0a:00/00:00:00:00:00/e0 tag 0 dma 512 in
[   96.748635]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[   96.748653] ata5: soft resetting link
[   96.908257] ata5.00: supports DRM functions and may not be fully accessible
[   96.911107] ata5.00: supports DRM functions and may not be fully accessible
[   96.911232] ata5.00: configured for UDMA/33
[   96.911235] ata5.00: device reported invalid CHS sector 0
[   96.911251] ata5: EH complete
[  127.981071] ata5: lost interrupt (Status 0x58)
[  127.981090] ata5.00: limiting speed to UDMA/25:PIO4
[  127.981092] ata5.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[  127.981096] ata5.00: cmd c8/00:01:47:0a:00/00:00:00:00:00/e0 tag 0 dma 512 in
[  127.981096]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[  127.981114] ata5: soft resetting link
[  128.140718] ata5.00: supports DRM functions and may not be fully accessible
[  128.143607] ata5.00: supports DRM functions and may not be fully accessible
[  128.143733] ata5.00: configured for UDMA/25
[  128.143736] ata5.00: device reported invalid CHS sector 0
[  128.143748] ata5: EH complete
[  159.213522] ata5: lost interrupt (Status 0x58)
[  159.213540] ata5.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[  159.213545] ata5.00: cmd c8/00:01:22:0b:00/00:00:00:00:00/e0 tag 0 dma 512 in
[  159.213545]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
[  159.213563] ata5: soft resetting link
[  159.373159] ata5.00: supports DRM functions and may not be fully accessible
[  159.376050] ata5.00: supports DRM functions and may not be fully accessible
[  159.376176] ata5.00: configured for UDMA/25
[  159.376179] ata5.00: device reported invalid CHS sector 0
[  159.376190] ata5: EH complete
[  159.671382] systemd[1]: systemd 232 running in system mode. (-PAM -AUDIT -SELINUX -IMA -APPARMOR -SMACK -SYSVINIT -UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS -ACL -XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[  159.671551] systemd[1]: Detected architecture x86-64.
[  159.671690] systemd[1]: Set hostname to <Lakka>.
[  159.698900] systemd[1]: Reached target Swap.
[  159.698994] systemd[1]: Listening on Journal Socket (/dev/log).
[  159.699030] systemd[1]: Listening on Journal Socket.
[  159.699081] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[  159.699165] systemd[1]: Listening on RPCbind Server Activation Socket.
[  159.699509] systemd[1]: Created slice System Slice.
[  159.700011] systemd[1]: Mounting Variable Directory...
[  159.715274] applespi: loading out-of-tree module taints kernel.
[  159.799409] systemd-journald[285]: Received request to flush runtime journal from PID 1
[  160.232295] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  160.234587] atl1c 0000:03:00.0: atl1c: eth0 NIC Link is Up<100 Mbps Half Duplex>
[  160.243233] 8021q: 802.1Q VLAN Support v1.8
[  160.253336] input: HDA ATI HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:05.1/sound/card1/input9
[  160.317919] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC892: line_outs=3 (0x14/0x15/0x16/0x0/0x0) type:line
[  160.317922] snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[  160.317924] snd_hda_codec_realtek hdaudioC0D0:    hp_outs=1 (0x1b/0x0/0x0/0x0/0x0)
[  160.317925] snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
[  160.317926] snd_hda_codec_realtek hdaudioC0D0:    dig-out=0x1e/0x0
[  160.317927] snd_hda_codec_realtek hdaudioC0D0:    inputs:
[  160.317928] snd_hda_codec_realtek hdaudioC0D0:      Front Mic=0x19
[  160.317930] snd_hda_codec_realtek hdaudioC0D0:      Rear Mic=0x18
[  160.317931] snd_hda_codec_realtek hdaudioC0D0:      Line=0x1a
[  160.346669] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  160.388007] input: HDA ATI SB Rear Mic as /devices/pci0000:00/0000:00:14.2/sound/card0/input10
[  160.393169] input: HDA ATI SB Line as /devices/pci0000:00/0000:00:14.2/sound/card0/input11
[  160.398442] input: HDA ATI SB Line Out Front as /devices/pci0000:00/0000:00:14.2/sound/card0/input12
[  160.404067] input: HDA ATI SB Line Out Surround as /devices/pci0000:00/0000:00:14.2/sound/card0/input13
[  160.410416] input: HDA ATI SB Line Out CLFE as /devices/pci0000:00/0000:00:14.2/sound/card0/input14
[  160.520522] firewire_ohci 0000:05:00.0: added OHCI v1.10 device as card 0, 4 IR + 8 IT contexts, quirks 0x10
[  160.650516] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  160.954556] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  161.026614] firewire_core 0000:05:00.0: created device fw0: GUID 008f1300b4de0c00, S400
[  161.258574] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  161.562590] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  161.866547] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  162.170548] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  162.474549] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD
[  162.778554] snd_hda_codec_hdmi hdaudioC1D0: HDMI ATI/AMD: no speaker allocation for ELD

You'll notice it's all milliseconds until it tries to bring the ATA up. Then the following occurs with a 30s timeout:

ata5: lost interrupt (Status 0x58)

Eek. Seems my SSD is faulty! I switched to another drive and that solved the issue seeing the machine boot in a few seconds. It turns out that other humans have added kernel boot params to get around the issues with the old drive, but I really didn't need all that space!

Controller mapping?

Here I was expecting a standard for RetroArch, but it seems everyone has their own ideas. And you know what?, I'm cool with that... It allows me to customise everything on my side also... just means a bit more configuration-work. I started with SF2 on MAME2010 engine (assuming the latest was the best?) and quickly found out that P2's keys weren't fully mapped. 1,2,3 and 5 were, but 4 and 6 were missing! No varied kicking in SF2! I hit TAB to check out the configuration inside MAME:

DSC02804

Ok, so it's BAY along the top buttons and XLR along the bottom. This all matched to the Lakka config, but the buttons still just wouldn't work. A quick google saw it to be an un-fixed issue. Switching back to mame2003 fixed it! But then introduced another issue: You need to switch the default controller to digital and make sure the input is simultaneous (keyboard + retropad):

DSC02805

The above shot shows how to get to the config... press F1 when in-game and scroll down to Options. It's a bit daunting, but works fine for all games after the settings are adjusted.

Extra Buttons Required

So, the standard machine has 6 buttons, a joystick and a 'start' button per player. This is great for Street Fighter on free-play, but not so good for a machine with multiple games. To get around this, I bought some arcade buttons from Jaycar and designed+printed a piece of plastic to house them off the side of the machine. I also had to but longer screws as the provided four only bit in about 2mm with the standard controller face.

DSC02800

The goal was an ATX power power switch (using the LED inside to act as the power LED), a coin button for each player and finally a reset-to-menu button. The final button's LED was also wired into the HDD activity LED.

DSC02820

This provided all the buttons required to play everything in the system. The Power button also nicely worked to shutdown the system, as a single press whilst the machine was running would cause a soft power-down!

Playlists

Lakka defines a playlist as a group of ROMs linked to an engine, under an icon in the main menu. It tried to guess all this by itself when you do a full directory scan and it's gotten it wrong every time I've used it. Your best bet is to dump all your ROMs over in one hit, run the scan directory, then jump back on the network share and merge the lists.

lakkalists

You can see above that I had Final Burn up there somehow as well? All the ROMs I introduced were just for MAME, so I have no idea how it CRC-matched them to another system. Anyway, the merging is simple as the file-format is JSON. Once done, delete the old files and restart retro-arch.

Finally, don't expect everything to work...

Just dragging and dropping ROMs from your downloads to the game machine, scanning and running will work with limited success. When you're acquiring things, make sure you check the hierarchy on some sites as they show you that, more-often-than-not, parent ROMs are required. Some ROMs are just old dumps with internal files missing in the ZIPs, so get ready to merge and re-test.

One note with Lakka is that it doesn't easily tell you what the issue is. Usually you'll just get a "Failed to load xXX". When this happens, SSH into the machine and type the following:

Lakka:~ # systemctl stop retroarch
Lakka:~ # retroarch -v
[INFO] RetroArch 1.8.4 (Git 9e25601a56)
[INFO] === Build =======================================
[INFO] CPU Model Name: AMD Phenom(tm) II X4 945 Processor
[INFO] Capabilities:  MMX MMXEXT SSE SSE2 SSE3
[INFO] Built: Jan 20 2020
[INFO] Version: 1.8.4
[INFO] Git: 9e25601a56
[INFO] =================================================
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[INFO] Redirecting save file to "/storage/savefiles/.srm".
[INFO] Redirecting savestate to "/storage/savestates/.state".
[INFO] Version of libretro API: 1
[INFO] Compiled against API: 1
[INFO] [Audio]: Set audio input rate to: 30000.00 Hz.
[INFO] [Video]: Video @ fullscreen
[INFO] [Video]: Starting threaded video driver ...
[INFO] [DRM]: Found 2 connectors.
[INFO] [DRM]: Connector 0 connected: no
[INFO] [DRM]: Connector 0 has 0 modes.
[INFO] [DRM]: Connector 1 connected: yes
[INFO] [DRM]: Connector 1 has 29 modes.
[INFO] [DRM]: Connector 1 assigned to monitor index: #1.
[INFO] [DRM]: Mode 0: (1280x1024) 1280 x 1024, 60 Hz
[INFO] [DRM]: Mode 1: (1920x1080) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 2: (1920x1080) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 3: (1920x1080i) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 4: (1920x1080i) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 5: (1920x1080) 1920 x 1080, 50 Hz
[INFO] [DRM]: Mode 6: (1920x1080i) 1920 x 1080, 50 Hz
[INFO] [DRM]: Mode 7: (1280x960) 1280 x 960, 60 Hz
[INFO] [DRM]: Mode 8: (1280x720) 1280 x 720, 60 Hz
[INFO] [DRM]: Mode 9: (1280x720) 1280 x 720, 60 Hz
[INFO] [DRM]: Mode 10: (1280x720) 1280 x 720, 50 Hz
[INFO] [DRM]: Mode 11: (1024x768) 1024 x 768, 75 Hz
[INFO] [DRM]: Mode 12: (1024x768) 1024 x 768, 70 Hz
[INFO] [DRM]: Mode 13: (1024x768) 1024 x 768, 60 Hz
[INFO] [DRM]: Mode 14: (800x600) 800 x 600, 75 Hz
[INFO] [DRM]: Mode 15: (800x600) 800 x 600, 72 Hz
[INFO] [DRM]: Mode 16: (800x600) 800 x 600, 60 Hz
[INFO] [DRM]: Mode 17: (800x600) 800 x 600, 56 Hz
[INFO] [DRM]: Mode 18: (720x576) 720 x 576, 50 Hz
[INFO] [DRM]: Mode 19: (720x576i) 720 x 576, 50 Hz
[INFO] [DRM]: Mode 20: (720x480) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 21: (720x480) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 22: (720x480i) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 23: (720x480i) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 24: (640x480) 640 x 480, 75 Hz
[INFO] [DRM]: Mode 25: (640x480) 640 x 480, 73 Hz
[INFO] [DRM]: Mode 26: (640x480) 640 x 480, 60 Hz
[INFO] [DRM]: Mode 27: (640x480) 640 x 480, 60 Hz
[INFO] [DRM]: Mode 28: (720x400) 720 x 400, 70 Hz
[INFO] [GL]: Found GL context: kms
[INFO] [GL]: Detecting screen resolution 1280x1024.
[INFO] [EGL] Found EGL_EXT_platform_base, trying eglGetPlatformDisplayEXT
[INFO] [EGL]: EGL version: 1.4
[INFO] [EGL]: Current context: 0x7f4e14057910.
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).
[INFO] [GL]: Vendor: X.Org, Renderer: Gallium 0.4 on AMD RS880 (DRM 2.49.0 / 4.11.12-rt14, LLVM 3.9.0).
[INFO] [GL]: Version: 3.0 Mesa 17.1.3.
[INFO] [GL]: Using resolution 1280x1024
[INFO] [GL]: Default shader backend found: glsl.
[INFO] [Shader driver]: Using GLSL shader backend.
[INFO] [GLSL]: Checking GLSL shader support ...
[WARN] [GL]: Stock GLSL shaders will be used.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] Setting up menu pipeline shaders for XMB ...
[INFO] [GLSL]: Compiling ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling simple ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling modern snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling bokeh shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snowflake shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GL]: Using 4 textures.
[INFO] [GL]: Loaded 1 program(s).
[INFO] [GL]: Using GL_RGB565 for texture uploads.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Video]: Graphics driver did not initialize an input driver. Attempting to pick a suitable driver.
[INFO] [udev]: Keyboard #0 (/dev/input/event3).
[INFO] [udev]: Mouse #0 (/dev/input/event4).
[INFO] [udev]: Mouse #1 (/dev/input/mouse0).
[INFO] [udev]: Plugged pad: DragonRise Inc.   Generic   USB  Joystick   (121:6) on port #0.
[INFO] [udev]: Pad #0 (/dev/input/event2) supports force feedback.
[INFO] [udev]: Pad #0 (/dev/input/event2) supports 16 force feedback effects.
[INFO] [Autoconf]: 306 profiles found.
[INFO] [Autoconf]: selected configuration: /tmp/joypads/udev/DragonRise_N64.cfg
[INFO] [udev]: Plugged pad: DragonRise Inc.   Generic   USB  Joystick   (121:6) on port #1.
[INFO] [udev]: Pad #1 (/dev/input/event5) supports force feedback.
[INFO] [udev]: Pad #1 (/dev/input/event5) supports 16 force feedback effects.
[INFO] [Autoconf]: 306 profiles found.
[INFO] [Autoconf]: selected configuration: /tmp/joypads/udev/DragonRise_N64.cfg
[INFO] [Joypad]: Found joypad driver: "udev".
[INFO] [Video]: Found display server: null
[INFO] Found shader "/tmp/shaders/bilinear.glslp"
[INFO] Found shader "/tmp/shaders/nearest.glslp"
[INFO] Found shader "/tmp/shaders/slang-conversion-template.glsl"
[INFO] Found shader "/tmp/shaders/stock.glsl"
[INFO] ALSA: Using signed 16-bit format.
[INFO] ALSA: Period size: 1024 frames
[INFO] ALSA: Buffer size: 2048 frames
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [LED]: LED driver = 'null' 0xa969a0
[INFO] [MIDI]: Initializing ...
ALSA lib /home/natinusala/release/Lakka-LibreELEC/build.Lakka-Generic.x86_64/alsa-lib-1.1.9/src/seq/seq_hw.c:466:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
[ERROR] [MIDI]: snd_seq_open failed with error -2.
[ERROR] [MIDI]: Initialization failed (list of input devices unavailable).
[INFO] SRAM will not be saved.
[INFO] Loading history file: [/storage/.config/retroarch/content_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_music_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_video_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_image_history.lpl].
[INFO] Loading favorites file: [/storage/.config/retroarch/content_favorites.lpl].
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).

From here, you'll now get the full dump when you try to run a game...

[INFO] Using content: /storage/roms/1942.zip.
[INFO] arg #0: retroarch
[INFO] arg #1: /storage/roms/1942.zip
[INFO] arg #2: -s
[INFO] arg #3: /storage/savefiles
[INFO] arg #4: -S
[INFO] arg #5: /storage/savestates
[INFO] arg #6: -c
[INFO] arg #7: /storage/.config/retroarch/retroarch.cfg
[INFO] arg #8: -L
[INFO] arg #9: /tmp/cores/mame2003_plus_libretro.so
[INFO] Content ran for a total of: 00 hours, 00 minutes, 00 seconds.
[INFO] Unloading game..
[INFO] Unloading core..
[INFO] Unloading core symbols..
[INFO] Threaded video stats: Frames pushed: 4640, Frames dropped: 0.
[INFO] Set config file to : /storage/.config/retroarch/retroarch.cfg
[INFO] RetroArch 1.8.4 (Git 9e25601a56)
[INFO] Redirecting save file to "/storage/savefiles/1942.srm".
[INFO] Redirecting savestate to "/storage/savestates/1942.state".
[INFO] === Build =======================================
[INFO] CPU Model Name: AMD Phenom(tm) II X4 945 Processor
[INFO] Capabilities:  MMX MMXEXT SSE SSE2 SSE3
[INFO] Built: Jan 20 2020
[INFO] Version: 1.8.4
[INFO] Git: 9e25601a56
[INFO] =================================================
[INFO] Loading dynamic libretro core from: "/tmp/cores/mame2003_plus_libretro.so"
[INFO] [Overrides] no core-specific overrides found at /storage/.config/retroarch/config/MAME 2003-Plus/MAME 2003-Plus.cfg.
[INFO] [Overrides] no content-dir-specific overrides found at /storage/.config/retroarch/config/MAME 2003-Plus/roms.cfg.
[INFO] [Overrides] no game-specific overrides found at /storage/.config/retroarch/config/MAME 2003-Plus/1942.cfg.
[INFO] [Remaps]: remap directory: /storage/remappings
[INFO] Redirecting save file to "/storage/savefiles/1942.srm".
[INFO] Redirecting savestate to "/storage/savestates/1942.state".
[INFO] [Environ]: GET_LOG_INTERFACE.
[INFO] [Environ]: PERFORMANCE_LEVEL: 10.
[INFO] Content loading skipped. Implementation will load it on its own.
[libretro INFO] [MAME 2003+] Full content path /storage/roms/1942.zip
[libretro INFO] [MAME 2003+] Git Version  fcb70939
[libretro INFO] [MAME 2003+] Content lookup name: 1942
[libretro INFO] [MAME 2003+] Driver index counter: 1686. Matched game driver: 1942
[libretro INFO] [MAME 2003+] Content identified as using 8-way joystick controls.
[libretro INFO] [MAME 2003+] Content identified by controls.c as having joysticks on axis with respect to the cabinet.
[libretro INFO] [MAME 2003+] Content identified as supporting 2 players with 2 distinct controls.
[libretro INFO] [MAME 2003+] Content identified as supporting 2 button controls.
[libretro INFO] [MAME 2003+] Content identified by controls.c as having mirrored multiplayer control labels.
[INFO] [Environ]: SYSTEM_DIRECTORY: "/tmp/system".
[libretro INFO] [MAME 2003+] content path: /storage/roms
[libretro INFO] [MAME 2003+]  system path: /tmp/system
[libretro INFO] [MAME 2003+]    save path: /storage/savefiles
[INFO] [Environ]: SET_VARIABLES.
[INFO] [Environ]: SET_CONTROLLER_INFO.
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n3a.bin
[libretro ERROR] [MAME 2003+] 1-n3a.bin    NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n4.bin
[libretro ERROR] [MAME 2003+] 1-n4.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n5.bin
[libretro ERROR] [MAME 2003+] 1-n5.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n6.bin
[libretro ERROR] [MAME 2003+] 1-n6.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n7.bin
[libretro ERROR] [MAME 2003+] 1-n7.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-c11.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 1-f2.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a1.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a2.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a3.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a4.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a5.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-a6.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-l1.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-l2.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-n1.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 2-n2.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 08e_sb-5.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 09e_sb-6.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 10e_sb-7.bin
[libretro INFO] [MAME 2003+] Opening ROM file: f01_sb-0.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 06d_sb-4.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 03k_sb-8.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 01d_sb-2.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 02d_sb-3.bin
[libretro INFO] [MAME 2003+] Opening ROM file: k06_sb-1.bin
[libretro INFO] [MAME 2003+] Opening ROM file: 01m_sb-9.bin
[INFO] [Environ]: SET_MESSAGE: Required files are missing, the game cannot be run.

[libretro ERROR] [MAME 2003+] Required files are missing, the game cannot be run.
[libretro ERROR] [MAME 2003+] readroms failed
[ERROR] Failed to load content
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[INFO] Redirecting save file to "/storage/savefiles/1942.srm".
[INFO] Redirecting savestate to "/storage/savestates/1942.state".
[INFO] Version of libretro API: 1
[INFO] Compiled against API: 1
[INFO] [Audio]: Set audio input rate to: 30000.00 Hz.
[INFO] [Video]: Video @ fullscreen
[INFO] [Video]: Starting threaded video driver ...
[INFO] [DRM]: Found 2 connectors.
[INFO] [DRM]: Connector 0 connected: no
[INFO] [DRM]: Connector 0 has 0 modes.
[INFO] [DRM]: Connector 1 connected: yes
[INFO] [DRM]: Connector 1 has 29 modes.
[INFO] [DRM]: Connector 1 assigned to monitor index: #1.
[INFO] [DRM]: Mode 0: (1280x1024) 1280 x 1024, 60 Hz
[INFO] [DRM]: Mode 1: (1920x1080) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 2: (1920x1080) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 3: (1920x1080i) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 4: (1920x1080i) 1920 x 1080, 60 Hz
[INFO] [DRM]: Mode 5: (1920x1080) 1920 x 1080, 50 Hz
[INFO] [DRM]: Mode 6: (1920x1080i) 1920 x 1080, 50 Hz
[INFO] [DRM]: Mode 7: (1280x960) 1280 x 960, 60 Hz
[INFO] [DRM]: Mode 8: (1280x720) 1280 x 720, 60 Hz
[INFO] [DRM]: Mode 9: (1280x720) 1280 x 720, 60 Hz
[INFO] [DRM]: Mode 10: (1280x720) 1280 x 720, 50 Hz
[INFO] [DRM]: Mode 11: (1024x768) 1024 x 768, 75 Hz
[INFO] [DRM]: Mode 12: (1024x768) 1024 x 768, 70 Hz
[INFO] [DRM]: Mode 13: (1024x768) 1024 x 768, 60 Hz
[INFO] [DRM]: Mode 14: (800x600) 800 x 600, 75 Hz
[INFO] [DRM]: Mode 15: (800x600) 800 x 600, 72 Hz
[INFO] [DRM]: Mode 16: (800x600) 800 x 600, 60 Hz
[INFO] [DRM]: Mode 17: (800x600) 800 x 600, 56 Hz
[INFO] [DRM]: Mode 18: (720x576) 720 x 576, 50 Hz
[INFO] [DRM]: Mode 19: (720x576i) 720 x 576, 50 Hz
[INFO] [DRM]: Mode 20: (720x480) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 21: (720x480) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 22: (720x480i) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 23: (720x480i) 720 x 480, 60 Hz
[INFO] [DRM]: Mode 24: (640x480) 640 x 480, 75 Hz
[INFO] [DRM]: Mode 25: (640x480) 640 x 480, 73 Hz
[INFO] [DRM]: Mode 26: (640x480) 640 x 480, 60 Hz
[INFO] [DRM]: Mode 27: (640x480) 640 x 480, 60 Hz
[INFO] [DRM]: Mode 28: (720x400) 720 x 400, 70 Hz
[INFO] [GL]: Found GL context: kms
[INFO] [GL]: Detecting screen resolution 1280x1024.
[INFO] [EGL] Found EGL_EXT_platform_base, trying eglGetPlatformDisplayEXT
[INFO] [EGL]: EGL version: 1.4
[INFO] [EGL]: Current context: 0x7f4e0c045a50.
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).
[INFO] [GL]: Vendor: X.Org, Renderer: Gallium 0.4 on AMD RS880 (DRM 2.49.0 / 4.11.12-rt14, LLVM 3.9.0).
[INFO] [GL]: Version: 3.0 Mesa 17.1.3.
[INFO] [GL]: Using resolution 1280x1024
[INFO] [GL]: Default shader backend found: glsl.
[INFO] [Shader driver]: Using GLSL shader backend.
[INFO] [GLSL]: Checking GLSL shader support ...
[WARN] [GL]: Stock GLSL shaders will be used.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] Setting up menu pipeline shaders for XMB ...
[INFO] [GLSL]: Compiling ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling simple ribbon shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling modern snow shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling bokeh shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GLSL]: Compiling snowflake shader..
[INFO] [GLSL]: Found GLSL vertex shader.
[INFO] [GLSL]: Found GLSL fragment shader.
[INFO] [GLSL]: Linking GLSL program.
[INFO] [GL]: Using 4 textures.
[INFO] [GL]: Loaded 1 program(s).
[INFO] [GL]: Using GL_RGB565 for texture uploads.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Video]: Graphics driver did not initialize an input driver. Attempting to pick a suitable driver.
[INFO] [udev]: Keyboard #0 (/dev/input/event3).
[INFO] [udev]: Mouse #0 (/dev/input/event4).
[INFO] [udev]: Mouse #1 (/dev/input/mouse0).
[INFO] [udev]: Plugged pad: DragonRise Inc.   Generic   USB  Joystick   (121:6) on port #0.
[INFO] [udev]: Pad #0 (/dev/input/event2) supports force feedback.
[INFO] [udev]: Pad #0 (/dev/input/event2) supports 16 force feedback effects.
[INFO] [Autoconf]: 306 profiles found.
[INFO] [Autoconf]: selected configuration: /tmp/joypads/udev/DragonRise_N64.cfg
[INFO] [udev]: Plugged pad: DragonRise Inc.   Generic   USB  Joystick   (121:6) on port #1.
[INFO] [udev]: Pad #1 (/dev/input/event5) supports force feedback.
[INFO] [udev]: Pad #1 (/dev/input/event5) supports 16 force feedback effects.
[INFO] [Autoconf]: 306 profiles found.
[INFO] [Autoconf]: selected configuration: /tmp/joypads/udev/DragonRise_N64.cfg
[INFO] [Joypad]: Found joypad driver: "udev".
[INFO] [Video]: Found display server: null
[INFO] Found shader "/tmp/shaders/bilinear.glslp"
[INFO] Found shader "/tmp/shaders/nearest.glslp"
[INFO] Found shader "/tmp/shaders/slang-conversion-template.glsl"
[INFO] Found shader "/tmp/shaders/stock.glsl"
[INFO] ALSA: Using signed 16-bit format.
[INFO] ALSA: Period size: 1024 frames
[INFO] ALSA: Buffer size: 2048 frames
[INFO] [Menu]: Found menu display driver: "gl".
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [Font]: Using font rendering backend: freetype.
[INFO] [LED]: LED driver = 'null' 0xa969a0
[INFO] [MIDI]: Initializing ...
ALSA lib /home/natinusala/release/Lakka-LibreELEC/build.Lakka-Generic.x86_64/alsa-lib-1.1.9/src/seq/seq_hw.c:466:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
[ERROR] [MIDI]: snd_seq_open failed with error -2.
[ERROR] [MIDI]: Initialization failed (list of input devices unavailable).
[INFO] SRAM will not be saved.
[INFO] Loading history file: [/storage/.config/retroarch/content_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_music_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_video_history.lpl].
[INFO] Loading history file: [/storage/.config/retroarch/content_image_history.lpl].
[INFO] Loading favorites file: [/storage/.config/retroarch/content_favorites.lpl].
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).
[INFO] [KMS]: New FB: 1280x1024 (stride: 5120).

There's a lot of crap in the dump, but just scroll up to the ERROR lines and check out what's happening... i.e. the important part is:

...
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n3a.bin
[libretro ERROR] [MAME 2003+] 1-n3a.bin    NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n4.bin
[libretro ERROR] [MAME 2003+] 1-n4.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n5.bin
[libretro ERROR] [MAME 2003+] 1-n5.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n6.bin
[libretro ERROR] [MAME 2003+] 1-n6.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-n7.bin
[libretro ERROR] [MAME 2003+] 1-n7.bin     NOT FOUND
[libretro INFO] [MAME 2003+] Opening ROM file: 1-c11.bin
...

And that's a wrap! It works perfectly and I've customised my menus and have all my games running nicely!

Filed under: Retro No Comments