VOGONS


ITX-Llama (Vortex86EX ITX motherboard) - DONE!

Topic actions

Reply 180 of 637, by 640K!enough

User metadata
Rank Oldbie
Rank
Oldbie
Eivind wrote on 2023-09-04, 12:55:

Just got the boards in, plopped on a Geforce4 Ti4200 AGP card, and got video! 🎉

It's always nice when things work as intended. Did that require any additional bring-up code, or was it all configured at the hardware level, and worked without BIOS-level changes? Any idea what the compatibility list will look like?

Reply 181 of 637, by Duffman

User metadata
Rank Oldbie
Rank
Oldbie

@Eivind

I'm happy to hear you got AGP working. well done!

MB: ASRock B550 Steel Legend
CPU: Ryzen 9 5950X
RAM: Corsair 64GB Kit (4x16GB) DDR4 Veng LPX C18 4000MHz
SSDs: 2x Crucial MX500 1TB SATA + 1x Samsung 980 (non-pro) 1TB NVMe SSD
OSs: Win 11 Pro (NVMe) + WinXP Pro SP3 (SATA)
GPU: RTX2070 (11) GT730 (XP)

Reply 182 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
640K!enough wrote on 2023-09-05, 02:09:

It's always nice when things work as intended. Did that require any additional bring-up code, or was it all configured at the hardware level, and worked without BIOS-level changes? Any idea what the compatibility list will look like?

No additional BIOS code needed, as I understand it AGP is simply a superset of PCI, with all of the additional hardware features (extra pins) optional, at least for AGP 1.0 (3.3V, 1x). I want to try more cards, looks like I have at least a Geforce FX 5200 in my old parts bin but some of its caps looks...rather sketchy. Will get more cards to test with!
Looking at this thread from a couple of years ago, it seems most older cards will work just fine.

Now, on to programming the new and revised LED/clicker + the RP2040 USB-to-PS/2 controllers...

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 183 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie

LED & clicker MCU (attiny84) working, just need to add a bit of code to the BIOS setup menu for configuring the led intensity, pulse pattern etc + clicker mute/frequency. Should be simple enough, I'll save that for later!
As for the RP2040, unfortunately I'd gotten the crystal wiring mixed up. A little bodging got me up and running.
Sadly, it looks like the TinyUSB library for the RP2040 is very specifically tailored to support either a native USB host or a PIO-based one - but not both at the same time.
I've programmed the chip for either configuration and I'm getting HID reports for both mice and keyboards, so that's a promising start. Just got to figure out how to combine the two hosts, and then translate the HID data to PS/2. Luckily there are already working PS/2 examples out there for the Pi Pico.

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 184 of 637, by rasteri

User metadata
Rank Oldbie
Rank
Oldbie
Eivind wrote on 2023-09-09, 22:00:

Sadly, it looks like the TinyUSB library for the RP2040 is very specifically tailored to support either a native USB host or a PIO-based one - but not both at the same time.
I've programmed the chip for either configuration and I'm getting HID reports for both mice and keyboards, so that's a promising start. Just got to figure out how to combine the two hosts, and then translate the HID data to PS/2. Luckily there are already working PS/2 examples out there for the Pi Pico.

Hey since you typically have a raspberry pi hooked up anyway, could you not just use it to do the USB to PS/2 translation? Then you could take advantage of linux support for stuff like XInput game controllers...

Reply 185 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
rasteri wrote on 2023-09-10, 16:53:

Hey since you typically have a raspberry pi hooked up anyway, could you not just use it to do the USB to PS/2 translation? Then you could take advantage of linux support for stuff like XInput game controllers...

Conceivably one could use the Pi Zero 2 for this, but it only has a single USB port - and it's a Micro-B connector which would have to be connected somehow to the motherboard. Plus - it's running the mt32-pi bare-metal firmware (no linux).

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 186 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie

Yes! Got a usb keyboard-to-ps/2 setup using the bit-banging branch of this library working on the rp2040 on the native usb port. Hubs seem to work fine as well, my HHKB that's been collecting dust can finally be used again! 🎉
This is looking very promising indeed, now I gotta get the dual usb host configuration up and running.

As a side note, I forgot to level-shift the keyboard/mouse data and clock signals going into the rp2040, but it seems it can happily cope with what I measured to be around 4.8V without complaining - even though it's not rated to be 5V-tolerant. Definitely something to address later, but nice to see it worked.

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 187 of 637, by Sunoo

