Jump to content
IGNORED

Force Command : kinda like command.com from 1985 (no TIPI required!)


Recommended Posts

I see I've been using a different method than you.  I've taken to keeping my DOS boot screen to the bare minimum for speed.  I also found that I really do not like editing menus every time I change something.  So what I've been doing is using "loaders", small programs that load others containing all the long drawn out path statements.  For example my opening screen looks like this:

 

571107775_OPENINGSCREEN.thumb.jpg.457e315ac0a247045e0ec721e21391d3.jpg

 

If I want to load up RemindMe! (The calendar program), I type LOAD CALENDAR and it executes the "loader" program...

 

EXAMPLE.thumb.JPG.f23e1d35f6dee6ca7e847771e7260548.JPG

 

I've found this method extremely useful, and this little program has loaded things in the FC environment that I could not directly load before, for example Stuart's Internet Browser.  

I've included a few examples I use below.

 

 

 

 

 

 

 

 

LOADERS.zip

  • Like 3
Link to comment
Share on other sites

Hex editing loaders is a pain, and not necessary.

 

You can set PATH in your AUTOCMD file to a directory of little scripts. For example:

 

PATH=TIPI.LOADERS.;TIPI.FC.

 

Then create a little DV80 file in TIPI.LOADERS. to match your example, call it CALENDAR. It would contain:

 

LOAD TIPI.APPS.REMIND

 

--- as for things FC won't LOAD...

I have fixed my LOAD command for anything that has been reported. (This is the way)

 

I can't run everything you guys run, so unless it gets reported, FC will suck forever. A fix for one EA5 is likely a fix for an entire class of EA5s. 

 

Please retest the things that don't load and report them.

 

Let's make FC not suck together!

  • Like 2
  • Haha 2
Link to comment
Share on other sites

5 hours ago, jedimatt42 said:

Hex editing loaders is a pain, and not necessary.

 

You can set PATH in your AUTOCMD file to a directory of little scripts. For example:

PATH=TIPI.LOADERS.;TIPI.FC.

Then create a little DV80 file in TIPI.LOADERS. to match your example, call it CALENDAR. It would contain:

LOAD TIPI.APPS.REMIND

 

Well, here's the thing(s);

First, it's a habit, I started it this way back from the beginning of Force Command.

Second it always works.

Third, the files are already edited so it was quick to copy them over.

Fourth, if I need a new one, it only takes about 30 seconds to sector edit the master file and copy it to my TIPI.

Fifth, I've wasted an uncounted amount of time trying to get the new version to work, and have thrown up my hands in defeat so I'll just use what I have.  What the heck, it works for me.

 

Now with that all said, maybe I'm overlooking something.  Here's a video of how it does not work (for me).  Maybe someone can tell me what I'm doing wrong.

 

 

 

  • Like 1
Link to comment
Share on other sites

14 minutes ago, GDMike said:

When you tried to load calendar, I see it's a DV 80.

 

 

Yes, in the past it required a BATCH statement before the D/V 80 filename.  Now, apparently, it's just supposed to run when you type the name, but I've dumped too much time into this today with nothing to show for it.  So, I'm going to continue using my little proggies.

  • Like 1
Link to comment
Share on other sites

@Omega-TI

 

The only mistake you made in the video, was that you typed LOAD CALENDAR, instead of just plane simple CALENDAR.  If you review the help for LOAD by entering HELP LOAD you see:

==Load EA5 Program==

load <filepath>

Load and run an EA5 program image file or files

LOAD doesn't do batch files. The docs for scripting are here: https://github.com/jedimatt42/fcmd/wiki/Scripting, but it is basically like MSDOS, except I don't require your files to end in .BAT... If it is a DV80, I'll treat it like a script.

 

So, what you did in your video would have worked, if you had run CALENDAR at the prompt, instead of LOAD CALENDAR.

 

You were sooooo close. Your previous response says you've heard the instructions correctly... GIVE IT ONE MORE TRY!

 

Edited by jedimatt42
  • Like 2
Link to comment
Share on other sites

Force Command and the PATH... 

 

When you type a command and the first word is not one of the built-in commands known to Force Command, it will search the current directory, and then the list of device/directories in the PATH environment variable and see if it finds a file that matches the name. (case matters, files on the TI are case sensitive - This is the way)

 

If it finds a file matching the name, it inspects the file. If it is a DISPLAY VARIABLE 80 file, it runs the file as a script of Force Command commands. 

If it finds a PROGRAM image, it checks to see if it starts with the Force Command API header, and if so, loads it as an cooperative Force Command executable. If it does not start with the API header, it reports command not found. The bundled FTP executable is one such PROGRAM.

 

It does not automatically act on other PROGRAM image types, as there are many... BASIC, XB, CARTRIDGES (GK, etc), TI-Artrist pictures, Tunnels of Doom quests, Adventures... 

 

 

