Family BASIC Data Recorder Pack in Cassette Demo
Family BASIC Data Recorder Pack-in Cassette Demo
Nintendo's Family BASIC for the Family Computer, a.k.a. Famicom came with a special cartridge and a keyboard which plugged into the expansion port on the front of the Famicom. The special cartridge has a battery backed RAM chip (either 2KiB or 4KiB) which can retain a program in memory while the cartridge is turned off.
The keyboard has a pair of audio jacks for connecting to a cassette tape recorder to load and save programs. Nintendo sold a Data Recorder but any cassette deck with a mic input and headphone output would work. Connecting the keyboard to a computer's audio inputs and outputs is also quite feasible and more convenient.
The large manual which came with the Family BASIC package included eight Sample Programs for the user to type in. The Data Recorder included a cassette with a prerecorded message and the Background Graphics and Program Code for Sample Program 3 on Side A. The Data Recorder's speaker would play the message (spoken by a Japanese woman) through its speaker and the user would load Sample Program 3's Background Graphics and Program Code from the tape when the woman on the tape instructed the user to do so.
Family BASIC's manuals were written mainly in Japanese, so using the program can be difficult for people who do not speak the language. I have made this video to demonstrate how the Sample Program 3 was supposed to be loaded. Complicating matters is that there are four versions of Family BASIC cartridges, v1.0, v2.0, v2.1A and v3.0, with v3.0 having differences in how it loads programs.
Family BASIC v3.0 (red cartridge) never came with the Family BASIC set, it was always an additional purchase with its own box and manual. It is considerably rarer than the black Family BASIC cartridges (v1.0-v2.1A) but is more capable due to its new commands and containing twice the RAM of the older cartridges. Because individuals are more likely to own the black cartridges and due to the differences in loading between the two, I show the program loading twice, first with v2.1A (which is valid for earlier versions) and second with v3.0.
Sample Program 3 was included in the manual (along with seven other numbered programs) that accompanied the black cartridges and does not require v3.0. The manual also instructs the user how to "draw" the Background Graphics to correspond to their display as shown in the video. The Data Recorder was released only several months after Family BASIC, so before that the user had to type in the Sample Program to see it run. As the graphical tiles are fixed in Character ROM in the Family BASIC cartridges, the user is limited to those tiles when creating a Background Graphics screen or defining Sprites.
In order to load a game properly with Family BASIC, the load typically comes in two parts, the Background Graphics and then the Program Code (the loading order can be reversed). Loading the Background Graphics is different in v3.0 versus v2.1A. In order to load Background Graphics prior to v3.0, you must go into the BG Editor program, load the graphics there, then exit out of the BG Editor program to the Game BASIC menu, then enter the BASIC prompt to load the Program Code. Background Graphics take a lot longer to load than Program Code for Sample Program 3 because Background Graphics are loaded in 256 byte packets and it takes four packets to cover a screen.
If you hold down the T key on the keyboard with v2.0 or v2.1A as you power on the Famicom, you can bypass the silly terminal screens. Otherwise enter a name if you wish and press F1 to go to the Game BASIC menu. v3.0 starts at the BASIC prompt and adds the new command LOADS to load background graphics data directly instead of through the BG Editor program.
You can press F1 on the Keyboard in v2.1A and lower to enter the LOAD command. In v3.0 this function was relocated to F6. F8 in any version enters the RUN command.
I am using a real Famicom and Family BASIC Keyboard to record this video and an EverDrive N8 Pro to simulate the BASIC cartridges. The program is being fed into the the keyboard from my computer using Audacity.