User metadata
Rank Member
Rank
Member
Eivind wrote on 2023-09-12, 10:46:

As a side note, I forgot to level-shift the keyboard/mouse data and clock signals going into the rp2040, but it seems it can happily cope with what I measured to be around 4.8V without complaining - even though it's not rated to be 5V-tolerant. Definitely something to address later, but nice to see it worked.

Eben Upton has confirmed the RP2040 is 5v tolerant: https://hackaday.com/2022/09/25/pi-pico-w-doe … comment-6516402

Reply 188 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
Sunoo wrote on 2023-09-12, 11:42:

Eben Upton has confirmed the RP2040 is 5v tolerant: https://hackaday.com/2022/09/25/pi-pico-w-doe … comment-6516402

Huh, that's interesting. So 5V is ok, but 5.5V isn't? Alrighty then, shouldn't be a problem with HID devices as they're powered by the mainboard's 5V anyways (plus, there will always be a bit of voltage drop across the rail when the whole system is running).

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 189 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie

Got the TinyUSB library working with two (native + PIO-based) USB hosts, and tested keyboard + mouse to PS/2 translation. Works well enough in DOS, though a little more tweaking is needed to avoid weirdness when hot-unplugging hubs. Very promising overall. Another board revision that takes care of the crystal goof and properly level-translates the PS/2 signals is arriving later this week. We're getting closer...

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 190 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie

Update: Got revision E (fifth prototype) in, level translators work fine. The RP2040 firmware for USB-to-PS/2 conversion works more or less flawlessly. Also tested the board with an ATI 9250 without issues. I think this might be it, I've yet to test digital audio output in Win98 as well as the ESP8266-based dial-up addon, but other than that I think I'm altogether mostly satisfied. No more hardware errata that I'm aware of at least! 🤞

The attachment IMG_0818.jpeg is no longer available
The attachment IMG_0819.jpeg is no longer available

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 191 of 637, by dotbatman

User metadata
Rank Newbie
Rank
Newbie

Beautiful design you've got here. Very excited to get me hands on one of these at some point.

Reply 192 of 637, by jamesfmackenzie

User metadata
Rank Newbie
Rank
Newbie
Eivind wrote on 2023-09-30, 16:46:

Update: Got revision E (fifth prototype) in, level translators work fine. The RP2040 firmware for USB-to-PS/2 conversion works more or less flawlessly. Also tested the board with an ATI 9250 without issues. I think this might be it, I've yet to test digital audio output in Win98 as well as the ESP8266-based dial-up addon, but other than that I think I'm altogether mostly satisfied. No more hardware errata that I'm aware of at least! 🤞

IMG_0818.jpeg
IMG_0819.jpeg

Amazing news! I’m very interested with these become available! 😎

Reply 193 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
jamesfmackenzie wrote on 2023-10-02, 02:21:

Amazing news! I’m very interested with these become available! 😎

I'll let everyone know soon, planning to update the initial post of this thread with detailed information. Will probably make a couple of videos as well.

In other news, I got digital audio output working just fine in Win98.
I'll try to get rloew's Terabyte Plus package slipstreamed into a Win98 installer - that would hopefully make the Win98 installation a bit less painful by not having to reboot into safe mode, disabling and enabling the IDE controllers mid-installation etc.

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 194 of 637, by Deksor

User metadata
Rank l33t
Rank
l33t

You should checkout windows 98 quickinstall as well Windows 98 SE QuickInstall

It allows for win98 installation from USB among other things.

In the meantime I thought of something, maybe you thought of it and already know if it's feasible or not : I know that ide is pretty much dumbed down ISA for HDDs. My idea is : could it be possible to get an ISA based ide port to work ? Now, it won't be fast at all, but the goal here isn't speed, it's just to connect an cd-rom drive.

The main issue is that I don't know if ide absolutely requires DMA or not to operate (if that's the case, then it's game over I guess ...)

That way someone could use both a sata SSD and an ide cd-rom drive!

Something else you could try is a m.2 sata SSD slot instead of a regular sata port ? That would allow for even thinner cases 😁

Trying to identify old hardware ? Visit The retro web - Project's thread The Retro Web project - a stason.org/TH99 alternative