Edited by jedimatt42
  • Like 1
Link to comment
Share on other sites

On 12/28/2020 at 1:14 AM, wolhess said:

Hi @jedimatt42,

 

with the version v1.12 of Force Command the prompt command does not work as described in the wiki.

 

Now I can make all character after the "prompt=" to the system prompt.

 

Is this right? What about the crubase or the drive/path information?

 

image.png.0347af7ae0ae92d7a6acb4de22db4464.png

 

Have you tried the other slash (FCTN Z)?   https://github.com/jedimatt42/fcmd/wiki/Variables#prompt

 

and, case matters here, I reserve the right for \c to be different in meaning from \C, etc.

Edited by jedimatt42
Link to comment
Share on other sites

41 minutes ago, jedimatt42 said:

@Omega-TI

 

The only mistake you made in the video, was that you typed LOAD CALENDAR, instead of just plane simple CALENDAR.  If you review the help for LOAD by entering HELP LOAD you see:


==Load EA5 Program==

load <filepath>

Load and run an EA5 program image file or files

LOAD doesn't do batch files. The docs for scripting are here: https://github.com/jedimatt42/fcmd/wiki/Scripting, but it is basically like MSDOS, except I don't require your files to end in .BAT... If it is a DV80, I'll treat it like a script.

 

So, what you did in your video would have worked, if you had run CALENDAR at the prompt, instead of LOAD CALENDAR.

 

You were sooooo close. Your previous response says you've heard the instructions correctly... GIVE IT ONE MORE TRY!

 

 

Yeah, I read that, but....

1533322373_Uhhuh.thumb.JPG.daac1dc6568e223fd9d407383e127856.JPG

 

  • Like 1
Link to comment
Share on other sites

Regarding future development of Force Command...

 

Since you've included the time in the BAR and have made it possible to use clock information in the prompt, and you also support multiple clocks, are you planning on supporting time and date information on files saved with/via Force Command?  If not, is it because of a lack of space in the file information storage area or because it would screw up existing software?

 

Link to comment
Share on other sites

13 hours ago, jedimatt42 said:

I can't run everything you guys run, so unless it gets reported, FC will suck forever. A fix for one EA5 is likely a fix for an entire class of EA5s. 

That's just yet another version of the scratchpad loader, you could always just port that. It sets up the PABs, looks up the DSR, then does all the actual loading from scratchpad. ;)

 

all_scratchpad_loaders.zip

  • Like 1
Link to comment
Share on other sites

2 minutes ago, Tursi said:

That's just yet another version of the scratchpad loader, you could always just port that. It sets up the PABs, looks up the DSR, then does all the actual loading from scratchpad. ;)

 

all_scratchpad_loaders.zip 29.08 kB · 1 download

 

My loader is/was 95% that already... It has evolved away a little bit.... I have the luxury of running from ROM, and using my own dsrlnk code that handles my weird explicit crubase stuff.

 

I do more things, now such as restoring the SAMS memory map, and VDP registers after being in 9938 or F18A specific modes... 

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, Omega-TI said:

Regarding future development of Force Command...

 

Since you've included the time in the BAR and have made it possible to use clock information in the prompt, and you also support multiple clocks, are you planning on supporting time and date information on files saved with/via Force Command?  If not, is it because of a lack of space in the file information storage area or because it would screw up existing software?

 

 

That is a function of the storage device, and not a function of the program doing the storing. Some controllers provide that information back to programs reading the CATALOG file.   Force Command will list the modified date of files for controllers that support it, such as TIPI, ( and probably IDE, HDX, and the HFDC )  - By executive decision, it only lists the file dates if you are on an 80 column display.

 

IMG_20201229_222527699.thumb.jpg.f9e39a2b18e0407e844617694fdc1f04.jpg

 

Comparing your screen shots and mine, I'd say I haven't released this yet. 

Edited by jedimatt42
  • Haha 1
Link to comment
Share on other sites

9 hours ago, jedimatt42 said:

 

My loader is/was 95% that already... It has evolved away a little bit.... I have the luxury of running from ROM, and using my own dsrlnk code that handles my weird explicit crubase stuff.

 

I do more things, now such as restoring the SAMS memory map, and VDP registers after being in 9938 or F18A specific modes... 

 

In that case - help me improve the loader. ;) What were you not able to load and why?

 

  • Like 1
Link to comment
Share on other sites

13 hours ago, jedimatt42 said:

 

Have you tried the other slash (FCTN Z)?   https://github.com/jedimatt42/fcmd/wiki/Variables#prompt

 

and, case matters here, I reserve the right for \c to be different in meaning from \C, etc.

Oh no, I used the wrong slash! 

 

With FCTN Z = "\" it works as it should. I apologize, that was my mistake.

 

If I could read correctly, that would be an advantage!

  • Like 4
Link to comment
Share on other sites

