The IBM 5100 can also be used to access mainframe computers by being a terminal. In case you did not know it, there is also a Terminal Program in Windows, except your Internet Connection is just so automatic you never look at it, but it is there, nonetheless, and you can also get up a Terminal Window and do that bit too. Now, there could also be a reason to use Assembly Language on computers also, I do not know, but I do know that I own (for back then - $150) MASM 5.1 version. Now also if you care to know how they program anything that requires time-critical code even in computer games -- they use Assembly Language (or a step up from machine langauge of the processor) and now even you can learn MASM 6.11 (or 6.14) or whatever version they keep trying to use for free since Visual C++ Express Free Edition downloaded can use MASM 8.0 version but Microsoft does not sell it anymore.
In fact with MASM 6 whatever upgrade version - you can program Windows! and especially Math Routines and all that SSE2 intruction set which is faster than the FPU system (floating-point processor inside the main processor which only used MMX instructions and is now considered slow - although the AMD processor has 14 registers instead of Intel Processor like the Pentium 4 and above which only has 6 or so Registers to through data into), but now some scientists are making super-computers by chaining together video cards - that's right - like the Geforce 8800 card (only certain video cards do this) because they even have a *.PDF file out so in C language they can make these chain of video cards act better than any processor for calculating Math and certain things now, since the video cards have even more Registers to through data in. Registers add numbers and all of that in one-fell swoop through a video card because of graphics, but ignoring the graphics to throw up on the screen -- they use it calculate like a small supercomputer now.
First the program and the video cards capable from Nvidia doing this stuff.............
http://developer.nvidia.com/object/cuda.html
Next if you are so inclined -- try MASM or something similiar like TASM - different programs and free downloads, since you even can download it from Microsoft with the older versions of MASM.
http://www.movsd.com/source.htm
http://ghirai.com/hutch/mmi.html
General book online>................
http://webster.cs.ucr.edu/AoA/Windows/index.html
http://www.deinmeister.de/wasmtute.htm
http://www.jorgon.freeserve.co.uk/TestbugHelp/XMMfpins2.htm
http://doc.ddart.net/asm/Microsoft_MASM_Programmers_Guide_v6.1/
Read the page though.....................
http://www.microsoft.com/downloads/details.aspx?FamilyId=7A1C9DA0-0510-44A2-B042-7EF370530C64&displaylang=en
http://www.intel.com/support/processors/sb/cs-001650.htm
http://www.microsoft.com/express/vc/
http://msdn2.microsoft.com/en-us/express/aa718398.aspx
Now, I am almost sure but can not be really sure that the IBM 5100 had similiar features in its day except less -- and all this kind of stuff can also be done up to the current day.
It takes (someone said on one of those websites) 100,000kB to write a Windows program (get a Window up) in C++ or C programming language -- in Assembly Language -- it takes probably around 4096 bytes to make a Window and that still can be done today. Although MASM 6.11 or 6.14 or whatever version it is -- was actually for ms-dos and Windows 2, 3, 3.0, 3.11, it also can be used for Windows 95, Windows 98, and now upgraded by people for even Windows 2K which is the core of Windows XP. Mainly in Visual Studio. NET a version similiar is used for - inline - functions and routines requiring speed like all that Math and Graphics of a 3D engine, you still can use 32-bit MASM version 6.11.
I am sure that similiar things can be done probably with the IBM 5100, but again, everything is different and still it is somewhat similiar.
Different strokes for different folks!
And now I have given myself more to do, and I had enough to learn with DirectX even, but still others have done it in Assembly Language up to DirectDraw which was and is still included after version 7 (and now 9 or 10 version) of Direct X.
It depends how you want to program -- even though not cross-platform unless you use a Compiler for Assembly Language and included the modules for say -- Linex -- or Unix -- or some other Operating System you may use. Just some Modules of Code have to be different depending on platform. It is more work, but then, any game engine or anything else that requires fast processing needs in the end -- Assembly Language.