Reply 195 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
Deksor wrote on 2023-10-02, 11:52:

You should checkout windows 98 quickinstall as well Windows 98 SE QuickInstall
It allows for win98 installation from USB among other things.

I've briefly looked at that, but it's my understanding that this works by taking a working, pre-installed Win98 system and "packing it up" for quick reinstalment. Which isn't exactly what I'm after.

Deksor wrote on 2023-10-02, 11:52:

In the meantime I thought of something, maybe you thought of it and already know if it's feasible or not : I know that ide is pretty much dumbed down ISA for HDDs. My idea is : could it be possible to get an ISA based ide port to work ? Now, it won't be fast at all, but the goal here isn't speed, it's just to connect an cd-rom drive.
The main issue is that I don't know if ide absolutely requires DMA or not to operate (if that's the case, then it's game over I guess ...)

I believe this could be possible in theory, yes. IDE doesn't require DMA, I think the "only" thing needed would be to add an address decoder and maybe some buffers and then the IDE connector.
However, with my current setup of the Vortex86EX, I'm only using 8 bits of the ISA data bus (for the sound card) - and there aren't any available pins for routing the next 8 bits to... 😒

Deksor wrote on 2023-10-02, 11:52:

Something else you could try is a m.2 sata SSD slot instead of a regular sata port ? That would allow for even thinner cases 😁

I guess... But since SATA uses high-speed, diff-paired signals, one would have to sacrifice the normal SATA port - I don't think it would be wise to keep both the SATA port and an M.2 connector wired together. My guess would be that a SATA port is more useful for most people than an M.2 slot?

However, taking a step back - I don't see that many benefits of using an SSD instead of a good quality SD card (which is already slim as hell) in this retro system, do you? I mean the SD card already has ~0ms latency and transfer speeds way faster than old spinning hard drives.

Right now, after months of development (and thousands of dollars spent), I'm kinda anxious to get this thing wrapped up in its current state! 😉

How did it go with your CD emulator hardware project, btw? Did you get any closer?

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 196 of 637, by Deksor

User metadata
Rank l33t
Rank
l33t

No I haven't made much progress since sadly 🙁
I need to make some progress in the software side, but dos TSR and low level CD-ROM handling is kind of a lost art, and I would really appreciate any form of deeper documentation explaining what I'm actually reading 😅

As for m.2, maybe a good compromise could be to fit the footprint of the sata port on a spot that would be below the m.2 SSD ?
If someone buys this mobo they'll either mount the m.2 or SATA. I guess someone could always mount both, but mechanically speaking you will only be able to use one or the other?

To me the main issue with SD card isn't quite the speed but rather the reliability with an os such as win98 (it's already bad enough with an SSD), and also price to capacity ratio (well for 128gb I guess it's negligible nowadays ... though it's still in favor to ssds)

As for ide, I wonder how xt-ide handles it and if it would work for CD-ROM, or if cd-rom needs absolutely a 16-bit port (now that it think about it, maybe they solve it in software implying more work on the software side ...)

Otherwise another solution would be to add yet another component onboard such as a sata controller or a ide controller on the pci bus, but I guess that's also a lot of work at this stage ...

Trying to identify old hardware ? Visit The retro web - Project's thread The Retro Web project - a stason.org/TH99 alternative

Reply 197 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
Deksor wrote on 2023-10-02, 13:16:

As for m.2, maybe a good compromise could be to fit the footprint of the sata port on a spot that would be below the m.2 SSD ?
If someone buys this mobo they'll either mount the m.2 or SATA. I guess someone could always mount both, but mechanically speaking you will only be able to use one or the other?

I wasn't thinking of the mechanical side of this, rather having all those extra traces going around. Like I said, SATA uses high-speed differential-paired signals that has to be routed precisely, with the correct trace width, spacing, distance and length matching. Having traces veering off to other unconnected ports will probably not do anything good to the signal integrity (not even taking into account that it'll effectively create an antenna).

Deksor wrote on 2023-10-02, 13:16:

To me the main issue with SD card isn't quite the speed but rather the reliability with an os such as win98 (it's already bad enough with an SSD), and also price to capacity ratio (well for 128gb I guess it's negligible nowadays ... though it's still in favor to ssds)

