I tidied up my QBasic implementation of the MD5 algorithm.
https://codeberg.org/qalle/qbasic-md5/src/branch/main/MD5.BAS

#QBasic

qbasic-md5/MD5.BAS at main

qbasic-md5 - compute an MD5 hash in QBasic

Codeberg.org

Who else writes their own #DOS programs? πŸ™‹

What programming language do you like to use?

I started with #BASIC and #qbasic back in the ’80s and ’90s, but these days it's C. Right now, I like Open Watcom C, Borland's Turbo C, and BCC (Bruce's C Compiler) depending on what I'm doing.

Stumbled across "Whispers in the Moss" today, a JRPG written in QBasic that uses a unique ANSI art style. The author had been working at it sporadically for about 12 years but finally shipped it in April 2024. A really neat find!

https://www.youtube.com/watch?v=ETpK9IJlacA

I also liked this write-up from the author about their experiences trying to publish on Steam / do marketing / sharing sales numbers etc
https://www.reddit.com/r/IndieDev/comments/1rvasgj/i_spent_12_years_making_an_ultraniche_qbasic_jrpg/

#textmode #ansi #qbasic #indiegame

Whispers in the Moss | Retro JRPG with beautiful textmode aesthetics | Steam, GOG, Itch.io

YouTube
The MacBook Pro is now properly set up.
#msdos #qbasic #gorillabas #retrocomputing #macbookpro
QB Philosophy - Pete's QBASIC / QuickBasic Site

QB Philosophy - Pete's QBASIC / QuickBasic Site

QFastMan: A tutorial-by-example for writing faster QBasic code

QFastMan: A tutorial-by-example for writing faster QBasic code

A little #program that lets you move a Smiley Face around the screen using #QB64

https://qb64.com/

#quickBASIC #QBASIC #BASIC

(source code in ALT text)

A little #program that lets you move a Smiley Face around the screen using #QB64

https://qb64.com/

#quickBASIC #QBASIC #BASIC

Source (Also in ALT text):

'-----------------------------------------
' Moving a face around the screen!
' Phillip J Rhoades - 2026-04-05
'-----------------------------------------

'Initializing some variables and the screen
Let Row = 1
Let Col = 1
Dim PrevRow
Dim PrevCol

Locate Row, Col
Print Chr$(2)

'Start of the main loop
Do
'Get the Keypress
TheKey$ = InKey$

'If there's no Keypress, there's no need to do all this
'so skip it all
If TheKey$ <> "" Then
'Record the Row and Col before changing
PrevRow = Row
PrevCol = Col

'Take note of which arrow key is pressed for movement.
Select Case TheKey$
Case Chr$(0) + Chr$(77): Col = Col + 1 'Left
Case Chr$(0) + Chr$(75): Col = Col - 1 'Right
Case Chr$(0) + Chr$(80): Row = Row + 1 'Down
Case Chr$(0) + Chr$(72): Row = Row - 1 'Up
End Select

'Keep the character on the screen
If Row < 1 Or Row > 23 Then
Row = PrevRow
End If
If Col < 1 Or Col > 79 Then
Col = PrevCol
End If

'Blank the old and print the new location
'to move the character.
Locate PrevRow, PrevCol 'Move cursor to old place
Print " " 'Blank the old character
Locate Row, Col 'Move cursor to new place
Print Chr$(2) 'Print the character to move on screen
End If 'This loop was mostly skipped if no Keypress
Loop Until TheKey$ = "q"
'End of the main loop