nostalgia of 386-level systems?!? - Page 1
Forum section: electronics / general

author: DiTBho
author_rank: Super Contributor
timestamp: March 31, 2022, 10:05:07 am
content: My first computer was a Sharp MZ-80 *wheelbarrow computer* with a LH-0080 Z80 compatible CPU under a heavy plastic shell fuse with a bad keyboard, no floppy drive, but a tape driver in case you want to load a Pascal compiler. Otherwise you might just enjoy GW-BASICyes, GW-BASIC ... the BASIC with lines, no text-editor, only suffering and panic among a thousand thousand "GOTO LINEX" and "GOSUB LINXY"."TRON" was the only debugger for that kind of crazy thing, but - worse still - it was not an option on my *wheelbarrow computer*Having been pureed in the hydraulic press many years ago like a puree the potatoes through the sieve, the Sharp MZ-80 is something I'll definitely never want to type anything into, so the likelihood of buying it again on eBay due to some sort of nostalgia is equal to the likelihood that humans will never understand why some sub-particles can be written without the time variable in their equations(1).Nobody knows what is *nostalgia*, kind of illusionistic sentimental longing based on a wistful affection for the past, typically for a period or place with distorted happy personal associations, or if *time* itself is an illusion, kind of our naive perception of its flow doesn’t correspond to a physical reality onto which we project sequences of past, present and future.Anyway, my perception of time is that my second computer was an i386 personal computers with a better keyboard, two floppy drivers (one for 3.5" one for 5.25"), no colors but a VGA screen, and a OS able to run TurboAssembler, TurboPascal and TurboC with a text editor!From this point of view: we made progress! even if, when I looked at the assembly level ... I found the i386-architecture, x86, or IA-32, depending on context, pretty terrible and too confusing, anyway at least I learned new programming languages.Again my perception of past events, again pureed in the hydraulic press with some sadistic pleasure, because I then switched to a UNIX-RISC-workstation, which I simply love from the ISA up.Really for me, RISC was the turning point for everything, and having grown up with 386-level systems during the early 90s like so many of us, I never experienced an intense longing to experience the those i386 computer systems by building your own 80386DX-based single board computer.And why should I? To run ... what? ... DOS?What is this new hype on Hackaday?!?Does it serve to prove some physical theory?Like positing that reality is just a complex network of events onto which we project sequences of past, present and future (experience with computers), and the whole Universe obeys the laws of quantum mechanics and thermodynamics, out of which time emerges?(1) Rovelli puts forward the idea of ‘physics without time’.

author: Berni
author_rank: Super Contributor
timestamp: March 31, 2022, 10:42:28 am
content: Nostalgia doesn't have to make sense. It's just whatever you have fond memories of (while often forgetting about how bad something actually was back then).There is no denying that the 386 PC was a very successful platform, so a lot of people have used one back in the day. The successors of the same architecture are still absolutely dominating the market today.If you wanted to experience old software and games you can more easily run it emulated inside doxbox, but this doesn't feel as authentic. The mucking about with motherboard jumpers and IRQs to get the hardware to cooperate, the whirring and clunking of a old 300MB hard drive, the buzzing of a painfully slow floppy drive, the disk swaps during installation, the fuzzy scan lines of a CRT etc.. is all part of the experience. This is what gets your brain to recall all the memories of the 'good ol times' as nostalgia.Nostalgia about the GameBoy is a similar thing. Looking back at it the thing was pretty terrible with that crappy low contrast 4 level grayscale LCD that has a pixel response time of a dead horse. It already used dated hardware at the time, then the GameBoy Color reused the dated hardware again. All the competitors had better specs. But the GameBoy was cheep and achieved by far the best market penetration, so a lot of people had one. Hence lots of people are nostalgic about it.Similar for Vinyl. Performance wise it is worse compared too our modern lossless digital music formats and more awkward and expensive too. But it has a tactile physical aspect to it that taping a flac file on a screen does not have.I am personally not into retro computing, retro gaming or vinyl but i can see why some people are.