Taking the price of SD cards out of the picture for a moment, I'm not that sure the reliability of SD cards is as bad as you might think. I'd like to see more than anecdotal evidence of this, at least. 😀 I know for a fact that there are bad SD cards out there (as a matter of fact, I have a whole bag of them right here - looking fine and seemingly working, but then giving me errors in Win98 all the time. Thanks, Amazon, for that) - but I've never had trouble with known-good, quality brand cards.

Deksor wrote on 2023-10-02, 13:16:

As for ide, I wonder how xt-ide handles it and if it would work for CD-ROM, or if cd-rom needs absolutely a 16-bit port (now that it think about it, maybe they solve it in software implying more work on the software side ...)

I have no idea, tbh.

Deksor wrote on 2023-10-02, 13:16:

Otherwise another solution would be to add yet another component onboard such as a sata controller or a ide controller on the pci bus, but I guess that's also a lot of work at this stage ...

The PCI bus is running at 66 MHz for AGP to work... 😉

Sorry to be so dismissive with your suggestions, but I think this system is somewhat tweaked to its limits already. The Vortex86EX SOM has a ton of limitations that one has to carefully thread around. Don't think DMP had anything like this mainboard in mind when they created the module...

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC

Reply 198 of 637, by Deksor

User metadata
Rank l33t
Rank
l33t

There's no need to be sorry, it's your project, take ideas you like, reject those you don't like 😁

For sata though I know that some boards do disable sata or pcie depending on what's already connected on the board. This is probably done on a chip level so your concerns are probably valid.
As for PCI, I didn't know that !
Though iirc there are many newer PCI controllers that are 66MHz tolerant so you may not dismiss that so quickly 😁

The very inexpensive and win98 compatible Sii3114 is PCI66 tolerant for instance ! https://pdf1.alldatasheet.com/datasheet-pdf/v … GE/SII3114.html

Finally for SD card, well I can only be based on my experience, but I've had quite a lot of SD cards to die on me with my raspberry pi few years ago.
I'll do some more research, but to me the SSD is just more advanced, it's designed to host an OS, most SD cards aren't (Well with the raising popularity of SBCs this probably changed, my experience with the raspberry pi is from the mid/late 2010s roughly), they have a controller to spread the wear among all the cells, whereas an SD card is a single cell.
At least that's what I am aware of, this needs more research.

Maybe a M.2 slot would make more sense on a tinylamma 3.0 ? There's still "plenty" of empty space on the back 😁

Trying to identify old hardware ? Visit The retro web - Project's thread The Retro Web project - a stason.org/TH99 alternative

Reply 199 of 637, by Eivind

User metadata
Rank Oldbie
Rank
Oldbie
Deksor wrote on 2023-10-02, 17:44:

The very inexpensive and win98 compatible Sii3114 is PCI66 tolerant for instance ! https://pdf1.alldatasheet.com/datasheet-pdf/v … GE/SII3114.html

At a quick glance, that looks very nice! Being PCI, it's not in production anymore though I think, so it would be another part to hand-solder 😉 Also, not quite sure how this would work in DOS, don't these kinds of chips require OS-level drivers to work?
Anyways, this and other chips like it might be something to look at more in-depth later!

Deksor wrote on 2023-10-02, 17:44:

Finally for SD card, well I can only be based on my experience, but I've had quite a lot of SD cards to die on me with my raspberry pi few years ago.
I'll do some more research, but to me the SSD is just more advanced, it's designed to host an OS, most SD cards aren't (Well with the raising popularity of SBCs this probably changed, my experience with the raspberry pi is from the mid/late 2010s roughly), they have a controller to spread the wear among all the cells, whereas an SD card is a single cell.
At least that's what I am aware of, this needs more research.

I think you're spot on when it comes to durability of SD cards vs SSDs in general. However, I really don't think you can compare a modern Linux-based system with Windows 98 (or even DOS) when it comes to constantly writing to (and wearing out) the disk - just think of all the incessant logging in Linux!

Deksor wrote on 2023-10-02, 17:44:

Maybe a M.2 slot would make more sense on a tinylamma 3.0 ? There's still "plenty" of empty space on the back 😁

Definitely something I'll look at! 👍 If going for an M.2 SATA solution on the TinyLlama, I might even ditch the SD card altogether, thereby freeing up a nice block of programmable IO pins that could be used for something else...

TinyLlama 3
ITX-Llama motherboard
TinyLlama SBC