Тёмный

Throttle Blaster: A hardware Turbo knob for slowing down the CPU speed (Part 1) 

Scrap Computing
Подписаться 2,7 тыс.
Просмотров 3,9 тыс.
50% 1

This video is introducing the Throttle Blaster, a simple hardware project based on a Raspberry Pi Pico that allows you to slow down your vintage PC at a very fine granularity.
We are showing two systems, a Pentium iii and an Athlon XP, both of which can be throttled down to the performance levels slower than the original IBM PC.
Throttle Blaster project page: github.com/scrapcomputing/Thr...
CPUSPD: www.vogons.org/viewtopic.php?...
Necroware's Turbo Button Video: • Turbo in a retro PC - ...
Music:
- Stalker from the Duke Duke Dance Party Album
Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) creativecommons.org/licenses/...

Наука

Опубликовано:

 

24 фев 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 116   
@necro_ware
@necro_ware 4 месяца назад
Nice idea! Thumbs up.
@AladimBR
@AladimBR 4 месяца назад
Super cool! A must for every retro PC owner. Most of my retro system are based on slot 1 and socket 462 systems, handling the speed through CPUSPD, cache off and clocking down bus to 66MHz. Some sound cards are also speed sensitive, and this tool gives a degree of freedom and fine tunning never seem before. I could build a top system for retro and scale down as needed, avoiding having multiple machines. Nice to see you back, including the Duke soundtrack: for me it is a “signature” of your videos. Looking forward to the details. Take care
@user-xi6gm2ss5d
@user-xi6gm2ss5d 4 месяца назад
Wait long enough and everything gets re-invented. We used commercial versions of these in the 1990's for debugging purposes. Back then it was a variable oscillator controlled by a pot that replaced the on board crystal clock source. Nice work bringing this to the Pi.
@MagicManfred
@MagicManfred 5 месяцев назад
Amazing! I was a bit worried because we didn't hear from you longer than usual, but it's a pleasure to see new content from you, and this project is especially impressive! You deserve way more followers. Thank you for the video! Editing this comment to add that this makes retro gaming viable on systems where it wasn't. My socket 462 and 478 systems had ISA slots but a lot of older DOS games simply wouldn't run. Some needed patches, others still wouldn't. With this, we can have games from the early nineties to the mid 2000s running on the same hardware!
@enilenis
@enilenis 4 месяца назад
What an interesting idea I never considered. I have a function generator and can fine-tune waves, but here even a 555 timer would probably do, except for the numeric readout. An Arduino would be better. Pi is an overkill. Still, fascinating. I used to buy custom FSB chips with non-standard frequencies to tune systems, but it wasn't a live process. It still required pin manipulation between reboots. This is a completely different way of throttling the CPU, without taking the rest of the motherboard beyond spec. Truly brilliant.
@scrap_computing
@scrap_computing 4 месяца назад
Yeah a 555 in duty-cycle configuration should be good too.
@ianpolpo
@ianpolpo 4 месяца назад
An Arduino is overkill compared to the $4 Pi Pico, pricewise. This is a brilliant project.
@enilenis
@enilenis 4 месяца назад
​@@ianpolpo In that case ATtiny45 is also an option. They can be sourced for about $2 each in packs of 5.
@rocketman221projects
@rocketman221projects 4 месяца назад
​@@enilenis A CH32V003 can be found for around 20 cents each for a 10 pack. They a good replacement for ATtiny microcontrollers. They are much more powerful and can be programmed and debugged over a 1 wire interface.
@llamallarry
@llamallarry 5 месяцев назад
Impressive ❤ This would be awesome to have in a 5.25 drive bay, with the display and knob. Maybe a task for 3d printing?
@JeppeMller
@JeppeMller 4 месяца назад
My first thought too.
@tekglitch6596
@tekglitch6596 4 месяца назад
This is genuinly amazing. Well done on a great project! Your channel is great for these kinds of things!
@adamwoodworth5758
@adamwoodworth5758 4 месяца назад
Thank you, been collecting older games I can't easily play. Many are clock based so without something like this, it's find exact hardware...and that's getting hard to do.
@markgomersbach9265
@markgomersbach9265 4 месяца назад
That's one less TSR and a incredible increase in useability, thanks!
@KyoshoLP
@KyoshoLP 4 месяца назад
Wow, this is fantastic. I definitely look forward to building one of these once everything is released. This could solve so many headaches with getting games to run at the proper speeds. ESPECIALLY being able to do it on the fly like that? Insanity.
@darthtripedacus1
@darthtripedacus1 5 месяцев назад
Always a pleasure to see you post.
@SimonDavie
@SimonDavie 5 месяцев назад
This is a brilliant idea, well done. An idea for a future development, though I don't know if it would be possible: Integrate the Pi2040 on to an ISA card which can be addressed / controlled by the host PC. Develop some software which can be told the maximum CPU frequency, and then automatically benchmark at varying PWM values to generate a mapping of PWM values for various MHz steps. Users could then simply set the desired clock speed from the command line. It wouldn't even require a TSR.
@pvc988
@pvc988 5 месяцев назад
I think it is possible to connect pico over LPC (which is basically 33MHz semi-serial ISA) using TPM connector. EDIT: I think that TPM connector was introduced too recently, unfortunately. Wikipedia says 2009. At that time CPUs already had SMD sockets. LPC was there since late 90s/early 2000s but it would require soldering wires to the KBC/SuperIO chip.
@BADC0FFEE
@BADC0FFEE 5 месяцев назад
Very cool, I think I'll make one of these, thanks! Nice to see a new video!
@SonicBoone56
@SonicBoone56 4 месяца назад
A literal game changing concept. Will make me feel less bad for getting an overpowered Pentium 3 system without an ISA slot.
@AladimBR
@AladimBR 4 месяца назад
Super cool! A must have tool. My favorite retro machine is a Slot 1 440BX with a Pentium 3 667MHz. With such device, one can tune it to any retro DOS game. I like it due to the compatibility and flexibility in using not so old infra structure (memory, PS/2 ports, AGP, PCI and ISA, ATX format, etc). Looking forward to the blueprints! And last, the Duke soundtrack is back :)
@skjerk
@skjerk 5 месяцев назад
Awesome project!
@itstheweirdguy
@itstheweirdguy 5 месяцев назад
This is INSANE! Great work!
@tigheklory
@tigheklory 4 месяца назад
You make the coolest toys!
@thicclink
@thicclink 4 месяца назад
This is so simple yet so ingenious!
@Technologov
@Technologov 4 месяца назад
Absolutely amazing project ! I would love to buy iy, or even build a retro PC from modern parts and this slow down knob !
@Vanessaira-Retro
@Vanessaira-Retro 4 месяца назад
Superb work as always!
@scrap_computing
@scrap_computing 4 месяца назад
Thanks!
@spg3331
@spg3331 4 месяца назад
Absolutely brilliant
@laudennn
@laudennn 4 месяца назад
great video! thanks
@stathissim
@stathissim 4 месяца назад
what an awesome project! just like its creator! keep em coming!
@dmnsonic
@dmnsonic 4 месяца назад
Fantastic!!! Using this project, virtually any CPU can be used to play speed sensitive games! Now even Duron and Celerins can be good machines to every game!
@scrap_computing
@scrap_computing 4 месяца назад
Yes, a late 90s / early 2000s system should do the job!
@lexisnep525
@lexisnep525 4 месяца назад
I gotta say this is a super cool project. You certainly have a unique voice, too!
@jefersonfischer
@jefersonfischer 4 месяца назад
fantastic video !!!
@markae0
@markae0 4 месяца назад
TOO COOL!!! Thanks!
@philscomputerlab
@philscomputerlab 4 месяца назад
This is amazing! How does it behave in regard to input devices like keyboard and mouse, with some solutions there are latency and response challenges...
@scrap_computing
@scrap_computing 4 месяца назад
I have done some limited testing on a few DOS games and I didn't notice any issue so far with either the keyboard or the mouse. I will check on windows too where the mouse lag would be more noticeable.
@ruthlessadmin
@ruthlessadmin 4 месяца назад
This is really cool. I'd probably prefer a handful of preset speeds & a button to cycle through, rather than a continuous rotary control. This would make it almost drop-in compatible with existing turbo buttons (not sure if the switch type button would really work right) and allow more precise settings for specific games.
@scrap_computing
@scrap_computing 4 месяца назад
That's a great idea. I think we can have both! I can add a button that cycles through a couple of presets.
@shaneseward7139
@shaneseward7139 4 месяца назад
@@scrap_computing Yes, please!
@gordoncreAtive
@gordoncreAtive 5 месяцев назад
Now attach the Pico to the computers serial port and you can set the speed automatically from a batch file before launching a game :)
@scrap_computing
@scrap_computing 4 месяца назад
Great idea! I think I will implement a simple serial interface, thanks!
@BrassicGamer
@BrassicGamer 5 месяцев назад
Fantastic project! This could be very easy to integrate into the right case, replacing the turbo button with the pot, and the existing display with the generic one.
@ChadDoebelin
@ChadDoebelin 4 месяца назад
oh man, this is sweet!
@Atr3ju
@Atr3ju 23 дня назад
Awesome
@Coluchiy84
@Coluchiy84 4 месяца назад
Офигеннейшая идея и ОЧЕНЬ интересная реализация!
@scrap_computing
@scrap_computing 4 месяца назад
Спасибо!
@janpedersen9120
@janpedersen9120 4 месяца назад
Amazing! x2 :) what a nice idea so well done ... noone ever thought of that? :D retro pcs get new area and can spread wider
@comedyflu
@comedyflu 4 месяца назад
Guys this great news!
@shaunclarke94
@shaunclarke94 4 месяца назад
As a suggestion for the calibration, you could offer a "program" menu/mode with either a rotary encoder or just some push buttons. You can even have presets and a turbo button switch input. Lots of scope for enhancements. 🙃 Edit: After watching part two it seems a lot of people thougnt the exact same, lol. Funny how that works sometimes.
@scrap_computing
@scrap_computing 4 месяца назад
Ha ha yeah!
@MartinPaoloni
@MartinPaoloni 20 дней назад
God, what an amazing project! Thank you for all your efforts and for making it open source right from the get-go! I wonder how new of a CPU this strategy would work on. Socket 754 does not seem to have HOLD/STPCLK or anything similar.
@scrap_computing
@scrap_computing 17 дней назад
Core 2 duo has a STPCLK pin but I think the socket is SMD so it will be tricky to reach the pin. I think the best systems for this would be Socket A Athlons and early Pentium 4s.
@markae0
@markae0 4 месяца назад
5:59 for a thin wire source, the wire inside of turntable arms is the thinnest I know of (goes to the needle-pickup). If you have old/broken turntables - record-players.
@scrap_computing
@scrap_computing 4 месяца назад
Cool, thanks for sharing. The one I used looks like an AWG30.
@rocketman221projects
@rocketman221projects 4 месяца назад
I would suggest getting a roll of 30AWG kynar insulated wire wrapping wire. The insulation is heat resistant and won't shrink back when soldered, but it's still easy to strip off. If you go much thinner, it will be very fragile and hard to work with.
@MrFathead
@MrFathead 4 месяца назад
That is very cool, I wonder what different cpus have the stop clock pin.
@scrap_computing
@scrap_computing 4 месяца назад
I've checked several of them, including a Core2Duo and they all have this STPCLK# pin.
@kyrieeleison1905
@kyrieeleison1905 4 месяца назад
great channel.. very educational for people like me sort of starting out.. one thing id like to learn is why so many old boards just wont POST to a video output.. i have a couple of boards like that and see a lot for sale on ebay, with sellers acting like it is an "easy fix".. in my experience when a board wont POST to video output that board is DEAD and cant be resurected.. wondering if you could do a video on that taking us through the diagnostic steps, first steps etc.. anyway, keep up the great content!
@scrap_computing
@scrap_computing 4 месяца назад
Thanks, glad you enjoy the videos. It's usually only a single component that has gone bad, but the tricky part is how to figure out which one it is. Necroware made an excellent video on how to diagnose and fix vintage motherboards: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-A0OXbKaYMbQ.html
@shaneseward7139
@shaneseward7139 4 месяца назад
Great project! Thanks for sharing! I need this. I would be really interested in testing with a locked CPU. Currently building a BX based DOS to Win98 system and would love the speed of a Tualatin CPU. Cheers!
@scrap_computing
@scrap_computing 4 месяца назад
Yes, that's exactly what I wanted to do too, use an Athlon XP system for everything, including early DOS games.
@cjermo
@cjermo 4 месяца назад
@@scrap_computing I have Pentium M in my head
@YarisTex
@YarisTex 4 месяца назад
This is an amazing project!!! It would be nice if it would be possible to actually control the speed via the dos command line, maybe sending a signal through the serial port or something. Send something through an I/O port that would be easy to code. It would be easy then to automate launching games with batch files for every specific game. When returning to dos a user could set the speed to enjoy maximum performance in DOS. Also, maybe a bit overkill but a simple CPU interposer would make this very easy to use. I don’t mind soldering a wire at all but some people might do. There’s so much potential in this it’s actually insane!!!
@scrap_computing
@scrap_computing 4 месяца назад
Yes, that would be really cool! I think the easiest option is to add a serial interface, then you can just configure the CPU speed with a one-liner in a batch file. The interposer would be a bit tricky because it is not easy to get hold of the sockets or the pins for P3s or Athlons. Perhaps I could add this to the 486 Socket Blaster.
@RetroErik
@RetroErik 3 месяца назад
Wow, nice idea. It deserves many more views. Could this also be done by the ISA bus, and using the Pico - like your ISA Blaster?
@scrap_computing
@scrap_computing 3 месяца назад
Thanks! That would be awesome, but I don't think there is such a signal on the ISA bus.
@damouze
@damouze 5 месяцев назад
Cool! I wonder if this could also be used in combination with a heat sensor to see how high one could clock a given CPU without or with passive cooling.
@scrap_computing
@scrap_computing 4 месяца назад
Great idea, I think it shouldn't be too hard to get it working.
@natr0n
@natr0n 4 месяца назад
nice video amazing what a single wire and a pot will do.
@Jack7277
@Jack7277 5 месяцев назад
nice
@cjermo
@cjermo 4 месяца назад
This is amazing! 👏👏👏 Would there be any chance of displaying stock system speed (say, 450MHz) upon boot, then it triggering over to the percentages when the knob is turned? Also, would there be a way to use the newer RGB 7-segment displays to implement another visual speed indicator?
@scrap_computing
@scrap_computing 4 месяца назад
I am planning to make this configurable by the user. Some people are also asking for fixed presets that you can cycle through with the press of a button. Regarding the RGB 7-segment displays, I am not sure what chip they are using, but my guess is that it shouldn't be too hard to support them too.
@foch3
@foch3 4 месяца назад
This is great. It would be dope if you could push the knob for presets.
@markae0
@markae0 4 месяца назад
fixed resistors with on/off switches is possible
@scrap_computing
@scrap_computing 4 месяца назад
Great idea, I could add a button that cycles through some presets.
@ClintTheriault
@ClintTheriault 5 месяцев назад
This project idea is amazing. Do you think it would be possible to allow for remote control the pico through TTL? That way I could get the DOS PC to select its own speed as part of a batch script, then change back when it's done.
@scrap_computing
@scrap_computing 4 месяца назад
Great idea!. Yes I will implement a simple serial interface.
@ChrisR3tro
@ChrisR3tro 4 месяца назад
I always wondered if such a thing would be possible and now you went ahead and just did it. Nice work! I assume that there's a limit to how fast you can turn STPCLK/HOLD on and off per sec, based on the Pico's capabilities. Any numbers on that?
@scrap_computing
@scrap_computing 4 месяца назад
Hmm not sure. I will experiment with faster frequencies and will let you know.
@jeremygalloway1348
@jeremygalloway1348 4 месяца назад
Is the end result comparable to what the hcf command did back in the day? I know different...but not...?
@gaharmun
@gaharmun 4 месяца назад
Pretty cool idea! And if you remove the diplay you dont even need a microcontroller, a simple 555 timer should do the trick just fine, so it is a $0,50 circuit...
@scrap_computing
@scrap_computing 4 месяца назад
Yes, but then you won't have the cool looking MHz display :D
@porklaser
@porklaser 4 месяца назад
I want to try this. What's the PWM frequency?
@GigAHerZ64
@GigAHerZ64 4 месяца назад
Just had an idea - why not use a PWM electric motor controller for that? They are ready-made pieces for like 1$ a piece.
@scrap_computing
@scrap_computing 4 месяца назад
Yeah, that might work, or similarly a 555 in PWM configuration.
@JendaLinda
@JendaLinda 5 месяцев назад
Hardware manufacturers always had to fix issues with badly coded games, it still applies today.
@pvc988
@pvc988 5 месяцев назад
Too bad modern CPUs have SMD sockets. I also wonder how CPU power consumption changes. Would it be possible to run CPU like P4 with its fan completely stopped?
@scrap_computing
@scrap_computing 4 месяца назад
Yeah, I checked and STPCLK# is available on core2, but it would be tricky to attach a wire to it. I think it should be possible to run a fanless P4. As others suggested we could add a temperature sensor and let it do automatic throttling :)
@gaharmun
@gaharmun 4 месяца назад
This may cause issues with event timers and schedulers in Windows and could therefore result in crashes? maybe... Since i did not build the circuit yet, im not sure though... Have you tried this with Windows Games as well?
@scrap_computing
@scrap_computing 4 месяца назад
I have not tried Windows yet, but my guess is that it won't have any issues. The STPCLK# pin is used by the motherboard to throttle the CPU when it overheats, so stopping the CPU this way is something that Windows should be able to tolerate. But yeah, I will know for sure once I test it.
@rootbeer666
@rootbeer666 4 месяца назад
Probably would benefit from logarithmic control to get finer control around the slower speeds. I'm thinking a circuit that performs this task can even be built with a 555, a similar schematic to PWM motor control applications. Probably just about any PWM implementation will work for this. Pico probably has enough lines to drive LED segments directly.
@scrap_computing
@scrap_computing 4 месяца назад
That's a great idea. Perhaps we could replace the potentiometer with a rotary encoder and support variable precision. Yes, a 555 in PWM configuration should work fine.
@memadmax69
@memadmax69 4 месяца назад
Very nice! What about overclocking lol
@aspinx
@aspinx 5 месяцев назад
Great project! But does it require Pico? Can it be done with simple Atmega/Arduino board sending PWM signal?
@scrap_computing
@scrap_computing 4 месяца назад
Any microcontroller should do.
@aspinx
@aspinx 4 месяца назад
@@scrap_computing Thanks! Can't wait for the next video about it!
@shaunclarke94
@shaunclarke94 4 месяца назад
Probably just a case of working with what he was already famialr with or had laying around.
@zacmitchell_1984
@zacmitchell_1984 Месяц назад
Oh man this is cooler than the turbo button 😎 What about taking a 533mhz up to 766mhz or can only go down?
@scrap_computing
@scrap_computing Месяц назад
It will only slow down the CPU, it won't do any overclocking.
@dabombinablemi6188
@dabombinablemi6188 5 месяцев назад
This would allow me to play Dark Ages on my Celeron 500. Doesn't produce divide errors much like my Pentium II 233 (even on a 60MHz bus - don't know why when my Pentium II/III and Celeron 300/450 and 333 do), but runs the game too fast. Problem for me is that it's the only full game I have which is truly speed sensitive.
@markae0
@markae0 4 месяца назад
At 4:22 your pot/ potentiometer seems a bit unstable near zero. You might need two. One pot for super fine adjustment.
@TheRasteri
@TheRasteri 5 месяцев назад
what a sick idea! maybe you could make it scriptable so it can be set on a per-game basis
@scrap_computing
@scrap_computing 4 месяца назад
Yeah that would be pretty cool!
@turbinegraphics16
@turbinegraphics16 5 месяцев назад
This would be good for flight unlimited. GT racing 97 would be good to test because the AI goes weird at a certain speed.
@alexloktionoff6833
@alexloktionoff6833 5 месяцев назад
Can you play PC digger? That could be cool demo.
@scrap_computing
@scrap_computing 4 месяца назад
I will give it a try, thanks!
@alexloktionoff6833
@alexloktionoff6833 4 месяца назад
Digger is the hardest, because action and sound works properly only on 4.7Mhz PC @@scrap_computing
@novafiddler1712
@novafiddler1712 3 месяца назад
i wish this worked on socket 478
@scrap_computing
@scrap_computing 3 месяца назад
I think it should work on socket 478, it is still a through-hole socket so you can solder the wire at the back.
@novafiddler1712
@novafiddler1712 3 месяца назад
@@scrap_computing you're right. I'm going to try it out soon! This is the coolest thing ive seen in years
@Paul-xs7ks
@Paul-xs7ks 5 месяцев назад
Really interesting concept, I like the idea of the 7 segment display showing a meaningful indication of CPU speed and a hardware control. This would easily allow programs written for XTs or even Wing Commander 1 or 2 to run on much more modern systems such as 486 computers. Who thought too much speed would be a problem ? I am not clear on the comment about pulling down the 486 HOLD pin as the datasheet extract indicates it is active high. I also see the CPU does not have an internal pull down resistor so there must be an external pull down. Would be great to connect to a point where there is lower risk of shorting out an adjacent CPU pin. Great idea and your proof of concept is outstanding, thanks for publishing this.
@scrap_computing
@scrap_computing 4 месяца назад
True, HOLD is active high but STPCLK# is active low. So they need different output circuits, one for each.
@dennisp.2147
@dennisp.2147 4 месяца назад
It's a little bit poetically ironic to use a Raspberry pi that is an order of magnitude faster than the original machine to make it go more slowly...
@scrap_computing
@scrap_computing 4 месяца назад
True, but you could use a simpler circuit, like a 555 instead.
Далее
Can you GAME on Intels First iGPU?
13:01
Просмотров 295 тыс.
How does telephone ringing work?
12:34
Просмотров 78 тыс.
Can the Win98 Machine Handle Minecraft?
1:07:45
Просмотров 3,1 млн
Replacing a CMOS battery with a Super Capacitor?
8:55
Просмотров 3,7 тыс.
So if Hardware RAID is dead... then what?
29:00
Просмотров 142 тыс.
How to Soldering wire in Factory ?
0:10
Просмотров 2,9 млн
Это Xiaomi Su7 Max 🤯 #xiaomi #su7max
1:01
Просмотров 1,9 млн