Featured

Blog?

About

This computer, which predated Apple & the TRS-80, was instrumental to the beginning of “personal computers” and resulted in the creation of Microsoft. This in turn resulted in Linus Torvalds wanting something better so he created Linux.

Followup email about BLIS/COBOL

I wrote “Everyone’s always surprised when I tell them about an OS written in COBOL”. Bruce Ray responded “Technically, the operating system and COBOL compiler/interpreter were written in Nova assembler, not written in COBOL. It ran programs written in IPI’s COBOL language – okay, okay, a technical quibble?”. So if he’s right Wikipedia should be corrected, they say “BLIS/COBOL is a discontinued operating system that was written in COBOL. It is the only such system to gain reasonably wide acceptance.”

Emailed Nova Site about BLIS/COBOL

I described it as an obsecure OS. But the Guy was well aware of it. And had this interesting reply…

BLIS/COBOL was a popular 3rd-party operating system/language used by
VARS [Value Added Resellers] for end-user applications.  In fact, one of
our clients was using IPI's [Information Processing, Inc.] Nova
Blis/COBOL through the 2010s (using our Nova virtual machine emulator)
on a PC.

RDOS in the browser w/Extended Basic

I only know how to do this because I emailed novasareforever.org and received a reply from Bruce Ray telling me how.


Are You Ready?

Please select the 'Load RDOS' button below to start your Nova experience...
(and then hit <Enter> to load the default RDOS system)
	
Filename? 


NOVA RDOS Rev 7.60
Date (m/d/y) ? 1/1/75
Time (h:m:s) ? 0:0:0

R
list
ABOOT.SV           6144  SD
SYS.SV            62464  SD
QTYSYS.DL          2227  
COM.CM                8  
F5.DR               512  DY
USR1.DR             512  DY
USR2.DR             512  DY
XBASIC.DR           512  DY
DEMO.DR             512  DY
USR3.DR             512  DY
CLI.SV            11264  SD
USR4.DR             512  DY
UTIL.DR             512  DY
LINKALGOL.MC        289  D
LINKBASIC.MC        239  D
QTYSYS.OL         30720  C
FORT.DR             512  DY
UP.MC               178  D
BASIC.ID             44  
RCLI.SV           38400  SD
EBOOT.SV           7168  SD
SYS.DL             1952  
ALGOL.DR            512  DY
BASIC.DR            512  DY
RDOSQTY.PF          685  D
LICENSE.            796  D
MISC.DR             512  DY
CLI.ER             3584  D
LINKUTIL.MC         384  D
SYS.OL            30720  C
RDOS.DR             512  DY
LINKFORT.MC         228  D
QTYSYS.MP         23095  D
CLI.OL            50176  C
HELP.DR             512  DY
QTYSYS.SV         60416  SD
LINKASM.MC          386  D
DOWN.MC             152  D
ABOUT.ME             48  
QTYSYS.PD           890  
SYS.MP            47147  D
BOOTSYS.SV        60416  SD
MACROS.DR           512  DY
R
up

'UP.MC' for unmapped Nova RDOS [ URDOS ] 

CLEARED $LPT.
CLEARED $TTI.
CLEARED $PTP.
CLEARED $PTR.
CLEARED $TTO.
CLEARED $TTP.
CLEARED $TTR.
CLEARED SYS.DR
Done 

R
dir basic
R
dp0:linkbasic

'LINKBASIC.MC' - link Extended BASIC development files 

FILE DOES NOT EXIST:  BASIC.SV
FILE DOES NOT EXIST:  BASIC.OL
FILE DOES NOT EXIST:  BASIC.DR
DEVICE ALREADY IN SYSTEM:  DP0:XBASIC
DEVICE ALREADY IN SYSTEM:  DP0:BASIC
R
basic
        Extended BASIC Revision 05.70  05/15/85
CAUTION: Patches have not been applied!

OPER 01/01/75 00:02 SIGN ON, -1

* 

Adding audio narration to a kdenlive video

With my sinuses much better, I might consider adding voice narration sometimes. This was easier than I thought.

Right click on a Audio Track, for instance A1, below left. Click Insert Track. Choose Audio Record Track. A new track will be added with a red record button. Like A2, below left. When you click the red record button, kdenlive will do a 3 2 1 countdown. And you can begin recording. Remember to turn the mike on. You can press the red record button to start/stop the recording resulting in multiple independent recordings. Or you can press pause under the video for one continuous recording.

You may have to adjust sound settings, especially Sound Output. I need Line Out, as seen below.

Sound Input is set correctly on my system.

Look at Mojo… after confusion on my part

Apparently released on September 7, 2023.

