Announcement

Collapse

Forum etiquette

Our mission ...

This forum is part of our mission to promote the preservation of vintage computers through education and outreach. (In real life we also run events and have a museum.) We encourage you to join us, participate, share your knowledge, and enjoy.

This forum has been around in this format for over 15 years. These rules and guidelines help us maintain a healthy and active community, and we moderate the forum to keep things on track. Please familiarize yourself with these rules and guidelines.


Remain civil and respectful

There are several hundred people who actively participate here. People come from all different backgrounds and will have different ways of seeing things. You will not agree with everything you read here. Back-and-forth discussions are fine but do not cross the line into rude or disrespectful behavior.

Conduct yourself as you would at any other place where people come together in person to discuss their hobby. If you wouldn't say something to somebody in person, then you probably should not be writing it here.

This should be obvious but, just in case: profanity, threats, slurs against any group (sexual, racial, gender, etc.) will not be tolerated.


Stay close to the original topic being discussed
  • If you are starting a new thread choose a reasonable sub-forum to start your thread. (If you choose incorrectly don't worry, we can fix that.)
  • If you are responding to a thread, stay on topic - the original poster was trying to achieve something. You can always start a new thread instead of potentially "hijacking" an existing thread.



Contribute something meaningful

To put things in engineering terms, we value a high signal to noise ratio. Coming here should not be a waste of time.
  • This is not a chat room. If you are taking less than 30 seconds to make a post then you are probably doing something wrong. A post should be on topic, clear, and contribute something meaningful to the discussion. If people read your posts and feel that their time as been wasted, they will stop reading your posts. Worse yet, they will stop visiting and we'll lose their experience and contributions.
  • Do not bump threads.
  • Do not "necro-post" unless you are following up to a specific person on a specific thread. And even then, that person may have moved on. Just start a new thread for your related topic.
  • Use the Private Message system for posts that are targeted at a specific person.


"PM Sent!" messages (or, how to use the Private Message system)

This forum has a private message feature that we want people to use for messages that are not of general interest to other members.

In short, if you are going to reply to a thread and that reply is targeted to a specific individual and not of interest to anybody else (either now or in the future) then send a private message instead.

Here are some obvious examples of when you should not reply to a thread and use the PM system instead:
  • "PM Sent!": Do not tell the rest of us that you sent a PM ... the forum software will tell the other person that they have a PM waiting.
  • "How much is shipping to ....": This is a very specific and directed question that is not of interest to anybody else.


Why do we have this policy? Sending a "PM Sent!" type message basically wastes everybody else's time by making them having to scroll past a post in a thread that looks to be updated, when the update is not meaningful. And the person you are sending the PM to will be notified by the forum software that they have a message waiting for them. Look up at the top near the right edge where it says 'Notifications' ... if you have a PM waiting, it will tell you there.

Copyright and other legal issues

We are here to discuss vintage computing, so discussing software, books, and other intellectual property that is on-topic is fine. We don't want people using these forums to discuss or enable copyright violations or other things that are against the law; whether you agree with the law or not is irrelevant. Do not use our resources for something that is legally or morally questionable.

Our discussions here generally fall under "fair use." Telling people how to pirate a software title is an example of something that is not allowable here.


Reporting problematic posts

If you see spam, a wildly off-topic post, or something abusive or illegal please report the thread by clicking on the "Report Post" icon. (It looks like an exclamation point in a triangle and it is available under every post.) This send a notification to all of the moderators, so somebody will see it and deal with it.

If you are unsure you may consider sending a private message to a moderator instead.


New user moderation

New users are directly moderated so that we can weed spammers out early. This means that for your first 10 posts you will have some delay before they are seen. We understand this can be disruptive to the flow of conversation and we try to keep up with our new user moderation duties to avoid undue inconvenience. Please do not make duplicate posts, extra posts to bump your post count, or ask the moderators to expedite this process; 10 moderated posts will go by quickly.

New users also have a smaller personal message inbox limit and are rate limited when sending PMs to other users.


Other suggestions
  • Use Google, books, or other definitive sources. There is a lot of information out there.
  • Don't make people guess at what you are trying to say; we are not mind readers. Be clear and concise.
  • Spelling and grammar are not rated, but they do make a post easier to read.
See more
See less

I overclocked my IBM 5150...

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • SmellyGeekBoy
    replied
    pc-sprint-pcb-vcfed.jpg

    OK, so I've been a very busy boy since I last posted in this thread.

    I had some PC-SPRINT PCBs manufactured (pictured above) using Retro Canada's KiCAD / gerber files and have been using one in my 5150 for the past week. I have an NEC V20 CPU and an 8087-2 installed, as well as 150ns RAM. I built my PC-SPRINT with a 21.47727MHz crystal giving a CPU clock speed of 7.16MHz. This is the same as the Tandy 1000 EX and HX, for what it's worth.

    I've had zero problems so far and have tested with various games with a CGA and an EGA card. The performance difference is pretty staggering, actually. I've run a whole load of benchmarks and the improvements are in the 50-55% range across the board. I just leave the turbo mode enabled at all times, even when booting - incidentally, cold boot time has been reduced from 1:02 to 43 seconds. The new reset button is handy too.

    But it doesn't end there. As others raised some concerns about DMA I also decided to learn some KiCAD and circuit design and work on my own "PC-SPRINT v2". These arrived from PCBWay today and I have assembled one:

    pc-sprint-v2-assembled-vcfed.jpg

    ..and installed it:

    pc-sprint-v2-installed-vcfed.jpg

    The new version adds some additional logic to incorporate the DMA signals previously identified by Sergey Kiselev:

    pc-sprint-v2-new-dma-logic-vcfed.jpg

    I initially built this with a rather ambitious 24MHz crystal but the PC would freeze instantly with it enabled (even at the DOS prompt) so I have downgraded to a 22.1184MHz crystal (7.37MHz CPU clock) and that has worked perfectly fine in my limited testing so far.

    Note that I haven't hooked up the DMA side of things yet but that's next on the todo list. I think I found the right places on the motherboard based on the Technical Reference but I want to confirm with an oscilloscope before I do anything too hasty, especially as it's all working fine so far anyway.

    I documented the whole project over on GitHub for future generations who may stumble across this and get intrigued like I (and others) did: https://github.com/reesclissold/pc-sprint

    It's very much a work in progress but I've added all the details on the benchmarks I've run so far as well as all of the files for the v2. There are probably a few errors in there as I'm still learning but I felt it made sense to put all my findings in one place.

    Leave a comment:


  • SmellyGeekBoy
    replied
    It seems this thread has picked up a bit of steam so I thought I'd post some more of my thoughts on the PC-SPRINT and see if some of the more technical people here can enlighten me on some of the finer details.

    I also discovered Sergey's mod for the XT: http://www.vcfed.org/forum/showthrea...Sergey%92s-way

    This hooks into the HRQDMA and HRQWAIT signals on the XT motherboard to reduce the clock speed to normal whenever there is DMA activity.

    It doesn't appear that the PC-SPRINT does this however, in fact it seems the 5150 doesn't provide HRQWAIT at all from what I can see (I can't find any reference to it in the technical reference but maybe it went under another name?)

    That said, it looks like we can get HRQDMA from pin 10 of the 8237, so I think it would be relatively simple to add some logic around the turbo switch input to also disable the faster clock when this pin is high without any other major changes to the circuit.

    Does all of this make sense?

    Leave a comment:


  • SmellyGeekBoy
    replied
    Originally posted by chris_nh View Post
    ... but looking at the logic diagram for the 5150, the 8253 Timer clock is driven by PCLK, which is not altered by PC-turbo, right? So the DMA refresh should remain at the standard interval when running PC-turbo, if I've interpreted this correctly.
    That was my understanding as well. The mod just increases the clock speed of the CPU (and co-processor if fitted). Everything else should be unaltered.

    Leave a comment:


  • chris_nh
    replied
    ... but looking at the logic diagram for the 5150, the 8253 Timer clock is driven by PCLK, which is not altered by PC-turbo, right? So the DMA refresh should remain at the standard interval when running PC-turbo, if I've interpreted this correctly.

    Leave a comment:


  • chris_nh
    replied
    One could change the timing of the 8253 Programmable Interval Timer with a little bit of code to gain a few more cycles back

    Leave a comment:


  • modem7
    replied
    Originally posted by rmay635703 View Post
    So in an overclocked state the IBM 5150 would definitely not need to refresh every 72 cycles since more cycles would occur over a duration
    A related diagram is at [here].

    Leave a comment:


  • rmay635703
    replied
    https://www.reenigne.org/blog/how-to...-dram-refresh/

    So in an overclocked state the IBM 5150 would definitely not need to refresh every 72 cycles since more cycles would occur over a duration

    Interesting

    Leave a comment:


  • Chuck(G)
    replied
    If you can't find any, I may have a copy of one in my files. However, the business of the refresh was used by a couple of (unscrupulous) outfits advertising a "speedup" for your PC. You may also find references to the trick on SIMTEL20.

    Leave a comment:


  • SmellyGeekBoy
    replied
    Originally posted by Chuck(G) View Post
    Why would clocking the refresh at a higher rate be beneficial? If you check some 1980s articles on 5150/60 speedup, there was code to reduce the refresh rate. The 5150 is supposed to aim for a 2 msec refresh, when in fact, a much lower rate is perfectly decent. Refresh on the 51x0 occupies about 10% of overhead.
    Fair enough, I'm still learning when it comes to this stuff. It seems that faster is not always better. I'll try to see if I can find some of the articles you mentioned. Yet another data point to add to my research, thanks!

    Leave a comment:


  • Chuck(G)
    replied
    Why would clocking the refresh at a higher rate be beneficial? If you check some 1980s articles on 5150/60 speedup, there was code to reduce the refresh rate. The 5150 is supposed to aim for a 2 msec refresh, when in fact, a much lower rate is perfectly decent. Refresh on the 51x0 occupies about 10% of overhead.

    Leave a comment:


  • SmellyGeekBoy
    replied
    This mod adds a separate timing crystal and 8284A oscillator chip specifically to clock the CPU. It would be possible to overclock the whole system by dropping a faster crystal straight into the motherboard but I hear this causes all sorts of timing issues leading to instability. I'm sure I'm probably preaching to the (more knowledgeable than me!) choir on that anyway.

    I'm not sure of the effect on the 8253, I'll have to look into it a bit more. It would appear from my very rudimentary research that the 8253 is responsible for refreshing the DRAM? In which case I imagine there would be some benefit to clocking that at a higher rate as well - depending on the speed of the RAM of course.

    [Scuttles off to look for 5150 motherboard schematics...]

    Leave a comment:


  • Chuck(G)
    replied
    It had better be just the CPU with all of that--otherwise, an XCO feeding the EFI input (pin 14) and connecting pin 13 to an 8255 unused output would do it.

    Leave a comment:


  • per
    replied
    Just curious, is it just the CPU or the whole system that's overclocked?

    I would imagine the benchmark readings could be affected if the 8253 was increased in speed as well.

    Leave a comment:


  • SmellyGeekBoy
    replied
    Originally posted by Retro Canada View Post
    I got the PC-Sprint schematics and designed a new pc-sprint board. Got the parts from jameco (they still have 8284a) and voila.... but my DRAM's are all 200ns! bummer, So the 22.1Mhz didn't work, I got a all sorts of parity error. So I got the highest oscillator here 17.43 and it worked I will buy other frequencies until I find the limit for my machine...

    Pics
    [ATTACH=CONFIG]42113[/ATTACH]

    [ATTACH=CONFIG]42114[/ATTACH]

    [ATTACH=CONFIG]42115[/ATTACH]

    [ATTACH=CONFIG]42116[/ATTACH]

    here the KiCad files for whomever wants it:

    https://sites.google.com/site/tandyc...edirects=0&d=1
    Hey again. I'm really interested in trying out this upgrade so I sent your gerber files off to PCBWay to get some boards manufactured. Hopefully that's the reason you shared them! I really do appreciate the effort, I don't have the skills to do it myself and I seriously doubt they would've accepted the original ASCII art diagrams! Due to economies of scale I decided to go for 20 (also if I screw any up). I've also ordered enough components to build them.

    Once I've built and got one working in my 5150 I guess I'll be looking to sell the extras but I'd need your blessing to do that as you did the CAD drawings. Not looking to profit - I just think it would be good to make these available to the reto community as I have the parts anyway. I see you haven't been active on here for over a year so maybe you won't see this message but I thought it was worth a try.

    Will keep everyone updated with my progress!

    Leave a comment:


  • SmellyGeekBoy
    replied
    I'd also be interested in one of these. I have no experience in getting PCBs manufactured - if I send the KiCAD files off to a PCB fab service will they know what to do with them? Alternatively is anyone selling these boards? Happy to source the components and solder one up.

    Leave a comment:

Working...
X