The BASIC programming language and how it ended up on the Sega Saturn | MVG

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

[removed]

👍︎︎ 20 👤︎︎ u/[deleted] 📅︎︎ Apr 20 2020 🗫︎ replies
Captions
[Music] if we think about the early days of home computers they were quite versatile there was so much you could do with them you could play games run business or educational software with a modem dial into a bulletin board service you could compose and play music and of course learn how to program on one computers inherently are an open platform but tapping into and hitting the hardware can be complex unless you have a knowledge of the target hardware understand machine code how the memory and devices are accessed it can take some skill fortunately many of the earliest microcomputers for the home came with manuals these men Ewell's would teach you how to program the machine it's a good thing because in many cases as soon as you turn the machine on you would be greeted with a blinking cursor waiting for you to key in instructions later on during the 16-bit era the blinking cursor was replaced with a desktop graphical user interface but almost every microcomputer from that era would come bundled with a language known as beginner all-purpose symbolic instruction code or basic the concept of basic was for ease of use if you wanted to learn how to program the computer basic was your gateway basic opened up computing to students that were in other areas of expertise for example a student could easily write code to solve math problems without inherent knowledge of the language it also used line numbers so you could keep track of the code and what it was doing in effect you were learning about programming without even realizing to illustrate this let's take a look at the classic hello world basic program as you know it looks something like this now let's consider the equivalent piece of code that was written in C so why is this interesting the basic program running is in a simple loop which is an important principle when it comes to writing code the go-to statement makes it obvious to understand you want the program execution to go back to line 10 and print hello world again but if you're not a programmer you may not be familiar with what a loop is basic teaches you this without really understanding the concept it's easy to follow along with the line numbers and one of the most compelling reasons why it's so easy to pick up and learn the first home computer version of basic was written by Microsoft specifically Bill Gates and Paul Allen which was ported to many other systems and there would be around 30 variants of Microsoft basic designed for many different home computers as you can imagine Microsoft basic on just about every home micro of the era would make Microsoft a lot of money in licensing and it really set up the business for things to come although the basic programming language is considered to be portable in quite a few cases that was never really true you see if you wanted to take advantage of the target machines graphics sound or disk i/o they would need to be custom basic commands to do that so you couldn't just for example take a Commodore 64 basic program and run it on a mega basic you would need to port it over basicall so is not a fast language each line of code is interpreted by the machine on the fly this is not particularly fast as compared to a compiled language like C this also meant that the early 8-bit home computer micros say something like the Commodore 64 that only has a one megahertz CPU meant that basic was simply not an option to squeeze as much performance out of the machine required access to the bare metal and coders usually resorted to assembly language or machine code with the next generation of the Amiga Atari ST and IBM PC it meant better and faster Hardware access to more memory faster graphics and more but the same problem existed basic was slow and clunky over on the IBM PC since 1985 Microsoft developed quick basic which was quite popular it was based on the earlier gw-basic but had a dedicated integrated development environment or IDE and it even had a compiler the problem with basic was it wasn't great for making games this would mean that you would need to learn and understand turbo Pascal C or assembly language and have some intimate knowledge of the hardware otherwise game development would be tricky to learn over on the amiga amiga basic by Microsoft came with the operating system he was also very slow because it wasn't very while optimized but sometime in the late 80s game development Studios decided upon themselves to come up with their own solutions notably europress software for a most basic on the amiga or stas basic on the Atari ST an acid software who developed a blitz basic both Amos and blitz were capable enough to run fast code certainly not as fast as optimized assembly but it was good enough for most commercial games such as super skidmarks and more notably worms by team17 in 1995 was an absolute smash hit and a game that is still very much relevant in 2020 worms was developed originally with blitz basic in 1983 Sega released its first and only home computer the SC 3000 the computer was also known as the Sega computer a very typical 8-bit Micro from the era it featured an NA CD 780 which is a clone of the zilog z80 running at 3.5 megahertz a 256 by 220 resolution graphics mode up to 16 colors from a 256 color palette and it also featured six channel audio thanks to the Texas Instruments SN zero seven six five nine six PCM sound chip the SC 3000 also came bundled with Sega basic and later on home basic was an add-on cartridge both Sega and home basic was developed by my tech around the same time Sega released their first home console in Japan Taiwan and New Zealand the sg-1000 the system represented Sega's first but important step into home consoles and sold over 2 million units the sg-1000 is essentially the exact same spec system as the SC 3000 computer and even could be converted to one with a simple keyboard ad on the sg-1000 also ran basic the same Sega and home cartridges from my tech were compatible here as well Nintendo was also experimenting with the basic programming language on the famicom known as family basic it was developed by Hudson and sharp and released in 1984 but as Sega and Nintendo entered the console wars with Steen bit-error it meant closing off their systems and imposing strict licensing guidelines for its third parties suddenly there was no place for consoles to allow consumers to develop on the system this was trench warfare and both companies had a razor-sharp focus to deliver the best games but when you come a Sony came along with the PlayStation 1 it had its roots tied to the British bedroom coding era of the early 80s and in 1997 they released the net euros a a consumer-grade development kit hardware that allowed anyone with the PC the ability to write games on the PlayStation 1 albeit with some limitations this innovation was to kick-start the bedroom coded craze all over again to connect talented developers with the best Hardware around at the time the downside was that the net euros a was somewhat pricey and he needed to jump through hoops in order to get a hold of the hardware it also meant you needed to be familiar with the C programming language so basic was a part and parcel of many of the home computers in the 8-bit and 16-bit era but what about game consoles what about programming code on a game system for just the average person in their home well we know that the net euros a was available for the Sony Playstation but that was still quite an expensive amount of money for a like a homebrew development kit but on the Sega Saturn in Japan there was a piece of software that was released by bits laboratory known as game basic in 1998 a company known as bits laboratory who had previously worked with Sega on mega CD titles such as Prince of Persia rise of the Dragon and lunar eternal blue released game basic on the Sega Saturn available in Japan only it's unknown if game basic was a response to the net euros a but the price of the hardware certainly came in much cheaper at around 120 US dollars the Sega Saturn is also a very complex piece of hardware to develop on development kits required C or assembly language and took skill developers to get the very best out of the hardware game basic allows the user to develop their own game it was also updated and took advantage of the Saturn Hardware in fact compared to the net euros a you almost had full control of the hardware including things like light guns Ram expansions and other peripherals it also had full control over the sound chips the graphics chips the i/o chips you could develop both 2d and 3d games demos and much more all with the basic programming language the packaging is larger than a standard Saturn game case there's a few things going on here first of all you get the disk this of course will boot up the good old blank screen and blinking cursor basic is ready for your commands there's also two manuals that walk through the language and how to write code so you're probably wondering how do you even use basic on the Sega Saturn well the packaging also comes with a serial cable that plugs one end into the Saturn and the other into a PC the second is that comes with game basic is Windows software to communicate the Saturn with the PC this is very similar to the net euros a but the main differences here are that you don't need a special version of hardware to run code on any retail Saturn will work and second as you type in real time your code will show up on the Saturn essentially acting like a remote terminal you don't ever push a compiled binary over the wire because this is basic it's an interpreted language you're coding directly on the hardware remotely using the serial cable and this is a very inexpensive way to write games on the Sega Saturn you're also probably wondering this is basic so it's probably slow and it probably sucks you'd be surprised to learn that game basic runs extremely fast code it's possible to generate stunning 2d and 3d effects with music it truly opens up the hardware to the hobbyist and makes the Saturn so much more accessible like the net euros 8 there was a small but active community with forums sharing code tricks and tips and updates on what they were working on game basic became quite popular in Japan but it did have its limitations first you only had around 1 megabyte of the 2 megabyte of RAM available as this was an interpreted language there was also no way you could make a standalone game you'd always need game basic to run your code on but otherwise you had full access to all fixed and floating point calculations 3d texture mapping texture backgrounds light sources sprites hit detection 32 channel audio with up to 256 songs and sound effects this was an impressive piece of software game basic unfortunately was too niche for it to have any real impact and as it was only available in Japan meant that it was unknown to the rest of the world one of the biggest limitations for game basic was there was no easy way to just have a standalone game that used game basic you would have to use the software and then load the basic program via the software onto it so like the net euros a there wasn't really an easy standalone method to send a game out to a game publisher or a game development house to get recognized it was really more for the hobbyist the the student the the tinkerer that was really into you know basic programming at the time but there is some still very powerful things that were done you had access to pretty much everything on the Sega Saturn all the peripherals all the hardware the sound and audio chips everything was available to you and it was a really cool environment which unfortunately never got recognized outside of Japan and I think it would have been really cool to see something like this released in Europe in North America and opening up the door for Sega Saturn you know programmers and bedroom coders and hackers to really get their head around the hardware and see what some of the cool things that they could have done with the system would have been well guys we're going to leave it here for this video thank you so much for watching if you liked it you know what to do leave me a thumbs up and as always don't forget to Like and subscribe and I'll catch you guys in the next video bye for now [Music] [Music] [Music]
Info
Channel: Modern Vintage Gamer
Views: 247,956
Rating: undefined out of 5
Keywords: sega, saturn, basic, programming, gamedev, language, c++, assembly, mvg, modern vintage gamer, coding, amiga, commodore, blitz basic, amos, microsoft, bill gates, paul allen, sega saturn, famicom, bits laboratory, game
Id: O_QU8eaMymo
Channel Id: undefined
Length: 13min 16sec (796 seconds)
Published: Mon Apr 20 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.