43 minutes ago, Tursi said:

In that case - help me improve the loader. ;) What were you not able to load and why?

 

I don't think the things I changed belong to that loader. 

 

I had to reset the 26.5 row VDP register.

Re-lock the F18A

Map pages 0-16 of SAMS to addresses 0-64k, (I should then turn off the mapper, but didn't) 

 

All of the why, was because I had turned on optional hardware. 

 

I have to do these same resets before switching FinalGROM cartridges also.

 

Maybe some of that matters if you want to support XBGEM's 80 column extension... Or maybe it isn't a problem since it isn't also doing 26.5 or 30 row mode.

 

  • Like 1
Link to comment
Share on other sites

Hi,

 

in my system, if I run a program from Force Command, I saw always access on my physical drive DSK1.

Today I tested it again to run the XB weather program on different way's.

 

1. In FC set the tipimap DSK1. TIPI.MM.P.TOOL. (Folder of the weather program)
    And using the command XB DSK1.WEATHER3

    --> This is working but it loads the program from my physical DSK1.

          and the mapping of DSK1. is deleted (no mapping!)
 

================================================

2. In FC set the tipimap DSK1. TIPI.MM.P.TOOL. (This is not recognized by the XB command)
    And using the command XB TIPI.MM.P.TOOL.WEATHER3

    --> This also is working but without an access to my physical floppy.

          and the mapping of DSK1. is deleted (no mapping!)

For me this is the try I think it works as it should!

 

3. I changed the LOAD program in the path: TIPI.FC.LOAD

 

   40 D$=SEG$(A$,8,4)  to 40 D$=SEG$(A$,9,4)

   and used the same command as in 2.:
   --> This is working without an access to my physical floppy.

          and the mapping of DSK1. is "TIPI.FC"

===============================================

 

4. Same changes in TIPI.FC.LOAD as in 3. but using the command DSK1.WEATHER3
    and I renamed the file WEATHER3 on physikal Disk1. from WEATHER3 to WEATHER4
    So I'm shure in the try "1." it loads the WEATHER program from physical floppy.

    --> * I/O ERROR 02 IN 10
        >LIST 10
        >10 RUN "DSK1.WEATHER3"   (This is because I have no file WEATHER3 on phys. Disk drive)

        The tipi mapping of DSK1. is deleted (no mapping!)

 

5. I changed the LOAD program in the path: TIPI.FC.LOAD
    and remarked the lines 60, 70 and 80 (so it does not delete the DSK1 mapping)

    --> * I/O ERROR 02 IN 10
        >LIST 10
        >10 RUN "DSK1.WEATHER3"   (This is because I have no file WEATHER3 on phys. Disk drive)

        The tipi mapping of DSK1. is "TIPI.FC" and in this path is no WEATHER3 program, so the error is correct.
        But the tipimapping in the AUTOCMD file is useless for the XB command.

 

6. I deleted the LOAD file in the folder TIPI.FC
    --> The system doesn't find a LOAD program in the mapped folder TIPI.FC but if found the program on the physical disk
          and this LOAD file runs my MEGA MENU program but not the WEATHER program.

 

Result for me is, alway's I have to use the command "XB PROGNAME" with the full tipi path like the second try!

 

What I think:

- The XB command ignores the current tippimap

- Force Command is mapping DSK1 to TIPI.FC for the XB command

- If Force Command see no TIPI in the path it deletes the current DSK1 mapping, so the physical DSK1 is used to load the program.

- The original TIPI.FC.LOAD program always deletes the DSK1 mapping so line 40 has to change from "D$=SEG$(A$,8,4)"  to "40 D$=SEG$(A$,9,4)"

- I can't use XB DSK1.PROGNAME or XB TIPIPATH.PROGNAME if PROGNAME itself will load something from the mapped DSK1.,
  so I have to start a loading program first, which maps the correct tipipath to DSK1.

 

@jedimatt42 
I'm using the new FC v12 and XB2.8 with the main address: 31435
Is it right that the XB command needs the full tipi path to find the program in the right tipi folder?
Is it right that the tipimap command is unnecessarry for using the XB command?

 

 

Here are my current files:

TIPI.AUTOCMD

AUTOCMD

TIPI.FC.LOAD 

LOAD

TIPI.MM.P.TOOL.WEATHER3

WEATHER3

 

 

 

 

 

    

 

 

 

 

      

    

 

 

  • Like 1
Link to comment
Share on other sites

16 minutes ago, Omega-TI said:

When I get home this evening I'll try a work around by putting something on the physical DSK1. and see what happens.  There is definitely a FUBAR in this version that will be repaired in the future.  Fortunately it will be easy to replace 1.12 with a new version on the FG99.

Now what did I just get done saying about workarounds?

 

Give a developer a chance at a proper solution before confusing the ecosystem with hacks.

Edited by jedimatt42
  • Haha 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...