author: DiTBho
author_rank: Super Contributor
timestamp: March 31, 2022, 11:15:53 am
content: my understanding of time-space is that to move forward you have to leave something behind.I still play with GBA (Game Boy Advance), I mean I sometimes program some cartridges, but only because it offers a simpler ARM chip than today's Cortex. It makes sense for a practical purpose (less pages to study on the datasheet and manual -> better for hobby) rather than nostalgia for your days in college.

author: DiTBho
author_rank: Super Contributor
timestamp: March 31, 2022, 07:19:12 pm
content: "building your own 80386dx isa single board microcomputer",thisis the link to the article on Hackaday

author: TimFox
author_rank: Super Contributor
timestamp: March 31, 2022, 07:22:37 pm
content: Nostalgia isn't what it used to be.

author: Coordonnée_chromatique
author_rank: Frequent Contributor
timestamp: March 31, 2022, 08:14:11 pm
content: The 386SX was too slow for DOOM, but the DX was just powerfull enough for a 320x240 screen resolution.

author: SiliconWizard
author_rank: Super Contributor
timestamp: March 31, 2022, 08:14:52 pm
content: Quote from: TimFox on March 31, 2022, 07:22:37 pm

author: DiTBho
author_rank: Super Contributor
timestamp: March 31, 2022, 09:12:53 pm
content: Quote from: TimFox on March 31, 2022, 07:22:37 pmeven Physics isn't what it used to beMany people assume that they perceive the world as it actually is as if eyes and ears were windows that allow us to access an objective reality, but nowadays we know reality is an illusion and it's why the new physics needs neurosciences; why? well ... perception is not an accurate reflection of an externally existing world, and even the intuitive "Newton's universal clock" is just a matter of how a brain perceives reality.Which brings to new questions ... how does our brain perceive reality? How does the brain create our perception of reality? Why do our brains need time to process reality? And what part of the brain controls perception of reality? What does turn the raw material of sensory data into our projected perceptual reality? And is there any hidden quantum process involved?Too many questions, we still don't know, but with human beings there are parts of the brain that need to elaborate feelings like nostalgia in memory, memory implies entropy, and entropy is rather a good thing, because without entropy there is no time-flow, and without time flow learning is impossible.So nostalgia, in terms of "memory of the past reflecting achieved progress", whatever it is, it's a great thing.

author: DiTBho
author_rank: Super Contributor
timestamp: March 31, 2022, 09:15:13 pm
content: Quote from: Coordonnée_chromatique on March 31, 2022, 08:14:11 pmAMD386DX ruled(Xmas upgrade)

author: jmelson
author_rank: Super Contributor
timestamp: April 01, 2022, 12:48:28 am
content: Several months ago we got a piece of (very expensive) gear from another department. It was an X-ray fluorescence analyzer. The computer it came with was decrepit and I was not able to get it to run reliably, then it refused to show any display at all. After vast amounts of mucking around with trying to build a suitable virtual machine to run it, I dragged in my old deskop from home that had the needed ISA slots, and it booted up with the old hard drive with all the software for the XRF machine. We then ordered a legacy-compatible ISA slot machine, and tried to clone the hard drive. Just couldn't get that to work, so finally built a new DOS 7.1 system and copied all the files over. After some crazy problems with getting ANSI.SYS to work and interpret the graphics commands, it all works!And just in time, too, as the original hard drive went belly up.So, DOS 7.1, EMM386, HIMEM, CONFIG.SYS and AUTOEXEC.BAT -- Oh the (bad) memories!Jon