curl -s https://get.modular.com | sh -
bill@bill-MS-7B79:~$ modular --version
modular 0.8.0 (39a426b5)
bill@bill-MS-7B79:~$
bill@bill-MS-7B79:~/MyStuff/Mojo$ python3 -m venv mojo-venv && source mojo-venv/bin/activate
(mojo-venv) bill@bill-MS-7B79:~/MyStuff/Mojo$ modular install mojo
# Found release for https://packages.modular.com/mojo @ 24.3.0
# Downloading archive: packages/24.3.0/mojo-x86_64-unknown-linux-gnu-24.3.0-13-0.tar.zst
Downloaded           [ █████████████████ ] 100% 107MiB/107MiB                 
# Extracting downloaded archives. 
Extracted            [ █████████████████ ] 100% 107MiB/107MiB                 
# Running post-install scripts...
Installed            [ █████████████████ ] 100%                               
???? Mojo installed! ????

Mojo's Python virtual environment created at /home/bill/.modular/pkg/packages.modular.com_mojo/venv

If you are using ZSH (default on macOS), run the following commands:

echo 'export MODULAR_HOME="/home/bill/.modular"' >> ~/.zshrc
echo 'export PATH="/home/bill/.modular/pkg/packages.modular.com_mojo/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

If you are using bash, run the following commands:

BASHRC=$( [ -f "$HOME/.bash_profile" ] && echo "$HOME/.bash_profile" || echo "$HOME/.bashrc" )
echo 'export MODULAR_HOME="/home/bill/.modular"' >> "$BASHRC"
echo 'export PATH="/home/bill/.modular/pkg/packages.modular.com_mojo/bin:$PATH"' >> "$BASHRC"
source "$BASHRC"

Then enter 'mojo' to start the Mojo REPL.

For tool help, enter 'mojo --help'.
For more docs, see https://docs.modular.com/mojo.

(mojo-venv) bill@bill-MS-7B79:~/MyStuff/Mojo$ 

Using the REPL

bill@bill-MS-7B79:~$ mojo --version
mojo 24.3.0 (9882e19d)
bill@bill-MS-7B79:~$
bill@bill-MS-7B79:~$ mojo
Welcome to Mojo! ????

Expressions are delimited by a blank line.
Type `:quit` to exit the REPL and `:mojo help` for further assistance.

  1> print("Hello, world!") 
  2. <Enter>
Hello, world!
  2>  

Test a source program then build an executable

bill@bill-MS-7B79:~/MyStuff/Mojo$ ls -la
total 36
drwxrwxr-x  4 bill bill  4096 May 18 20:54 .
drwxrwxr-x 52 bill bill 12288 May 18 20:24 ..
-rw-rw-r--  1 bill bill    39 May 18 20:25 hello.mojo
drwxrwxr-x  2 bill bill  4096 May 18 20:27 info
drwxrwxr-x  8 bill bill  4096 May 18 20:30 mojo
bill@bill-MS-7B79:~/MyStuff/Mojo$ cat hello.mojo 
fn main():
    print("Hello, world!")

bill@bill-MS-7B79:~/MyStuff/Mojo$ mojo hello.mojo 
Hello, world!
bill@bill-MS-7B79:~/MyStuff/Mojo$ mojo build hello.mojo
bill@bill-MS-7B79:~/MyStuff/Mojo$ ls -la
total 3452
drwxrwxr-x  4 bill bill    4096 May 18 20:55 .
drwxrwxr-x 52 bill bill   12288 May 18 20:24 ..
-rwxrwxr-x  1 bill bill 3486528 May 18 20:55 hello
-rw-rw-r--  1 bill bill      39 May 18 20:25 hello.mojo
drwxrwxr-x  2 bill bill    4096 May 18 20:27 info
drwxrwxr-x  8 bill bill    4096 May 18 20:30 mojo
bill@bill-MS-7B79:~/MyStuff/Mojo$ ./hello 
Hello, world!
bill@bill-MS-7B79:~/MyStuff/Mojo$

Not yet available for MS-Windows!

I’m watching a freecodecamp vid about Mojo. And the guy is talking about the Modular discord channel, which I can’t find for the life of me.

Perhaps it’s too much of a moving target right now. Tutorial from a few months ago, describe using Let to define constants, and now that’s not valid. Now you get… error: ‘let’ is being removed, please use ‘var’ instead. Although you would think version 24.3.0 would be more settled. However version 24… really? How can a language released in 2023 be at version 24? I’ve seen too many weird versions from other products, like this that make no sense.

Python, which has been around for decades… is only at version 3.10

bill@bill-MS-7B79:~$ python --version
Python 3.10.12
bill@bill-MS-7B79:~$

bash reverse search broke

WTH happened to my reverse search (Ctrl-R). No sooner than I write that sentence than it starts working.

Tried to reverse search ping… because I’m lazy.

Returned results were totally nonsense, and it didn’t find it!

Part of my .bash_history
find . -iname “speed
ping google.com
cd “/home/bill/MyStuff/Pascal/” && fpc class01.pp && “/home/bill/MyStuff/Pascal/”class01