SmallBASIC sample is 286 lines, started by Rick:
'Raycaster with definekey.bas for SmallBASIC 0.12.6 [B+=MGA] 2016-06-17
' Raycaster maze Ricks copy from SB 2016-06-17
' MGA modified with definekey all inkey stuff removed
' still quits with esc and now q
' uses a simple ray casting technique (see lodev.org for tutorial) to draw
' vertical stripes down the graphics window.
' Each stripe is drawn to a size dependent upon the distance of the wall from the viewer.
' "Rays" are cast across a viewing plane in front of the viewer, from left to right.
' the height of the wall stripe depends on the distance of the wall from the viewer.
'InitialSetup
' set up screen width and height
' values also used to determine the width and height of the "viewing plane"
' "size" is used to determine the width of each vertical line drawn.
' a smaller value makes the walls sharper, but draws slower (there are more lines)
' a larger value makes the walls blockier, but draws more quickly
'these replace INKEY catching
definekey 0xFF04, moveLeft 'press left arrow or ccw
definekey 0xFF05, moveRight 'press right arrow or cw
definekey 0xFF09, moveForward 'press up arrow, forward
definekey 0xFF0A, moveBack 'press down arrow, back
definekey 0x0071, quit 'press q
definekey 0x001B, quit 'press esc
but maze generator was not built into it.