author: DiTBho
author_rank: Super Contributor
timestamp: April 01, 2022, 09:48:26 am
content: Yup, for me it means 1992-1997I am working on a special form of DosBOX that is able to embed a { .exe, .com } dos executable like if was a true Linux program. But it's not likeWine, no doubt it's simpler, but it also captures all the function calls to display something and readdress the text to the console.The CONIO support is partially working, and buggy, this stuff has been designed to embed DOS compilers, it doesn't work with anything with a GUI.Anyway, it just works, and I don't need anything else from my DOS-era.

author: rstofer
author_rank: Super Contributor
timestamp: April 01, 2022, 05:24:24 pm
content: Remember, the first PC incantation of Unix was 386BSD and many flavors of PC Unix started with this version. Note the '386'...https://en.wikipedia.org/wiki/386BSDIn the days of the command line where no GUI was available, the 386 was adequate. I would go for the 100 MHz 486 but that's just an incremental change. Command line rules!A 386 was adequate for UCSD Pascal and certainly for MS-DOS. These machines were quite fast because there was little overhead.I have a 50 MHz eZ80 board running CP/M 2.0. It rips!It's just that our expectations have changed over the last 30 years. I started programming on punch cards. I'm not sure whether I miss it or not!

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 01, 2022, 06:01:57 pm
content: Designing "vintage" stuff is a hobby as any other. Why would it make no sense to design a 386-based board when many still design 6502-based ones @1 MHz? A 386 is much, much more powerful while still being relatively "easy" to integrate, I guess that's the whole point. Try designing your own small CPU board with even a Pentium, and tell us how far you go.It can be out of nostalgia, but also for the learning factor. You'll learn a whole lot designing and programming your own system like this. That's something that has become basically impossible with more modern tech - with which you'll be basically stuck with using something off-the-shelf, or emulating something on a purely virtual basis. So even for a young EE that would never have even used a 386-based PC, designing such a board would be a good exercise.If you want to get your hands dirty, this kind of CPUs still make sense.Alternatively, you can still see some people designing 68030-based boards. For those who like the 68k better. Manageable as a single-person design, yet can run a whole range of existing software.

author: rstofer
author_rank: Super Contributor
timestamp: April 01, 2022, 06:16:55 pm
content: Some of us are still messing around with Z80 (and CP/M) systems:https://rc2014.co.uk/Don't forget, CP/M had a PL/I compiler. It works well on my 50 MHz eZ80. Microsoft had a nice implementation of Fortran (and assembly) along with a nice linker.There was also a more powerful shell, MicroShell, that added many Unix like features.The easiest chip to use was the 8085. I did several projects with that chip. Palo Alto Tiny Basic was usually used for hardware debugging. If Basic ran, the system was useful.https://en.wikipedia.org/wiki/Tiny_BASICNot only did my generation have the best bands, we had the best toys!

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 01, 2022, 06:31:11 pm
content: I have the CP/M source code, and it was a mix of assembly and PL/M.Just a small utility routine:Code:move: procedure(s,d,n);declare (s,d) address, n byte;declare a based s byte, b based d byte;do while (n := n - 1) <> 255;b = a; s = s + 1; d = d + 1;end;end move;

author: rstofer
author_rank: Super Contributor
timestamp: April 01, 2022, 11:55:23 pm
content: I've got the Fortran source for PL/M. I've written a lot of Fortran but not like that!Gary Kildall was a genius!I have the rest of the CP/M source as well but I always wanted PL/M. Instead I got PL/I which is pretty nice.

author: DiTBho
author_rank: Super Contributor
timestamp: April 02, 2022, 10:45:37 am
content: Quote from: SiliconWizard on April 01, 2022, 06:01:57 pm6502 is of two order of magnitude simpler, and beauty to be programmed in assembly.i386 is complex, its ISA is not elegant, and on the top of this, DOS is full of crappy BIOS function calls.

