Jump to content

Recommended Posts

I referenced SUPERBASIC in another topic. This program was a "life saver" back in the day when I was doing quite a lot of Extended BASIC programming.

 

SUPERBASIC loads into the lower 8k memory space. It provides the user with a number of "hotkeys" that can be accessed through simple keypresses, such as "CTRL-1" to catalog DSK1 or user-defined keys to simplify programming. It adds commands that allow you to resequence and delete segments (without affecting the rest of the program), load text files into memory from disk as if you typed the program line yourself, search the entire program from the command mode using "!" or "/", and more.

 

I really liked the ability to show a text file right from the command prompt. Here's the first portion of the readme file I've added to the disk using the "TYPE" command:

post-25764-0-79755100-1531091684.png

 

 

Title screen:

post-25764-0-95800300-1531091660.png

 

Searching for a word in the program :

post-25764-0-80755500-1531091675.png

 

The author does warn users about some garbage collection/issues. I don't recall encountering these back in the day, of course, that was 30 years ago.

 

The attached DSK file contains the original instructions. I have modified the assembly code to disable the dongle test, and included the change in the !README file for anyone with the original disk. (Edit: properly named the dsk file)

 

 

SuperBasicKarasek No Dongle needed-90k.DSK

Edited by InsaneMultitasker
  • Like 8

Share this post


Link to post
Share on other sites

Curious about the dongle. What did it consist of?

 

I never took mine apart; it plugged into the joystick port and from looking at the assembly code, it simply mimicked holding the joystick in the DOWN position.

Share this post


Link to post
Share on other sites

Simple but probably effective copy protection for most TI users back in the 80's unless one was inquisitive enough to open up the dongle and deduce what was going on. Likely just a DB9 connector with ground and the DOWN pin shorted :)

  • Like 2

Share this post


Link to post
Share on other sites

SuperBasic like RXB and XB2.0 (XB2.7 now) were all based on Miller Graphics GK XB expanded modifications.

 

The paranoia of changing SuperBasic by people like me was the reason for the stupid dongle idea.

 

You notice it never became a de facto standard or continued to be supported or popular as the Dongle was required,

and even after hacked to no longer required the dongle never became more than a curiosity of a XB variant.

 

SuperBasic did have some unique cool features.

  • Like 1

Share this post


Link to post
Share on other sites

 

 

You notice it never became a de facto standard or continued to be supported or popular as the Dongle was required,

and even after hacked to no longer required the dongle never became more than a curiosity of a XB variant.

 

SuperBasic did have some unique cool features.

 

I don't recall ever seeing a hacked version out there, doesn't mean it didn't exist as the protection was simple enough to defeat. Back then I probably wouldn't have know where to look given the "trickery:" involved in loading the code into memory.

 

I got a lot of mileage out of the program back in the day so it was certainly more than a curiosity (to me). Some day it might be interesting to pull it apart to understand how the extra commands are accessed from the command prompt.

  • Like 1

Share this post


Link to post
Share on other sites

 

I don't recall ever seeing a hacked version out there, doesn't mean it didn't exist as the protection was simple enough to defeat. Back then I probably wouldn't have know where to look given the "trickery:" involved in loading the code into memory.

 

I got a lot of mileage out of the program back in the day so it was certainly more than a curiosity (to me). Some day it might be interesting to pull it apart to understand how the extra commands are accessed from the command prompt.

Extra commands on it worked like RXB when you type OLD BASIC or OLD EA using a DSR the GPL finds that device and makes it act like a Subprogram.

 

This is not unlike using >08 instead of >10 like a normal DSR.

[0081]               ***********************************************************
[0082]               * GROM Header
[0083] E000 AA              BYTE  >AA              * Header byte
[0084] E001 0B              BYTE  11               * Version #
[0085] E002 01              BYTE  1                * # programs
[0086] E003 00              BYTE  0                * Reserved
[0087] E004 00,00           DATA >0000             * POWER UP
[0088] E006 E0,10           DATA  MENU             * Cartridge menu
[0089] E008 F6,F2           DATA  EADSR            * DSRs
[0090] E00A 00,00           DATA  >0000            * Subroutines
[0091] E00C 00,00           DATA  >0000            * Interupts
[0092] E00E 00,00           DATA  >0000            * TI BASIC
[0093] E010 00,00    MENU   DATA  >0000
[0094] E012 E0,25           DATA  SETUP
[0095] E014 10,52,45        STRI  'REA VERSION 2015'
       E017 41,20,56
       E01A 45,52,53
       E01D 49,4F,4E
       E020 20,32,30
       E023 31,35
[0096]               *********************************************************

[1851]               **********************************************************
[1852] F6F2 F6,F9    EADSR  DATA SEADSR
[1853] F6F4 E0,25           DATA SETUP
[1854] F6F6 02,45,41        STRI 'EA'
[1855] F6F9 F7,00    SEADSR DATA XBDSR
[1856] F6FB E0,25           DATA SETUP
[1857] F6FD 02,65,61        STRI 'ea'
[1858]               ************************************
[1859] F700 F7,07    XBDSR  DATA SXBDSR
[1860] F702 63,72           DATA RXB
[1861] F704 02,58,42        STRI 'XB'
[1862] F707 F7,0E    SXBDSR DATA BASIC
[1863] F709 63,72           DATA RXB
[1864] F70B 02,78,62        STRI 'xb'
[1865]               ************************************
[1866] F70E F7,18    BASIC  DATA SBASIC
[1867] F710 21,6F           DATA >216F
[1868] F712 05,42,41        STRI 'BASIC'
       F715 53,49,43
[1869] F718 00,00    SBASIC DATA >0000
[1870] F71A 21,6F           DATA >216F
[1871] F71C 05,62,61        STRI 'basic'
       F71F 73,69,63
[1872]               ***********************************************************

Share this post


Link to post
Share on other sites

 

Extra commands on it worked like RXB when you type OLD BASIC or OLD EA using a DSR the GPL finds that device and makes it act like a Subprogram.

 

This is not unlike using >08 instead of >10 like a normal DSR


Thanks Rich, I'm just not grasping where Superbasic is linking its commands into the search. The routines are stored in the lower 8k CPU ram space, not in grom or a dsr space at 0x4000. Must be something simple I'm missing here.

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...