#vintage program
Explore tagged Tumblr posts
cairt · 2 months ago
Text
Tumblr media
I am working on the art for a VN that my girlfriend is writing and programming for the yuri games jam. The really neat thing though is that I'm drawing in a predecessor to MS paint from the 80s.
There's some features that exist in this that are incredibly unique and I honestly love playing around with textures in PC Paintbrush.
13 notes · View notes
retropopcult · 2 years ago
Photo
Tumblr media
Snoopy button, 1969
15K notes · View notes
catboynutsack · 2 years ago
Text
I found a disc in my basement of a Microsoft program from 1998 that still runs somehow and it's basically a virtual encyclopedia but also there's a "quick quote" feature where there's a fuckton of keywords and you can choose a keyword and it'll show a bunch of related quotes that you can just copy and paste. Like there's one from the OJ Simpson trial and (positive!!!!!) ones about homosexuality and quotes from the IRA and it's just. Wowee this is a long lost treasure trove that I will be deep diving into for the next twelve hours bc I can and will be restructuring some of these quotes for my personal writing projects bc they're bangers
1 note · View note
oldguydoesstuff · 3 months ago
Text
Tumblr media
Computer pioneer Grace Hopper running programs on a Univac I computer in 1952.
Hopper wrote the Univac A-0 compiler that allowed more abstract instructions to be converted into machine-runnable code, widely accepted to be the first computer language compiler ever created.
718 notes · View notes
techav · 1 month ago
Text
On Multitasking
Sharing a Computer with Friends
Tumblr media
The Motorola 68030 was a decently powerful microprocessor for its day. It is a fully 32-bit processor with 16 general-purpose registers, separate instruction & data caches, memory management unit, 18 addressing modes, over 100 instructions, pipelined architecture, and was available rated up to 50MHz. It was used in computers by Apple, Amiga, NeXT, Sun, Atari, and saw further life embedded in devices such as printers, oscilloscopes, and network switches. It was the kind of microprocessor used for desktop publishing, 3D CAD & animation, photo & video editing, etc.
In short, the 68030 is a microprocessor that can do some serious work. That's part of why I like it so much. It's a real workhorse chip but as far as 32-bit microprocessors go, it's dead simple to build with.
But running a single quick & simple BASIC program hardly seems like an adequate exercise for such a capable chip.
There is a prevailing claim that the 68000 architecture was heavily inspired by that of the PDP-11 or VAX minicomputers — powerhouses of the previous generation of computing. These machines ran entire businesses, at times servicing many simultaneous users. Surely the 68030 with similar capabilities but significantly faster instruction throughput than the decade-older machines would be more than capable of handling such a workload.
As I've mentioned before, one of my end goals for my 68030 projects is to run a proper operating system. Something like System V, BSD, or Linux; a true multi-user system befitting of the 68k's architectural heritage. My programming skills are limited, and getting such a complex project running is still outside my reach. But I am learning, and slowly inching myself closer to that goal.
Recently I built an expansion card for my Wrap030 project to add another four serial ports to it. In the context of the old minicomputers, another serial port means another terminal, which means the ability to serve one more user. My new 4-port serial card should give me the ability to add four new user terminals.
If only I had software capable of doing so.
Excluding symmetric multiprocessing and today's multi-core behemoths, supporting multiple user processes on a single computer processor means dividing time between them. The computer will run one user's program for a little while, then stop and run another user's program for a little while. Do this fast enough and neither user might ever notice that the computer is paying attention to someone else — especially since the computer spends much of its time just waiting for user input.
There are a few ways to accomplish this, but the simplest is to just make sure that every user program is written to cooperate with the others and periodically yield to the next user program ("Cooperative Multitasking"). A good time to do this is whenever the program needs to wait for input from the user or wait for a device to be ready to accept output.
Enhanced BASIC (68k EhBASIC), which I have been running on all of my 68k computer builds, was written in such a way that lends itself well to this sort of cooperative multitasking. It runs a tight loop when waiting for input or output, and while running a BASIC program, it stops at the end of each line to see if the user has pressed Ctrl-C to stop the program. This means that EhBASIC never goes too long without needing to check in with slow I/O devices. All that would needed is a simple kernel to set things up and switch to another user's processes whenever each time one of them is waiting for I/O.
So I set about creating such a minimal multi-user kernel. On startup, it initializes hardware, sets up some data tables for keeping track of what each user program is doing, loads BASIC into RAM, then starts running BASIC for that first user. Whenever a user process needs to read data from or write data to its terminal, it asks the kernel to handle that I/O task for it. The kernel will save the state of the user program to the data table it set up in the beginning, then switch to the next user to let it run until it too asks for assistance with an I/O task.
The kernel works through all user processes round-robin until it loops back around to the first user. After restoring the state of the user's process the kernel will service the I/O task that user process had originally requested, and return to let that user process run for a little while again. So all of the other user processes get their chance to run while one is waiting on data, and each process makes sure to allow the others a chance to run for a while when they are in the middle of running their own program.
I was able to throw together a quick proof of concept using the EASy68K simulator. What followed was days of catching all of the tiny mistakes I made, such as saving register A0 to the memory location reserved for register A1, overwriting the value previously saved for A1 and effectively losing both in the process — an error which resulted in BASIC printing only the first three characters of its startup header followed by a long string of null characters.
Tumblr media
Debugging was tricky. I was starting from the bottom. No standard library, no existing structure or frameworks to rely on. The kernel process relied on the very same registers the user programs were using. Any changes to register contents by the kernel would affect the user processes. I ended up adding assembly macros to print short statements and register contents to the kernel console to try to get some insight into what was happening. I was able to track when registers came out of the user context save/restore process different than when they went in to find where I had bugs in that process.
This was a challenging project resulting in nearly a thousand lines of very low-level 68k assembly code, all of which I wrote and rewrote multiple times before figuring everything out. I've written small pieces of assembly code over the years, but none which required such deep dives into the CPU documentation to discern fine details of how the chip operates. I got there eventually though and now I have an 8MHz 68030 homebrew computer with 2MB of RAM that can run four BASIC programs simultaneously.
I'm going to need more terminals.
154 notes · View notes
semioticapocalypse · 4 months ago
Photo
Tumblr media
Jack Weir. A girl holding The Washington Post newspaper about the first Moon landing (Apollo 11). July 21, 1969
I Am Collective Memories   •    Follow me, — says Visual Ratatosk
195 notes · View notes
savage-kult-of-gorthaur · 2 months ago
Text
Tumblr media Tumblr media
BY THE LIGHT & POWER OF THE STARS -- PROPELLING THE SOVIET DREAM TO NEW FRONTIERS.
PIC(S) INFO: Mega spotlight on Soviet Space Program-themed pin-up titled "Starlight," artwork by Russian pin-up artist and/or illustrator, Sveta Shubina, c. 2020.
Resolution at 1116×1445 & 1080x1347.
Sources: www.reddit.com/r/Spacegirls/comments/16gir14 & X.
103 notes · View notes
astronotmovie · 1 year ago
Text
Tumblr media
The view ain’t all that bad. Apollo 9 astronaut David Scott takes it all in in this epic photograph by crewmate Rusty Schweickart, March 1969. The 10-day mission commanded by James McDivitt saw the first crewed flight of the Lunar Module.
257 notes · View notes
gifs-of-puppets · 6 months ago
Text
Tumblr media
The Jack Paar Program (1962-1965)
82 notes · View notes
bonnieura · 4 months ago
Text
this wld kinda bang as a banner
Tumblr media
61 notes · View notes
stinkyfartgirl · 7 months ago
Text
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Dark Horse Tour (1974)
sobs into my hands
126 notes · View notes
ilovemesomevincentprice · 6 months ago
Text
Tumblr media
Vincent Price publicity still for The Bat
85 notes · View notes
libraryofva · 4 months ago
Text
Tumblr media
Recent Acquisition - Ephemera Collection
Javier De Leon's "FIESTA MEXICANA" starring Princess Teo Xochitl, Antonio Machiel, and Charro Valentino. The Mosque, Richmond, Virginia. November 28, 1967.
33 notes · View notes
basic-retro-programming · 9 months ago
Text
BASIC - Safe the date: May 1, 1964 - 2024 ...
Tumblr media
Post #295: BASIC Programming, May 1, 1964 - 2024, The 60th anniversary of BASIC happens this year, Safe the date!, 2024.
59 notes · View notes
stone-cold-groove · 2 months ago
Text
Tumblr media
The Saturn V launch vehicle.
19 notes · View notes
retropopcult · 1 year ago
Text
Tumblr media
Alabama vs Georgia, 1958
77 notes · View notes