Page 1 of 1
W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 2:22 pm
by ferropop
Recently got Win95 going on my MiSTer, and it was a beautiful thing.
Wondering though - given the HUGE performance increase that happened since 2020's ao486 core (with the addition of cache), is it realistic to imagine another big breakthrough with the current hardware?
I use the Weezer video from the Win95 Install CD as a baseline - that video being included on the install CD implies some expectation of being able to watch it full-fps on a build if its day. Currently in the ao486 it crawls along at like 4fps.
<3
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 3:19 pm
by Bas
Playing back (or rather decoding) MPEG probably requires an FPU. Most contemporary systems at the time running W95 were 486DX and up. One AO486 sprouts an FPU, this will probably run a whole lot smoother.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 4:24 pm
by ferropop
Bas wrote: ↑Fri Jul 30, 2021 3:19 pm
Playing back (or rather decoding) MPEG probably requires an FPU. Most contemporary systems at the time running W95 were 486DX and up. One AO486 sprouts an FPU, this will probably run a whole lot smoother.
Oh interesting, that inspires some hope then!
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 5:09 pm
by Bas
Don't hold your breath too long.. an FPU will eat a lot of FPGA space for marginal returns in the area of gaming. I would love on to run old UNIX-like OS'es but that's really niche.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 5:28 pm
by bazza_12
Bas wrote: ↑Fri Jul 30, 2021 5:09 pm
Don't hold your breath too long.. an FPU will eat a lot of FPGA space for marginal returns in the area of gaming. I would love on to run old UNIX-like OS'es but that's really niche.
isn't that what the MiSTer project was for.. re-creating and preserving niche systems?
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 7:24 pm
by bbond007
MPEG is probably not a realistic codec for ao486... FPU or not
You would need to emulate a video board such as S3 Vision868...
The video board (ET4000/W32) does not support YUV-->RGB conversion necessary for decoding MPEG on a slow machine.
If you converted the Weezer video to Cinepac then it would play well on a486 for sure. I reencoded the Edie Brickell "Good Times" video (from the WIN95 the "Fun Stuff" folder) to 576x360 and it ran OK.
Obviously I can't put that on YouTube, so here is Big Buck Bunny: -->
https://www.youtube.com/watch?v=ZLNP7y1BjwU
Video Info:
Resolution : 320x200
Codec : Cinepak
FPS : 12
Color : 24BIT
Audio Rate : 22050
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Fri Jul 30, 2021 8:04 pm
by Bas
bazza_12 wrote: ↑Fri Jul 30, 2021 5:28 pmIsn't that what the MiSTer project was for.. re-creating and preserving niche systems?
I'd say, but hardware accuracy doesn't seem to be the goal of this specific core. And I get that, as there never was a gold standard mid-90's Wintel PC to preserve to it's finesses. I would really love an FPU and SCSI though, but the latter is probably much more complex than my foggy understanding of FPGA's makes it out to be.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Sun Aug 01, 2021 12:54 am
by Neocaron
The minimig hybrid emulation experience shows promesses. So it's not completely unreasonable to have hopes for a Pentium core or even higher... It would be possible by using the arm chip for some emulation tasks while other ones timing and accuracy sensitive run on the FPGA. We'll see how things go, but I expect some breakthrough regarding hybrid emulation between the ARM and FPGA in the comings months or years. Might give us some cores we would have never expected... We'll see meanwhile if some of you didn't follow the minimig experience that over there:
viewtopic.php?f=4&t=2397&start=425
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Mon Aug 02, 2021 12:22 pm
by Caldor
Neocaron wrote: ↑Sun Aug 01, 2021 12:54 am
The minimig hybrid emulation experience shows promesses. So it's not completely unreasonable to have hopes for a Pentium core or even higher... It would be possible by using the arm chip for some emulation tasks while other ones timing and accuracy sensitive run on the FPGA. We'll see how things go, but I expect some breakthrough regarding hybrid emulation between the ARM and FPGA in the comings months or years. Might give us some cores we would have never expected... We'll see meanwhile if some of you didn't follow the minimig experience that over there:
viewtopic.php?f=4&t=2397&start=425
Yeah, I was about to mention this. FPU in the FPGA seems unlikely I think, as it has afaik not really been done before. I think the Amiga Vampire cards have some kind of FPU implementation but afaik its not very good. Neither fast or accurate. At least not fast compared to Pentium FPUs, they set a new standard once they came out.
But the Hybrid emulation being done with Minimig, that could give another performance boost if the same thing was done for AO486. Its the same idea as PiStorm, a project where there was made a Raspberry Pi CPU adapter, and then the Raspberry Pi emulations the Amiga CPU and only the CPU which can then give the Amiga RTG, FPU, MMU and 040 speeds which is one of the faster Amiga CPUs, they normally came with a 68000 or 68020 built into Amigas like the Amiga 500, 600 and 1200. 040 was something like 4 times faster I think, probably more.
At first you might argue, but then its back to being emulation, and yes the CPU is being emulated here, but the nice thing is that since its only the CPU being emulated we should not get the timing issues that we sometimes see with emulation, so it should remain cycle exact. But with a nice boost to CPU speed and also being able to get advanced features like possibly Pentium speeds, FPU and... I do not remember what it was called now. MMX maybe? Something like that, which also gave some improved graphics options.
On the Minimig core its being done using QEMU, but using it to only emulate the CPU which is an option for it. But QEMU is used to emulate several systems, also DOS and Windows. So I would think it should be quite possible to do the same trick for the AO486, if someone with the skills to implement makes it happen.
But so far, its still not running without problems on the Minimig core. It crashes and generally runs unstable for now, but that ought to be possible to work out over time.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Mon Aug 02, 2021 1:16 pm
by redsteakraw
Bas wrote: ↑Fri Jul 30, 2021 5:09 pm
Don't hold your breath too long.. an FPU will eat a lot of FPGA space for marginal returns in the area of gaming. I would love on to run old UNIX-like OS'es but that's really niche.
Well maybe a specialized fork where you strip down extra features to fit it like the 2 player gameboy or GBA cores could make this feasible.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Mon Aug 02, 2021 11:37 pm
by rhester72
There's almost no chance at all that single-core ARM performance is going to best FPGA at an effective 90MHz whilst emulating a complex Intel processor. WAY too many translation issues, complete absence of a hard MMU, not a lot of JIT opportunity...to be honest, I didn't actually see the Minimig offloading as a success either. I know a lot of people had their fingers crossed, but the real-world result was rather meh.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Wed Aug 04, 2021 3:05 am
by throAU
bbond007 wrote: ↑Fri Jul 30, 2021 7:24 pm
MPEG is probably not a realistic codec for ao486... FPU or not
You would need to emulate a video board such as S3 Vision868...
The video board (ET4000/W32) does not support YUV-->RGB conversion necessary for decoding MPEG on a slow machine.
If you converted the Weezer video to Cinepac then it would play well on a486 for sure. I reencoded the Edie Brickell "Good Times" video (from the WIN95 the "Fun Stuff" folder) to 576x360 and it ran OK.
Obviously I can't put that on YouTube, so here is Big Buck Bunny: -->
https://www.youtube.com/watch?v=ZLNP7y1BjwU
Video Info:
Resolution : 320x200
Codec : Cinepak
FPS : 12
Color : 24BIT
Audio Rate : 22050
Yup. back in the day various video cards had "mpeg acceleration" as a feature. There were even dedicated MPEG accelerators. Pretty sure multimedia kits (CDROM + controller) also often had acceleration on them (either that or used a different codec).
Playing full motion mpeg video on a 486
without additional hardware didn't really work even back in the day, and Windows 95 really wasn't friendly to real 486 hardware back in the day in general. Win95 really needed a Pentium to run decently.
I say this as someone who had a 486DX back in the day when windows 95 came out
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Wed Aug 04, 2021 4:04 pm
by sardine
full screen MPEGs was playable on a 486
4 of us used to get together to play doom / duke3d / wc2 in our wifes kitchen over 10baseT networks
there was P90 ( me ) , DX2-66 with s3 , DX4 with cirrus logic, and P133 dunno the card
on the P90 ( me ) I could not play full screen MPG1 due to the built in trident pci vga ( really sucked ) didn't support overlay.
However.. both the dx2-66 and dx4 could play full screen mpg no issues or stutter. ( the cirrus logic was brilliant at this )
I know this for a fact because we all ripped a video CD of queen music video's the mpg01.dat files all around 50mb each and I was the only one who couldn't play them with my P90 at a smooth frame rate.
Re: W95 Weezer - a realistic goalpost for ao486?
Posted: Thu Aug 05, 2021 9:04 am
by Caldor
rhester72 wrote: ↑Mon Aug 02, 2021 11:37 pm
There's almost no chance at all that single-core ARM performance is going to best FPGA at an effective 90MHz whilst emulating a complex Intel processor. WAY too many translation issues, complete absence of a hard MMU, not a lot of JIT opportunity...to be honest, I didn't actually see the Minimig offloading as a success either. I know a lot of people had their fingers crossed, but the real-world result was rather meh.
Its more like a 33Mhz 486 though when looking at most the benchmarks and the performance you get from games.
So yes, it can definitely be improved by a lot with the ARM as it is now. It just says its 90mhz and it can even be set to 100mhz, but that is a bit unstable. Some benchmarks are better than a 33mhz 486 but its not consistent and overall, so when it comes to running games it is not a 90mhz 486. If it was it ought to f.ex. be able to run Diablo and Starcraft in Windows 95 without framedrops pretty much.
And it should be able to run Duke 3D at 640x480 without dropping below 10fps. As it is now it can run pretty well at 320x240, because that is what to be expected of a 33mhz 486.