author: DiTBho
author_rank: Super Contributor
timestamp: April 02, 2022, 11:03:14 am
content: Quote from: rstofer on April 01, 2022, 05:24:24 pmI am with Linux since v1.*, I still have here Caldera, Corel (crazy, but it existed), Suse, Debian, Slackware, ... and other fancy CDs and DVDs.Times when internet worked with phone-coupled modem, you weren't able to "download" anything big (2x600MByte through a 4800bps phone-modem?!?) because it was too expensive, and you went to the newsstand to buy magazines with included CDs of Linux.Those CDs were mostly i386-binaries, sometimes with the sources, usually you had to pay extra money to the young man at the newsstand for the CD-bonus.The first time I compiled the entire Linux kernel and entire GNU user space from scratch was for a hacked MIPS-R3K router to function as a server (kernel 2.2.* gcc v2.*)Since then, I abandoned x86 as much as I could

author: DiTBho
author_rank: Super Contributor
timestamp: April 02, 2022, 11:12:27 am
content: Quote from: rstofer on April 01, 2022, 06:16:55 pmif you have to choose between a ti84(1) and a ti89(2), which one would you choose?(1) z80-based graphing programmable calculator, programmable in basic, C, assembly(2) 68k-based graphing programmable calculator, programmable in basic, C, assembly

author: rstofer
author_rank: Super Contributor
timestamp: April 02, 2022, 03:42:03 pm
content: Quote from: DiTBho on April 02, 2022, 10:45:37 amThat's because MS-DOS is a direct ripoff from CP/M and CP/M wanted to be able to abstract the hardware at the BIOS level. In the early years I wrote a ton of BIOS code for different platforms with different hardware features but I never had to worry about the non-BIOS code and whether it would work.I also did some work with 6502 adding hard drives to Apple IIs. The 6502 was simple but perhaps too simple. I thought it was harder to program than the 8080s but that may be because I didn't have as much experience with the chip and I certainly didn't have as many tools.There are FPGA versions of the 6502 over at Opencores.

author: rstofer
author_rank: Super Contributor
timestamp: April 02, 2022, 04:01:16 pm
content: Quote from: DiTBho on April 02, 2022, 11:12:27 amOver the last few years, I have been paying attention to the calculators recommended in college textbooks and it looks like the TI-84 owns that market. I think it trickles down to the high school level as well. Where calculator examples are given, it seems that they are written for the TI-84.So, I would go with the flow and at least own a TI-84 (which I do) although I own a lot of high end calculators. My favorite for computing is the HP 48GX (the buttons are in the 'right' place) but the screen is too dim for my now aging eyes so I use an HP Primer Graphing Calculator for a lot of my work. I do have HP48GXs on both of my desks.The HP Prime has a lot more features than the 48GX but I wrote an entire celestial navigation program for the 48GX. I liked programming in RPL.I like the lighted display of the HP Prime so even though it is neither a TI-84 nor a TI-89, I still recommend it. But there is every good reason to follow along with the textbooks.There is also the issue of CAS - Computer Algebra System - and whether a calculator with such a feature can be used for standardized exams like the SAT. Some calculators have a button sequence that the proctor can push to disable the feature for the duration of the exam, others are just prohibited. The TI Nspire is in this group, CAS can be disabled, it isn't trivial. The TI-84 does not have CAS, the HP Prime does and it is easy to disable CAS for a defined period of time. The HP48GX does not have CAS.There is the secondary consideration that the SAT and similar standardized exams may be going out the window.

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 02, 2022, 05:14:41 pm
content: Quote from: DiTBho on April 02, 2022, 10:45:37 amThat's your view.It's not that complex, and can do a lot of useful stuff.

author: DiTBho
author_rank: Super Contributor
timestamp: April 02, 2022, 06:41:50 pm
content: 8080 and z80 are simple for me, 80286, 80386 and above are too complex for me.I seriously started programming in assembly with m68k and MIPS-R3K, not with x86, and still today when I have to work with the x86-softcpu incorporated in my dosemu-hack I have to work much harder because there are too many things to care about with x86.

