#basic programming language
Explore tagged Tumblr posts
frakyeahbattlestargalactica · 2 months ago
Text
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Monty Jaggers McGraw:
I am writing new BASIC programs to demo at my VCF Southwest 2025 exhibit of my 1979 Tektronix 4054A color vector graphics computer.
One of the programs I am writing is a 1978-1979 Battlestar Galactica TV demo. That TV show had $500,000 of Tektronix vector graphics computers and test equipment and many screenshots of their green vector storage CRT displays - some stills - some animated. These computer graphics were generated on both 1975 4051 and 1976 4081 vector graphics computers - predecessors to my 4052 and 4054A computers (see first photo attached).
Miami Herald TV 1978 magazine interview with the Battlestar Galactica set designer indicated extras on the set stationed in front of the 4051 computers were playing games during filming to increase realism and were so absorbed they kept playing after the cut! (article page attached).
The 4051 and second generation 4052 were the same physical size and used the same CRT and same Display board, but the 4052 and 4054 computers replaced the 800KHz Motorola 6800 CPU with a custom four AMD2901 bit-slice CPU to create a 16-bit address and data bus ALU which emulated the 6800 opcodes and added hardware floating point opcodes to speed up these computers 10x over the Motorola 6800, doubled the BASIC ROM space to 64KB and doubled the RAM space to 64KB!
I created these vector bitmap graphics using a "3D CAD" picture I found on the web of the Battlestar Galactica (last attachment).
As far as I know - there was never any 4050 BASIC program to view bitmap pictures on any of the 4050 computers. The 1979 4014 vector graphics terminal had a grayscale bitmap mode in the Extended Graphics option board, but I have only found a couple of bitmap 4014 images on a single Tektronix demo tape cartridge.
My 4050 BASIC program to display bitmaps works on all 4050 series computers - with an optional Tektronix 4050R12 Fast Graphics/Graphics Enhancement ROM Pack. This ROM Pack speeds up displaying vector images (including vector dot images) 10x over using BASIC MOVE and DRAW commands.
The Battlestar Galactica bitmap image in R12 binary format is 332234 bytes - slightly larger than would fit on a DC300 quarter-inch tape cartridge in the internal tape drive of all three 4050 computers, but would have fit on a 3M DC600 tape cartridge with a capacity of 600KB - it would have been very slow to load.
I designed an Arduino board to emulate the Tektronix 4924 GPIB tape drive - with the help of my software developer. My GPIB Flash Drive board contains a MicroSD card with gigabytes of storage and the Flash Drive emulates a GPIB tape changer, storing all the files of a "tape" in a single directory. I have also attached to this post a photo of my GPIB Flash Drive.
I have recovered almost 100 Tektronix 4050 Tapes and posted the ones I think are the most interesting at this time on my github repository for Tektronix 4051/4052/4054 computers: https://github.com/mmcgraw74/Tektronix-4051-4052-4054-Program-Files I included Tektronix published MATH volumes 1, 2, and 3 and Electrical Engineering, but I don't think they have a lot of use today. I have in my collection but not recovered tapes on Project Management, Statistics, and over 100 more tapes from the very active user group, which Tektronix made collections and published abstracts in their newsletter and the newletter customer got the tape for free. Commercial software like CAD programs were likely encrypted to eliminate copying - since Tektronix 4050 BASIC included a SECRET command which would then encrypt the program file as it was recorded to tape and add a SECRET flag in the tape header that would signal to BASIC ROM when that file was accessed to decrypt the program when it was loaded into memory. One big limiter to the size of the program was RAM in the 4051 was limited to 32KB and the 4052 and 4054 were limited to 64KB of RAM, although Tek BASIC did include commands to allow program "chunks" to be overlayed as necessary. Tektronix used those commands in their 4050 System Tape which was shipped with every system and included a tutorial on many of their BASIC commands. The tutorial ran on the original 4051 with 8KB of memory, and if the program detected 16KB of memory it would APPEND larger program files to speed up the tutorial.
Tumblr media
15 notes · View notes
frank-olivier · 10 days ago
Text
The story of BASIC’s development began in 1963, when Kemeny and Kurtz, both mathematics professors at Dartmouth, recognized the need for a programming language that could be used by non-technical students. At the time, most programming languages were complex and required a strong background in mathematics and computer science. Kemeny and Kurtz wanted to create a language that would allow students from all disciplines to use computers, regardless of their technical expertise.
The development of BASIC was a collaborative effort between Kemeny, Kurtz, and a team of students, including Mary Kenneth Keller, John McGeachie, and others. The team worked tirelessly to design a language that was easy to learn and use, with a syntax that was simple and intuitive. They drew inspiration from existing programming languages, such as ALGOL and FORTRAN, but also introduced many innovative features that would become hallmarks of the BASIC language.
One of the key innovations of BASIC was its use of simple, English-like commands. Unlike other programming languages, which required users to learn complex syntax and notation, BASIC used commands such as “PRINT” and “INPUT” that were easy to understand and remember. This made it possible for non-technical users to write programs and interact with the computer, without needing to have a deep understanding of computer science.
BASIC was first implemented on the Dartmouth Time-Sharing System, a pioneering computer system that allowed multiple users to interact with the computer simultaneously. The Time-Sharing System was a major innovation in itself, as it allowed users to share the computer’s resources and work on their own projects independently. With BASIC, users could write programs, run simulations, and analyze data, all from the comfort of their own terminals.
The impact of BASIC was immediate and profound. The language quickly gained popularity, not just at Dartmouth, but also at other universities and institutions around the world. It became the language of choice for many introductory programming courses, and its simplicity and ease of use made it an ideal language for beginners. As the personal computer revolution took hold in the 1970s and 1980s, BASIC became the language of choice for many hobbyists and enthusiasts, who used it to write games, utilities, and other applications.
Today, BASIC remains a popular language, with many variants and implementations available. While it may not be as widely used as it once was, its influence can still be seen in many modern programming languages, including Visual Basic, Python, and JavaScript. The development of BASIC was a major milestone in the history of computer science, as it democratized computing and made it accessible to a wider range of people.
The Birth of BASIC (Dartmouth College, August 2014)
youtube
Friday, April 25, 2025
7 notes · View notes
stormflute · 7 months ago
Text
Tumblr media
In Stars and Time Modern AU
111 notes · View notes
Text
Post #83: Tumblr Opinion Poll by Python-Programming-Language, Question: Which programming resp. script language do you prefer?, 2023.
211 notes · View notes
basic-retro-programming · 11 months ago
Text
Programmieren in Basic: Computergeschichte
Tumblr media
Post #309: Heimcomputermuseum.de, Programmieren in Basic, Ein Streifzug durch die Computergeschichte, 2024.
36 notes · View notes
monaddecepticon · 5 months ago
Text
The keywords for BASIC were the first words I learned in English. My father taught me on his ZX Spectrum. We did a Yahtzee-like game. It was a transformative experience.
Tumblr media
RIP Dr. Thomas Kurtz - inventor of the BASIC programming language that became widely used in the 1970s and 80s for programming minicomputer and home computer systems.
BASIC made computer programming accessible to a wide audience that included students, scientists and businesses due to its easy to understand syntax, immediately runnable code, and widespread availability. My earliest explorations of the software world involved writing BASIC programs, and I'm very grateful for Dr. Kurtz's contributions to the world of computing.
269 notes · View notes
pigeonstab · 3 months ago
Note
Tumblr media
Surprendre! Bird hugs!!
(The owl kicked me out for getting too many things wrong so that one's from google lol I couldn't find how you say "Surprise!" like you're jumping out at somebody so maybe that's not a thing over there)
Anyway hello!! How are you? I hope you're doing okay and your food from last night was good (>^-^|^-^<)
Haha we do have it. 'surprendre' is the infinitive of the verb you just yelled 'the act of surprising!!' though I guess you guys don't have verb infinitives do you? You just say 'to surprise'.
Anyway to yell surprise in french just say 'surprise!' ;] it's a transparent word when it's an interjection. (Which is like 'Oh' 'ah!' or even 'fuck!' but those are in both languages. Would be pretty stale if we didn't have those lol) Now then!
Birs hugs!!!! Yippeeeee!!! I love the gifs you find ^^ I'm alright! Got what I needed to get done today so I can go to work on my art shtuff lol. The croque monsieurs were very very good. I wish I'd taken a picture now. I might just make more now.
Ps. (You do find infinitives in some cases like 'je me suis fait surprendre' but in English you'd translate that 'I was surprised [by something]' that's really weird don't really know the rule for when to use the infinitive. I guess you guys can't make sentences like that, it's understandable that you had issues with it. I'll look it up for you.)
15 notes · View notes
12neonlit-stage · 5 months ago
Text
I go by no pronouns but not as in my name, more so like my pronouns are an undefined variable in shell coding
14 notes · View notes
michaelmyersfutacock · 8 months ago
Text
oh man I really wanna learn J rn
14 notes · View notes
zandyland · 2 months ago
Text
Say, for the sake of argument, you want to make a bad programming language. Why would you do this?
Well, for instance, you might get your hands on a book of scripts to generate ephemera for celestial events, only to find out it was written for Microsoft QuickBasic for Macintosh System 7. You quickly discover that this particular flavor of BASIC has no modern interpreter, and the best you can do is an emulator for System 7 where you have to mount 8 virtual floppy disks into your virtual system.
Tumblr media
You could simply port all the scripts to another BASIC, but at that point you might as well just port them to another langauge entirely, a modern language.
Except QuickBasic had some funky data types. And the scripts assume a 16-bit integer, taking advantage of the foibles of bitfutzery before converting numbers into decimal format. BASIC is very particular -- as many old languages are -- about whitespace.
In addition to all this, BASIC programs are not structured as modern programs. It's structured to be written in ed, one line at a time, typing in a numbered index followed by the command. There are no scopes. There are no lifetimes. It's just a loose collection of lines that are hopefully in a logical order.
So sure, I could port all these programs. But I'm sure to make mistakes.
Wouldn't it just be easier, some basal part of my brain says, to write your own language that some some modern ameneties, that you compile for your own laptop, that kind of acts like BASIC? A language where you just have to translate particular grammar, and not the whole structure of the program?
Of course it's not easier. But I'm already too far in to quit now.
Memory
Who doesn't love manual memory layout?
In QuickBasic, memory is "kind of" manual. The DEFINT and DEFDBL keywords let you magically instantiate types based on their first letter. I don't know how you deallocate things, because all the scripts in this book finish quickly and don't hang around to leak a lot.
In QuickBasic, this looks like
Tumblr media
I guess that the second statement just overrides the first.
There is no stack in a BASIC program, so there will be no stack in my language. Instead you just give names to locations.
Tumblr media
creates a symbol named age and makes it refer to 0x1F. The pointer operator should be obvious, and the walrus means we're defining a symbol (to be replaced like a macro), not doing a value assignment during the execution of the program. Now we can assign a value.
Tumblr media
Atoms infer types. age knows it's an int.
You cannot assign a new type to an atom.
Tumblr media
However, you can cast between types by creating two atoms at the same address, typed differently.
Tumblr media
The language does not convert these, it simply interprets the bits as the type demands.
Larger types
Not all types are a single word. Therefore, you can use the range operator .. to refer to a range of addresses.
Tumblr media
Note that strings are stored with an extra byte for its length, instead of null-terminating it. Assignment of a string that is too long will result in a compilation error.
Next and Auto
There are also two keywords to make the layout of memory easier. The first is :next which will place the span in the next available contiguous location that is large enough to hold the size required. The second is :auto. For all :auto instances, the compiler will collect all these and attempt to place them in an intelligent free location. :auto prefers to align large structs with 64-word blocks, and fills in smaller blocks near other variables that are used in the same code blocks.
String Allocation
Strings come with a macro to help automatically build out the space required:
Tumblr media
This is equivalent to:
Tumblr media
That is, a string with capacity 5, a current size of 0, and zeroes (null char) in all spots. This helps avoid memory reuse attacks. ZBASIC is not a secure language, but this is still good practice.
There is also another macro that is similar to a "string literal".
Tumblr media
Verbose and annoying! Just like BASIC.
Array Allocation
Likewise, arrays have a similar macro:
Tumblr media
Which expands in a similar way as strings, with a capacity word and size word. The difference here is that the type given may change the actual size of the allocation. Giving a type that is larger than a single word will result in a larger array. For instance, f64 takes up two words some systems, so array::empty!(5, f64) will allocate 10 words in that case (5 * 2). Larger structs will likewise take up even more space. Again, all this memory will be zeroed out.
Allocation order
As an overview, this is the order that memory is assigned during compilation:
Manual Locations -> Next -> Auto
Manual locations are disqualified from eligibility for the Next and Auto phases, so a manual location will never accidentally reference any data allocated through :next or :auto.
Here is an example:
Tumblr media
This produces the initial layout:
Tumblr media
Which, after the code is run, results in the memory values:
Tumblr media
Note that types are not preserved at runtime. They are displayed in the table as they are for convenience. When you use commands like "print" that operate differently on different types, they will be replaced with one of several instructions that interpret that memory as the type it was at compile-time.
Truly awful, isn't it?
3 notes · View notes
small-basic-programming · 8 months ago
Text
Programming Languages For Youths And Adults ...
Tumblr media
Programming Languages:
The best ways to learn programming are Snap!, Small Basic, Python, Small Visual Basic, Scratch and TigerJython.
Java
Ruby
C#
PHP
C++
Snap!
Small Basic
Python
Perl
TigerJython
Go
Scratch
C
JavaScript
Visual Basic
Post #234: Programming Languages For Youths And Adults, 2024.
8 notes · View notes
ponyatowski · 1 month ago
Text
so ive been to london for the (kindof) very first time as a conscious human being and man it is like. i can’t articulate all the feelings ive been having but its making me REALLY emo because Wow heres a city that seemingly works!
#🦆#like ive traveled to a fair share of places#all of them europe so. its just. jesus#i get why my father as a sad kid living in a communist country would spend literally months on end there working shit jobs#ive been spoonfed the english language basically since i was a toddler and putting it to use was fun#and how is the architecture not fuckign. cube and graffiti type Penis#im not kidding ive learned more on this 4 day trip abt art than#during 4 years in highschool#WHATEVER im so MAD because the reason it’s allowed to prosper is 99% colonialism and it makes me want to rip my skin off because HOW is this#city so. everything. ive never been to nyc but is this how it feels? like the world is so small and so large at the same time#they can just do everything there. make all kinds of shit possible. create functional public transport#especially re: warsaw its soooo fucking funny but also not like its made me feel even worse for her#or maybe like. even more frustrated#because wow we are like so ass#eye twitching. how can you just fucking not utilize the river that YOU ARE PROGRAMMED TO LIVE IN PROXIMITY OF#and its so fucking ugly guyssssss i know we can jerk off to soviet blocks all we want but its a copeeeee its such a fucking cope#like come on how is it possible for random ass town from the prussian partition number 73638468 to STILL be prettier than the fucking#CAPITAL.#how after all these years this city is still a corpse that people just pile the most vomit inducing urban architecture#upon#we cant have anythingggggggg if you want to ser pre war architecture in warsaw you can maybe admire a beautiful modernist cube with shrapnel#holes the size of your fists#everything else that has been reduced to gravel in ww2 is currently making up a very nice park in a different part of town#and whats even the point of building something else if were just gonna get bombed again but this time crazy TWIST its the russians and#another reset for wwa#i’ll probably delete this in the morning srry just had to indulge in a bit of doomerism on a friday evening
3 notes · View notes
orcelito · 1 month ago
Text
Oh yeah yesterday I went to my C programming professor's office hours to ask about what's being covered in class tomorrow. Since I can't go bc of my PT appointment overlapping with it & I'm apparently the kind of student that cares about attending every single class now.
While I was there, I ended up chatting with him about a few things, including my current standing in the class. He asked what I got on the midterm exam, & I answered it was an 87, and he told me I was one of the top 5 or 6 scores in the Whole Class (this being a like. Maybe 70 or so person class). Top score was a 92 or 93 (idr lol) & the class average was a 72. Apparently there were a few of us in the upper 80s/lower 90s, but most people got 70s or lower. And once he does the curve on the exam, he said I'd probably end up with a 97 or so on the exam. So yay!!!
And then he told me how he's noticed how I come to class every day and am really active with taking notes and answering questions. Bc I also sit up front all the time lmao. Hadn't even realized how much of a damned teacher's pet I've been being, but I've been Trying to be a good student this year. But he said I was the type of student that if I got an 88% or smth in the class, he'd likely bump me up to a 90% so I'd get an A lol. But he also said so long as I keep up with how I have been, I could possibly get a 100% in the class by the end (bc I've been there for all the extra credit questions in class and whatever).
And just. I went there bc I wanted to make sure I didn't miss anything important in class on Wednesday, and I ended up having my ego stroked for Real. Felt good to have my efforts be recognized.
#speculation nation#now if only i could care that much for my web coding class. but oh well im still keeping up even if its a reluctant shamble much of the time#other stuff we talked about was how im graduating this semester & how i plan to stay in indiana to work#bc i have family here & i like the relatively low cost of living. & im not particularly ambitious.#just wanna make enough money to live comfortably. dont need anything fancy beyond that.#& he talked about how that's a good outlook in life. how he's known ppl who went to fuckin silicon valley or whatever#with high paying jobs. but the cost of living is so high that theyre effectively not making much more money than here#he said smth about like. a $70k salary has just as much strength here than a $120k salary there. smth around those#& he praised me on how i seem genuine and hard-working. so he thinks im gonna do just fine in the industry 🥺🥺🥺#i kinda wanted to keep chatting with him but i had to go to bowling class lol. ended up late to it even#bc i checked my phone for the time while chatting and went Oh Fuck bc it wss 1 min after the class started hfkshfks had to rush off then#but yeah makes me feel very nice about that class. i think it rly is my favorite class this semester.#web programming is pretty rewarding and im glad im taking it. but i was basically a complete newbie in html css and javascript#so ive spent quite a lot of time wanting to tear out my fucking HAIR over these labs. b4 it clicks and im like Haha yayy :3#i like C programming bc it's just so much more logical and regimented. it IS the language that got me to give up my engineering degree#since i was thinking about computer engineering. took my first coding class freshman year. and went 'i love this. i want to do CS now'#didnt do that obviously. but im happy where ive ended up. i wouldnt wanna be a programmer lol#and then my quality engineering in IT class. it's certainly engaging. it's the class i constantly have presentations in tho#had Another one this morning. blah! good to keep in practice but i still dont rly enjoy public speaking lmao#probably the most work intensive of my classes. interesting but Blegh#C programming i just keep up with the labs and do the exams and it's wonderful... so logical and comforting...#oh yeah web programming i also have a few presentations. also gotta fucking. code my project pages by next week 😭😭😭#i think it's just the html and css? no javascript yet. thank god. javascript is by far the hardest to learn#but css is so finicky too!!!! ive been struggling with trying to move these fucking input boxes around#i wanna have them on the right!! but they wont go there!!! gotta poke at it more. at least i managed to finish building the form.#still have to finish the lab tho. that was due 2 days ago. lol. also have another one due sunday. AND the project pages. gah!!!#they havent even graded the wireframes yet. i wanted their feedback b4 proceeding to coding >:( oh well#anyways yeah..im keeping busy lol
3 notes · View notes
yume-fanfare · 1 year ago
Text
it's at times like these (5 minutes after solving a problem) that i get the devil speaking in my ear abt studying something related to computer science (i only know basic math and even worse coding)
8 notes · View notes
basic-retro-programming · 3 days ago
Text
My 800 days streak on SoloLearn ...
Tumblr media
Today C is also a retro programming language, but the syntax is quite different to BASIC.
Tumblr media Tumblr media
Learning the basics of C is quite interesting and you can compare the pros and cons with BASIC. C is one of the prehistoric rocks of all programming languages.
Post #347: SoloLearn, 🔥 My 800 days streak 🔥, 2025.
2 notes · View notes
python-programming-language · 5 months ago
Text
5 notes · View notes