How Lotus 1-2-3 Improved DOS Gaming [Byte Size] | Nostalgia Nerd
ฝัง
- เผยแพร่เมื่อ 26 ส.ค. 2024
- Strange as it may seem, Lotus 1-2-3 was actually partly responsible for a big DOS shakeup. That shakeup involved expanding the memory we had available, and thereby allowing for a raft of further software which could take advantage of it. This video charts the story of Lotus 123, and how a revision called on an urgent need to exceed the DOS conventional memory limits and introduce a method of paging memory from an additional card, known as an Above Card, holding EMS, Expanded or LIM Memory.
☟Share☟
Please consider sharing this video on forums, websites, social media, etc,. It helps tremendously.
☟Subcribe☟
www.youtube.co...
✊Support Me! ✊
Please consider supporting me through Patreon: www.patreon.co...
Visit my eBay Shop: ebay.to/1QQpYyy
Buy From Amazon (through my affiliate account): amzn.to/1OzCQWR
★Nerd Social★
Twitter: / nostalnerd
Face: / nostalnerd
Instagram: / nostalgianerd
Web: www.nostalgiane...
★Equipment★
Lumix G6 with Vario 14-42mm Lens
Nikon D3200 with 40mm Macro
Corel Video Studio Ultimate X7
Corel Paint Shop Pro X6
Blue Snowball Microphone
♜Resources♜
BG Music by Snowkitten, available at; snowkitten.ban...
Images courtesy of Wikipedia/Wikimedia.
It should also be noted that Lotus 1-2-3 was one of the reasons the Turbo button was put on computers. Since the copy protection relied on bad sectors reading at a specific rate, faster CPUs would typically give a false positive on the copy protection. So, you'd boot up your Lotus 1-2-3, then once past the copy screen, hit the turbo button to enjoy the added speed.
I never had issues running Lotus at full speed, but I didn't start using it till 1987, so perhaps I missed.
Many games wouldn't work correctly on faster computers, as some games were programmed to go as fast as possible. When the clock speed would scale, the game's speed would also scale. Using the turbo button to "deturbo" a PC would correct these games that were originally programmed for slower computers.
If you want an example of a game that did this differently, look at the original Wing Commander for DOS. The game has the ability to decrease or increase game speed because of the difference in PC clock speeds.
etansivad Almost correct, the turbo button engaged made it slower. The exact opposite than expected.
"Turbo" of course was a very fashionable word in those days, turbochargers being the hottest technology trend in consumer cars. So the word was used for lots of things that weren't driven by, or indeed had nothing to do with, turbines. :)
Turbo made the PC 'slower': th-cam.com/video/p2q02Bxtqds/w-d-xo.html
I can remember tweaking tweaking autoexec.bat and config.sys to get as much memory as I could for games
I had piles of disk that I would use to boot various games. Some would use EMS at the start, others not so much. When Windows 95 came along and allowed me to configure shortcuts that would reboot the computer with custom config.sys and autoexec.bat's... it helped much. I did have one game that I'd have to pull back and play with DOS 6.22 and a regular boot disk, but the rest I could use via Windows 95 and shotcuts.
Me too. I had also different Bootdiscs. I felt like a hacker, editing autoexec.bat.
@@TheSykoRC I created a menu in config sys for all my games.
I remember being a kid and being fascinated that the PCjr had a Lotus 123 cartridge. It's such a strange journey.
In 1980 (when I was 20 years old), while heading up at Data Processing department at a tech company in Atlanta, we were using TRS-80 Models I and III with 48K of RAM. We encountered a problem by which certain text documents reached that 48K limit pretty fast. Using the native BASIC language with Z-80 assembly language subroutines, I wrote what might be the first ever virtual memory text editor for the TRS-80, called VM-edit; and it was limited only by the amount of disk space. Problem solved. When expanded memory came along years later, I wondered why they didn't just go to virtual memory instead of page-swapping. Even hard drives of that day would have been plenty performant for something like Lotus, word processing or even the games of the day.
The speed would be atrocious. Maybe for office type of applications it's still somewhat acceptable, but for games, it's a big no. Then you should also consider the cost of making the software to do it (your company should compensated you, like, a lot 😂) against the continuous drop on memory prices. There was story of memory compression software which at the time also touted to enlarge your memory capacity, but the price of the software was equal if not higher that the price of add-on memory board (and the persistent problem of performance drop as other approached have).
Of course all will be different if all of those "tweaks" are implemented in the operating system, which what we have today. It's so transparent that users won't feel a difference in their pocket, and also today's secondary memory speed is tolerable except for the most memory hungry applications.
Ah yes. Expanded vs extended. Thank goodness I don't need to explain that to anybody anymore.
Another interesting app that shook things up a bit was Hypercard, but in a different way. Myst was built using Hypercard, but it was pretty large and required a CD-ROM, which moved a lot of people to buy the drives or computers that had the drives.
Fighting the dos memory to play games... That brings me back. God I'm old
I'm older!
It's fine, both of you, just compare yourselves to someone older - if this ever stops being possible then congratulation (just the one): you've beaten life.
I'm dead!
No man, everyone else is just young. Perspective!
I always wondered why Lotus (the car people) would want to make boring office software and not racing games. (I was about 7 at the time!)
I only know little bit of the Lotus car and some reason I seem to like it a lot. I am definitely no Ferrari crap fan or that other crap. I only like Fords. But Lotus and some times porche 911. Camaro, corvette ya but each model is just the same.
There actually is a car game for DOS called Lotus.
I remember thinking the same thing as a kid when I saw my mum's friend had a "MacClaren" pushchair lol.
After EMM386 came out, someone actually found a way to emulate EMS memory on a *286*, calling it EMM286.
Nitpick:
640KB were not 'architectural limitation' of 8088/8086 CPU, it was 1024KB.
640KB are arbitrary limitation decided by IBM when design their computer.
There exist non-IBM compatible computers in 80s which uses 8088 CPU that have 768KB accessible RAM.
Sirius 1 could handle up to 896K if I remember correctly.
He actually states that the limit was 1 MB, and that 384 KB of that memory was reserved, thus leaving 640 KB for general use.
reserved for usage by devices such as the graphics card memory and bios
there had to be address space reserved for hardware, bios, and system code to reside
the 80286 could address up to 16MB but people need to run MS-DOS real mode programs and the 80286 was not designed with the idea in mind of being able to switch back and forth between its mode that could access all that additional memory vs. the real mode compatible to the 8088/86. OS/2 for the 80286 came out with a hack to do that but it was indeed an immense hack (switch from protected mode back to real mode)
then Intel came out with the 80386 and addressed that problem - so the 80286 rather got eclipsed. It was a very unsatisfactory stepping stone from the 8088/86 to the 80386, where Intel did things right (as far as CISC CPUs go)
EMS and XMS memory and how different games used them was the reason that back in the pre-Windows 95 days we PC gamers had to use boot disks that you would use to make sure you had the most memory(and the right type) for the game you were running.
I used 123 back in the day - had a legal copy :), but I had my brother develop a crack for it using Turbo Debugger :).
I came to PCs with a double clocked 33mhz 486 chip so I missed out on a lot of the "fun". My PC had the last version of DOS and Windows before 95 was released so I still had some interesting times getting DOS games to run. Happy daze. Thanks for explaining something I didn't really understand at the time.
DRM; Punishing legit purchasers of software since the 1980s
**laughs in pirate**
Wow great job explaining that! I've worked in computers since 95 and used to instruct the A+ curriculum at a vocational college. Very well done sir!
"copy protection was common until 1986" ... ummm what?! Definitely that didn't stop in 1986, and not even the commonplace practice. Even long after, key disks and things like intentional bad sectors and weird proprietary disk formats were pretty much the norm. As for copy protection, that continues to this day.
I think he meant *that* kind of copy protection in Lotus 123, tho I wouldn't really know. Back in the early 90's we used Lotus 123 at school and I vaguely remember using 2 floppies on the computer, one to save our data and another one carrying the software we were using. Then those machines were upgraded (because by 1992 standards they were really old) and we started using MS Excel under Windows 3.1 instead.
I had lotus smartsuite on 70-80 floppy disks. Took about 3 hours to install.
YIKES!
Although you are factually correct, many machines only came with 512K base RAM as it was cheaper.
When I was training in IT in the late 80's, one class I attended had 2 Amstrad PCs, we used to argue over who got to use the Amstrad PC1640 with its EGA graphics while the loser had to use the PC1512 with it's lower RAM and CGA! Everyone else in that class had to use Amstrad PCW 8256/8512 machines based on the Z80 CPU of the Speccy.
Incidentally, while I lived in Canada I found an Amstrad PCW 8512 being thrown out in a large items garbage collection day. I grabbed it and found it was in perfect working order, complete with the CP/M & Locoscript disk. Happy days as I had been without a computer for a couple of years at that time! It gave me some nostalgia and allowed me some escape from real world issues. A shame I could not bring it back over to the UK when I returned :(
3:12 is that tiny dancing man Rick Astley? Holy cow
Oh my goodness, what video is this footage taken from? I've seen enough whacky, embarrassing footage from old commercials, instructional videos, or TV shows about computers that I need to start looking them up.
I never knew what a DOS system was until around 1996 when I got my first 486 PC when I was in middle school. Had the latest and greatest Windows 95. And of course "DOS PROMPT" under accessory app to run Duke Nukem 3D...
Before that. Schools had Apple mac 5 or something, or 3 or 4 or 1, or 7 (not 7). Schools tried to teach us how to get to the games and play them. But I remember, the boring Liberian Teacher kept speaking nonsense with very boldish accent "WWW." and ".COM" that sound like Double-Woo, Double-Woo, Double-Woo, DDOOTT, SEATTLE ELEMENTARY, DDOOTT, CCOOMMMMMMMM". "Blah blah blah blah. CCOOMMMMMM". "Blah blah blah blah, WWW.", "Blah blah blah blah, "CCCOOMMMMMMMM". I was like uhhhhh, I am not even going to ask if something is wrong with you, because I don't want to hear that level.
Then. In the Elementary Libaray, There were about 5 Apple computers that kids were allowed to register for use to play games. Out of a class size of about 25-35 students. All I did was read books. Until I followed a friend that was playing some awesome cool apple pinball game. I was like that is so awesome that I am going to register for computer next time. So. Yes I did get my time on the computer. I had no idea of CD-Incased-Cartridges that I was selecting. I pop it in the computer like the other kids. But I didn't know how to open the game. So I just played with some app called Word Press or something, I forgot. I never learned how to open to games my self, I had friends open some games for me but it just got boring after 5 minutes. So I just switched back to Word Press. And well, today, I prefer to use Notepad or PICO to build webpages and even scripted apps more than to play video games.
More of these, please :) They're good for at least 7 years!
I spy with my little eye... Microsoft Space Simulator! I spent hours on that thing, when Kerbal Space Program was just a glint in someone's eye.
I was engrossed by it. Regardless of the horrendous frame rates.
I'm still waiting for the expansion disks, like they did with Flight Simulator at the time. I'm beginning to think they are not coming...
I would love an updated version of Space Simulator. The Apollo era technology is fascinating and hypothetical stuff like the Bussard ramjet was really fun to mess around with.
Were the frame rates inherent to it or merely the product of running it on slow PCs?
... Considering the system requirements... I'm going to say slow PC's...
The PC couldn't meaningfully do proper 3d graphics until the late 486 and early pentium days.
It's just too much for such old, slow processors to handle.
Especially if you don't even have a floating point co-processor to help out with it.
Fun fact: MS Excel still uses the Lotus 123 command “/“ menu.
As a veteran of Falcon 3 and Falcon 4.0 user, I'm in gratitude to Lotus. Thanks!
OMG so true. EMM386.SYS RAM I=E000-F7FF and DOS=HIGH,UMB and load everything else "high" - enjoy.
Intel 808x CPU supports >1MB by design, 1MB is IBM PC limitation. In every memory cycle 808x outputs 4 status bits on the pins which can be used to separate/extend memory segments for code, data and so on.
Guys?
Could you help a little? Engliso is not my native, I just CAN'T recognise what's he saying at 2:14 after "which meant what any spreadshets **************************************************** simply would not run"
I heard it 20 times, and I simply can't recognise. Why they won't run?
I heard it! But just like plenty of TH-cam videos, my mind just simply ignore such ... "...." ... and if I even double quoted or even infinity quoted would be such a waste of time.
voltare2amstereo thanks a lot.
It's a strange querk of second languages. You can't recognise certain phrase or word in this language, no matter how often you hear it; but after someone explains this word or a phrase, you can't understand how you couldn't have recognised it
In all fairness, English is my only language, but Nostalgia Nerd can be hard to understand at times. I find that's just his UK accent.
"Would not run for love or money"
KOTYAR0 files too big for memory
That EMS/XMS craziness.... My 286 had 1MB RAM and came with Windows 3.0. I didn't know it had 1MB RAM, though, as it was configured as EMS, which at that time no one used any more.
For a long time I couldn't upgrade to Windows 3.1 because I (thought I) didn't even have 1MB RAM. After a while I finally bought a new RAM chip (expensive at the time, especially if you had to pay it with your pocket money). While installing it I saw the existing chips.... and realised I had had 1 MB of RAM all along. All I had to do was to change that one entry in config.sys to use it as XMS instead of EMS.
Not that upgrading to Windows 3.1 did me any good. I still didn't have a Windows compiler, so I continued writing DOS programs, anyway.
Thats weird, Id never heard them called "above boards", I always called them riser cards.
They are not the same thing. They are called above boards.
Steven F a Riser card is used when you only have one ISA or PCI slot on your motherboard, it enables you to have 2 or 3 cards. See this example of a one to two card:
images.esellerpro.com/2131/I/831/64/53224700.JPG
Fascinating! Great video!
Very interesting, thanks for the video!
We need something like this to happen again! :)
Thanks for this. Good information.
Very interesting - thanks!
Great video again.
In short: software companies were dicks and forced you to buy a new board to do what you could do the same with an old version of the software, but they don't allow you to downgrade and you're stuck unless you update your system. Much like today.
At least today you have cracks. It's common practice to crack legally bought software. At one time, Ubisoft had to supply a crack by RELOADED because they screwed up and their game wouldn't run at all.
So, is this the precursor to the page files we use on modern PCs today?
I cut my teeth on 1-2-3 -- you had to know your equations back then.
Lim means "glue" in Swedish. #themoreyouknow
Nice video! No mention of XMS memory though?
eXtended Memory System was briefly mentioned.
Pfff, I'd have just bought an Amiga or Atari ST! :-P
yes and helped create the Emm386.exe expanded memory program to allow for more than the traditional 640k limitations, to over megabyte. using a page frame address. But only if the computer had this capability now any pc's with Intel shared uma graphics you lost your ability to create a page frame with contiguous 16kb memory blocks.
I still use this till this day.
That did nothing for moving the bar.
Quarterdeck (QEMM, QRAM did.
Desqview had pre-emptive multi5’tasking in 1985.
X/windows inn 1992.
They also authored the VCPI spec Enabling V86 mode and paging.
LIMM was a hardware hack.
What is the song at the end??? Sounds so familiar.
lol we still have designs done in lotus, we have a specific win XP pc because newer won't run them ^)^
I saw the title and thought to myself "probably by making people buy more RAM."
DOS ain't done till Lotus won't run. I remember those days.
You would think we would be on Lotus 10-20-30 by now but instead it's called Microsoft Office I wonder why?
is that why dos 6.0 says checking hinem extended memory?? before windows 3.1
David Sucesso Himem.sys refers to a device driver to allow the DOS to coexist with programs that use *extended* memory. Extended memory only exists on 80286 processors and above, and is the *only* type of memory that exists in today's computers.
The folks at Intel said 8088 as “eighty eighty-eight.”
Similarly, the 8086 was called “eighty eighty-six.”
And, of course, the 80386 was called the “eighty-three eighty-six,” which was usually shortened to “three eighty-six.” Later came the “four eighty-six,” and then the . . . Pentium.
Well, Intel stopped using numbers because you can’t trademark numbers, but notice how the word “Pentium” implies the number five as in “five eighty-six” which is what everyone assumed the Pentium would be called.
You can find many articles in computer magazines speculating about Intel’s then upcoming “80586” processor before Intel actually announced the name.
Yeah, at least in Spanish that's the way the CPUs were called. Even old people like myself (man, that hurt, lol) still refer to them like that whenever those old CPUs and PCs come into the conversation. The youngsters don't even know what the hell we're talking about, but they do know the Pentium because Intel still uses that name from time to time, so I guess the re-branding was a win for Intel.
Lotus 1-2-3, I'm sure we had it, I remember the box coming with our first PC, but I don't for the life of me remember what it did.
Surfing On Squarewaves It’s a spreadsheet application. It was just about the only spreadsheet program for the pc back then, until Microsoft came out with Microsoft Works and Excel.
Why did people had to struggle with autoexec and config to give more base memory to DOS games? Wasn't it because the designers of DOS had not designed the OS for the future when there would be more than 640KB RAM in the first place?
Bill Gates famously said 640KB should be enough for anybody back then, so of course DOS was limited to that amount. Only until programs started getting bigger and a graphical OS was imminent, did they create "extensions" for DOS to enable the use of more RAM, otherwise the use of Windows, games and many other software would've been impossible, at least on the IBM PC and its clones.
Can anyone identify the software on the IBM PC's screen at around 1:52? I know it's a picture from Wikipedia, but I've always wondered if that software is something special, commonly used or obscure. Especially since that's the picture on Wikipedia's actual IBM 5150 article.
Here's a bit more information:
www.spiegel.de/fotostrecke/30-jahre-ibm-pc-fotostrecke-107160-9.html
In the 1980s some German banks set up computer training centers for kids. I briefly worked at one by Berliner Bank, but the photo was taken in a Sparkasse school instead. According to the caption it's an IBM 5160 model. The text is too small to read, but I would expect this to be some German educational application and not standard IBM software.
Did you use Lotus 1-2-3 back then Nostalgia Nerd, or did you use/discover it later on?
I used Lotus Ami-pro in the 90s, but I was mainly a Microsoft user in the DOS days.
i miss byte sized
Was it possible to make a copy of the key disk?
Jordan Cobb Legally? No. And in the corporate environment of the time, that was enough. Lotus *did* perform on-site inspections, with lawsuits. If your key disk died, Lotus would replace it -- just send in your existing (defective) disk.
NN: "A fair few DOS games did take advantage of this stepping stone in memory..."
Me: "I hope he mentions Microsoft Space Simulator!"
Two seconds later, MS Space Sim appears on screen.
Me: "YAY!"
I loved/loathed MS SpaceSim. A royal nightmare to configure - it required EMS, and EMS only. Didn't support XMS at all. You had to have a custom boot setup JUST for SpaceSim.
Is this the reason we are not still stuck on a 640 KB limit any more? Or is it simply because we would not be able to run todays software with just 640 KB.
Not really.
Expanded memory was a hack to enable 8088 and 8086 computers to access memory beyond the physical limitations of the CPU. As a result, what you could do with the additional memory was highly limited -- most significantly, you couldn't realistically place code into expanded memory, which dramatically reduced the value.
Furthermore, when you used expanded memory for data storage, the developer had to keep "housekeeping" information in main (original 640k) of memory describing the data (page on which the data resided, address within that page, and what the data was) plus write subroutines to switch pages to ensure that data was accessible when required.
The 80286 (and higher) processors eliminated the need for expanded memory by allowing the processor to directly address larger quantities of memory -- but the addressing scheme used in the 8088 / 8086 could only address 1 MB + 64k of RAM. Thus, code that could take advantage of the additional memory wouldn't be compatible with existing 8088 / 8086 software and vice versa, and that takes us to the video on this channel about "Protected Mode". :)
Windows NT was the first (Microsoft) operating system that ran only in protected mode -- sacrificing compatibility with legacy software in return for eliminating the 640k memory barrier altogether. At the same time, Microsoft continued to maintain downward compatibility with Windows 3.1, 3.1.1, and Windows 95, which ran in protected mode for native software, but with an option to return to "real mode" for compatibility (mostly). Honestly, the differences between Windows 3.1 and Windows NT 3.1 would probably be a good topic for a video on this channel... :)
With Windows XP, Microsoft finally forced everyone to adopt the Windows NT kernel and "real mode" (and the memory constraints associated with it) were finally a thing of the past.
FYI: The same issues that existed with real vs protected mode are with us today -- this is why there are "32-bit" applications vs "64-bit" applications (and drivers, and "thunking layers" to allow the two to coexist). Thankfully, due to more robust operating systems, more robust processors, and a much more compatible memory addressing scheme, this transition is much less painful for consumers than the 20-bit -> 32-bit transition was. This might also be a good topic for a future video, although it really isn't "nostalgia" at that point. :)
once 32bit software and operating systems became the norm the mode the CPU ran in could be changed giving full access to all memory with no restrictions
I've never understood DOS memory. It all seems unnecessarily complicated simply because everything had to be compatible with the 8088.
And... That would be correct, more or less.
It is important to realize that the 8088/8086 "era" (the period of time where that processor was the best available of its lineage) lasted a very long time 10-15 years, although the "PC" only existed for part of that time. During that time an enormous amount of software was written for this architecture and that software became absolutely critical to the functioning of key business processes. Keep in mind that Lotus 123 (or VisiCalc, to be 100% accurate) was the *first* computerized spreadsheet that businesses adopted -- to the degree that it replace anything at all, it replaced dozens of people using *desk* calculators to manually apply formulas to values written in a very large handwritten ledger, recording the results. WordPerfect (WordStar) did the same thing for written documents, replacing typewritters.
Since this was all new there was no precedent for pricing these software packages, so they were priced based on productivity gain, which was enormous. The $350 price given in the video marks a *decrease* in the price -- initially it was more like $500. And that's *per seat*, as site licenses weren't a thing yet, so if you wanted a dozen people to use the software... Well, you needed 12 full price copies. And if you needed to upgrade, that would be *another* full price upgrade, thank you very much (again, the upgrade program described in the video was unusual at the time). Don't forget *classroom* training to n the new features -- these are complex programs, of course, and the users had zero computer experience except with the prior version, so training was essential unless the new version functioned *identically* to the previous version (and, if it did, why were you paying all this money to upgrade?)
And, of course, a computer with 640k of RAM + a 20 MB HD and monochrome monitor would be ~$5000+, so the hardware cost was just as bad. Forget about networking for most businesses -- while it existed in some businesses, it was far to expensive for widespread adoption.
This is the market that Intel was facing when it came time to design it's 80286 processor, which could address 16 MB of memory -- it could:
1) Tell customers that, in addition to purchasing new, very pricey, hardware, they would also need to purchase all new software -- that hasn't been written yet or
2) Their new, very expensive, computer would run all of their existing programs just as it did before, but faster -- and, in the future, they might be able to upgrade their software to make things even better.
Intel chose 2, of course -- but then software vendors faced their own choice. They could:
1) Rewrite their existing programs *from scratch* to take advantage of the additional address *potential* memory that their customers computers *might* be equipped with (if they paid an enormous premium when they purchased their new 286 computer) while still maintaining the old version for the 99.9% of customers who said "Yeah, thanks but no thanks" to the HW upgrade or
2) Add new features to the existing codebase that both users with upgraded HW and unupgraded HW could benefit from.I
Again, everyone opted for option 2.
But that meant that the memory constraint of the 8088 still existed. An upgrade path needed to be found that would be incremental (vs lightbulb = "Replace all of your hardware and software at the same time"), and EMS was the first step in that path. Next up would be HIMEM.SYS, which provided a way to access memory > 1 MB without have to rewrite *DOS* first, followed by Windows (the code rewrite required to move from a character based UI from a character based UI provided an obvious feature to point at, with the change to 16-bit addressing being a bonus), and finally the painful transition to 32-bit addressing that *still* isn't 100% complete (Windows 10 still includes support for 16-bit Windows programs). And, of course, the e have the ongoing 64-bit transition, but this has been fairly smooth so far, as programmers very rarely deal with "raw" memory addresses in OO programming (Java and C#) making the transition easier.
At its root the problem was that the IBM PC was too successful for its own good.
M Reed
What you said is entirely correct, but you didn't mention that the CPUs themselves bore a lot of responsibility for those memory shenaningans. You see, the 8088/8086, and also the 80186, i think, used a segmented memory scheme, where each segment was 64 KBytes in size, and the CPU had some special registers that pointed to a single 64K chunk at a time. This gave you 64K for code (program), another 64K for data, yet another 64 for extended memory, and perhaps one or two more, my memory is a bit hazy on this.
Anyway, the upshoot of this was that if your programs, data, or whatever, occupied more than 64K, the main part of the program had to reload those registers with different values in order to access different parts of the code/data.
It wasn't until the 80286 appeared that this problem was somewhat alleviated though the socalled 'flat memory model' that was available on this CPU, and which allowed direct access to the whole address space in one go. As you can probably imagine, it took a while before all software had been updated to take advantage of this new flat memeory model.
As to *WHY* the first x86 processors had this segmented memory model, I believe it had to do with the fact that at the time, through-hole components were the norm, so if you wanted to make a CPU that could address all the theoretically available memory, it would have been quite large and unwieldy. As surface-mount techonology became more widespread, it also became more feasible to add a full address and data bus to the processors without them being too 'clunky'.
@@BertGrink Minor correction -- "...I believe it had to do with the fact that at the time through-hole components where the norm so if you wanted to make a CPU...it would have been quite large and unwieldy." is slightly incorrect.
It is true that through-hold components (vs surface mount components) were standard at the time, but the 8088 include a full 20 address lines, which is sufficient to address 1 MB of RAM. It is true that many of these pins were multipurpose (the lowest order 8 address lines were also used for the 8-bit data bus, and the highest order 3 bits were also used for status information), but that's neither here nor there. The real reason for using segmented memory is that an 8 bit processor is going to have to do *something* odd for memory addressing -- 8-bits, after all, is only sufficient to addresss 256 bytes of memory. What Intel decided to do is make memory addresses 16 bit long, which meant that the other 4 bits had to be stored somewhere else which turned into the segment register.
Why did they do this? Sad to say... The reason appears to be *compatibility with the 8080 processor*, which only supported 64 k of memory (and therefore only had 16 address lines). Source: retrocomputing.stackexchange.com/questions/6979/why-didnt-the-8086-use-linear-addressing (scroll down a bit to find the long answer that describes this in detail).
So, the 8080 used 16-bit memory addresses, so the 8086 / 8088 had to use segmented memory addresses to maintain compatibility with the 8080, so all other successive Intel processors must boot in real mode so that they, too, have a memory addressing scheme that is compatible with the 8080 processor. That's both amazing and sad at the same time...
@@BertGrink You mistook. Paging and full memory "flat" access were introduced only with 386. 286 has the same 16-bit segment limitation in protected mode. 286 segments, however, could start on random addresses and could be located above 8086 1 MiB boundary.
Isn't that how PAE works?
RAM on an expansion board seems so strange these days. Theoretically you could still do it but performance would be awful as we are used to extremely fast direct connections between the cpu and ram.
NVME SSD via PCI Express is basically nothing more then solid state RAM that keeps its values after you turn off the power for a long period of time.
I may be mistaken about this but with the earlier 8088 and 80286 systems, the ISA bus speed was the same as the CPU clock? It was probably only after this point that the penalty would be so huge - with fast 386 and 486 CPUs the ISA interface remained slower with buffered access. I believe the PCI bus was capable of speeds closer to these CPUs but by this point we started seeing clock doubled & tripled CPUs, then increased bus speeds with Pentium II, along with faster VLB and AGP slots for graphics.
Even back with EMS, it was slower especially considering they had to use a paging scheme to swap chunks in and out of conventional RAM for use. Still, it did allow the computer to manage more real-world data, better than swapping to hard disk or floppies would be!
Can a 386 handle 4Gb of RAM? How 32 bit is it?
Assuming the motherboard and OS could handle that amount of memory its theoretically possible. All current day PC CPU's and OS's and applications up to and including 64 bit still support the 80386 standard with a few odd balls. If interested = en.wikipedia.org/wiki/Intel_80386 read the Architecture section, specifically the first few paragraphs.
@@JQB45 It might not have had the addressing lanes. For instance most 64-bit processors only have wiring for 48-bits, and some even rely on this internally.
It was really irritating that companies insisted on writing games that required EMS emulation, even when the minimum supported system didn't need it to access all of those luscious MBs of extra RAM.
So it became a pricey bastard to get 2.0 to run.
I had think I have my old copy of Lotus 1-2-3 but it seems that the key disc data was transferred to the main discs therefore I was able to use them but I don't use them now as I don't have a 5 1/4" drive on my machine and I don't even have a 3 1/2" disc drive that disappeared also.
I still own a 5.25" drive that has both the 5.25" and 3.5" built into the same unit from a Gateway 2000.
so basically some popular program took up more ram than expected so everyone developed a way to add more ram.
Hoàng Trần Minh Actually, I'm pretty certain that Lotus allowed users to downgrade at no cost If they ran into this problem -- after all, EMS boards weren't available for sale for another 2-3 years. Also, note that the memory constraint was an issue *prior* to the update -- the reason users ran into issues, after all, is because they had an existing spreadsheet that filled up 100% of available memory with the prior version. An OS upgrade would have caused the same issue, as would trying go bad another row to the large spreadsheet.
So realistically, all the upgrade issue did was vividly highlight an issue that already existed, providing Lotus (a *software* company, mind you) the motivation to push hardware companies to write a specification and implement it so that they could continue to improve their product.
Today the boards logic is in the processor and the pages are 4KB big.
B-but lotus is about light weight.
Hey what's up guys it's scarce here
You said "8808," but showed an 8086. Just thought you should know.
Very interesting. Thank you Lotus 1-2-3, then thank you PC games, specifically Doom 1 and Quake, for advancing the PC hardware, especially the GPU, thus thank you very much to John Carmack.
God bless, Proverbs 31
What a piece of garbage. Microsoft doesn't seem so bad now...
Are you saying that our lord and savior Bill Gates is wrong and 640KB of RAM aren't enough? Blasphemy!
vista made memory extremely cheap