author: DiTBho
author_rank: Super Contributor
timestamp: April 02, 2022, 06:58:33 pm
content: @rstoferI would buy the calculator * only * to program it in assemblyThere is a nice project for TI84: a full OS written in z80 assembly, somehow able to replace the original firmware, but, between z80 and m68k, I would prefer the latter.

author: aneevuser
author_rank: Frequent Contributor
timestamp: April 03, 2022, 01:19:06 pm
content: I suspect that one reason for significant i386 nostalgia is the fact that it was the first Intel device to support paged virtual memory, which I guess lead directly to the development of Linux, and sad, nerdy people subsequently spending hours downloading SLS ...

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 03, 2022, 06:23:45 pm
content: Quote from: DiTBho on April 02, 2022, 06:41:50 pmThen you are basically questioning the point of designing a 386-based board, because you don't like the 386 and don't understand it?My post was just meant to show that it's not purely a matter of "nostalgia", since there are even much older CPUs that people design boards around, and there's certainly an interesting learning factor beyond the nostalgia.The fact the 386 is much more comple than a Z80, yet is still "approachable" enough that you can make your own board around it, makes it all the more interesting for learning purposes.It's probably possibly to do the same thing with a 486, although that's beginning to be a bit hairy.The architecture may not have been the best ever designed, for sure, but this still has had a large impact on the modern history of computing, so there's much to learn with it. Even the bad sides.And, in spite of its quirks, the "protected mode" of the 386 was actually rather interesting, and was never really used to its full potential. Maybe because it was a bit too "inconvenient", and laziness almost always wins.

author: DiTBho
author_rank: Super Contributor
timestamp: April 03, 2022, 07:09:15 pm
content: Quote from: SiliconWizard on April 03, 2022, 06:23:45 pmEven IBM with their OS/2 never really used to its full potentialToo complex even for their engineers.

author: DiTBho
author_rank: Super Contributor
timestamp: April 03, 2022, 07:15:30 pm
content: Quote from: aneevuser on April 03, 2022, 01:19:06 pm"and nerdy people subsequently spending hours downloading SLS ..."That's true, I was there when I read a comment about it in the source of Linux v0.0.2Linus T. was later able to log into a Sparc server, but only later.

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 04, 2022, 10:45:05 pm
content: Quote from: DiTBho on April 03, 2022, 07:09:15 pmComplexity is one thing. Possibly legacy is another. Even OS/2 had to be compatible with a bunch of exisiting stuff, so that may be the main reason.It's a bit like Harvard vs. Von Neumann. Although strict Harvard architectures would have avoided a whole lot of security issues, Von Neumann won because it was much easier to use for general-purpose computing.For instance, the executable bit of the 386 protected mode (which was already in the 286? not sure) was never really put to use until very late, if I'm not mistaken.

author: aneevuser
author_rank: Frequent Contributor
timestamp: April 05, 2022, 09:44:44 am
content: Quote from: aneevuser on April 03, 2022, 01:19:06 pmThis is rather off-topic, but I claimed above the the 386 was the first Intel processor to support paged VM, but a bit of googling (and Wikipedia) seems to suggest that the 286 protected mode could also support paging, and that the 286 even had an on-chip MMU, which I find somewhat surprising.Can anyone confirm this? I believe that I have an ancient 286 data book somewhere, but I can't find it to verify this.

author: Berni
author_rank: Super Contributor
timestamp: April 05, 2022, 04:14:30 pm
content: Legacy is a pretty heavy collection of baggage that x86 had to drag around in order to stay compatible with things.What makes it even worse is when the x86 design didn't let the programmers do what they wanted to do, so they invented dirty hacks to get around some of the limitations, now these dirty hacks also had to be kept working. For example dropping from 386 mode back into 286 mode was not possible because the designers of the chip assumed that once you start a OS that knows how to use 386 mode it will elevate into that mode and stay there. However Windows developers found out that 16bit executables don't always work in 32bit mode, so they needed to switch back to 16bit mode for those. The way this had to be done is reseting the CPU so that it starts up in legacy mode, set it up and then quickly jump back to whatever they ware doing to continue execution. The intel engineers probably screamed in horror when they found out how they did it, but it worked and now became the standard way of getting back into 286 mode.They did try to get rid of the baggage and start fresh with the Intel Itanium architecture, but we all know how well that worked out.

author: Zero999
author_rank: Super Contributor
timestamp: April 05, 2022, 05:15:41 pm
content: Quote from: Coordonnée_chromatique on March 31, 2022, 08:14:11 pmThat's true. It depended on the clock rate. Doom was a little choppy on my parents' old 25MHz SX but it was fine on a 40MHz machine. By the way, I thought Doom ran on 320x200.Does anyone know why IBM didn't bother with even the most basic 2D hardware acceleration and badly crippled the VGA card, so it couldn't make full use of its memory, without hacks?A couple of hardware sprites for the mouse and text cursors, a hardware scrolling layer and blitter wouldn't have cost much. VGA had 256kiB of VRAM, yet the maximum resolution with 16 colours was 640x480, which only used 150kiB and the standard 256 colour mode was only 320x200, using only 62.5kiB. Mode X could go up to 360x480, with one page, or 320x400 with two pages, but it wouldn't have cost any extra to have 640x400 with 256 colours. I appreciate gaming was never the target market, but basic acceleration and high resolutions would have made GUIs much faster and easier to code.

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 05, 2022, 05:25:10 pm
content: Quote from: aneevuser on April 05, 2022, 09:44:44 amYep. The 286 had of course more limited address space (24 bits IIRC) and each defined memory block per descriptor was only up to 64KB, but otherwise the protected mode was already pretty close to that of the 386.So it absolutely supported virtual addressing and had descriptors similar to the 386, with access rights, privilege levels.

author: Berni
author_rank: Super Contributor
timestamp: April 06, 2022, 08:23:28 am
content: I am guessing the IBM PC was a bit too early to the party to have hardware accelerated graphics.Back then most people had monochrome monitors on a command line. The idea of the PC was to build it out of off the shelf components too. The easiest way to add a graphics mode was to just barf the pixels from a dual port RAM out to the screen. To do anything more would require a graphics ASIC (Like the game consoles had) and i am guessing IBM just went "Nah not worth it for something that is a serious machine for doing serious business of finance and spreadsheets and word processing". Then i suppose they just kept up the mentality even as displays became color and high resolution enough for GUIsPCs also typically had pretty powerful CPUs compared to other computers, so i guess the lack of hardware graphics was not as much of a pressing issue when the CPU had enough horsepower to push a fair number of pixels around. But it did get some DMA functionality useful for it later on

author: magic
author_rank: Super Contributor
timestamp: April 06, 2022, 08:48:57 am
content: 286 did not support paging (and Wikipedia is always wrong about everything).286 only supported segmentation. You could define continuous segments of memory and restrict an application to accessing only some of them - that was the protection. You couldn't save a 4KB block from the middle of a segment to disk and mark it as "not present" so that the CPU would fault when the application tries to access it. You couldn't restore that block to a completely different physical address and make the MMU find it there. These are things that the 386 added.Maybe it would be possible to swap out a whole segment at once, but then you would need to use fixed-size segments (like 386 pages) if you want them to be interchangeable in the physical RAM. Problem is, if they are 64KB then small applications are allocated more memory than they need, and if they are smaller then large applications can't allocate continuous blocks of memory larger than segment size. The 64KB segment size limitation of 16 bitters was a PITA in itself already.

author: SiliconWizard
author_rank: Super Contributor
timestamp: April 09, 2022, 05:43:52 pm
content: If you want to know what the 286 was capable of, just read the manual. A safer bet than just relying on random blog articles and posts."80286 AND 80287 PROGRAMMER'S REFERENCE MANUAL"In particular, "CHAPTER 11 ADVANCED TOPICS".