• Welcome to the new COTI server. We've moved the Citizens to a new server. Please let us know in the COTI Website issue forum if you find any problems.
  • We, the systems administration staff, apologize for this unexpected outage of the boards. We have resolved the root cause of the problem and there should be no further disruptions.

Converting "Merchant Prince" Software

Ok ... so I've managed to covert an Applesoft BASIC program to a Microsoft QB 4.5 format - "Trader" ("Merchant Prince?) to be precise - but apparently, I need some maps to go along with it. Will the 'standard' Spinward Marches map work, or is there a special one for this program?

What inputs are expected for the following?

"USE SECTOR: > "
"READ A.MAP,R0"
"READ A.MAP,R"
"READ OD JUMP"
"READ DATAFILE"

And what in Strephon's name are "MONICO" and "NOMONICO" supposed to mean?

Thank you.
 
What inputs are expected for the following?

"USE SECTOR: > "
"READ A.MAP,R0"
"READ A.MAP,R"
"READ OD JUMP"
"READ DATAFILE"

Partially documented here: https://travellermap.com/doc/fileformats#trader-format

It's a "random access" text file, which is a sequence of fixed-length records. When the file is opened the record length (in bytes) is specified (using ,L##) - IIRC it's 50 for these files. The first record is abused to hold the number of records in the file (as a string, since it will be parsed by INPUT), terminated with newline. An individual record can be read with the ,R## flag.

(Since the first record is 50 bytes too it contains junk to pad it out)

And what in Strephon's name are "MONICO" and "NOMONICO" supposed to mean?

Those are shortcuts for

MON I,C,O
NOMON I,C,O

MON tells DOS to start echoing commands, with categories: Input, Output, Command. NOMON turns off echoing.
 
Last edited:
Oh, and it probably wasn't obvious if you're not familiar with Applesoft BASIC but in the original source you'll see things like:

Code:
10 PRINT CHR$(4);"OPEN FOO,L50"
20 PRINT CHR$(4);"READ FOO,R2" : INPUT A$
30 PRINT CHR$(4);"CLOSE FOO"

The CHR$(4) bit indicates that the command should go to DOS, not be output to the screen. The READ command will redirect input to DOS. That INPUT A$ will be filled in by DOS with the record read from the file - the user won't see it.

Since this DOS hook is peculiar to Applesoft BASIC you'll need to replace all of this disk I/O with whatever your dialect of BASIC uses. It's likely to be quite different.
 
Oh, and it probably wasn't obvious if you're not familiar with Applesoft BASIC but in the original source you'll see things like:

Code:
10 PRINT CHR$(4);"OPEN FOO,L50"
20 PRINT CHR$(4);"READ FOO,R2" : INPUT A$
30 PRINT CHR$(4);"CLOSE FOO"

The CHR$(4) bit indicates that the command should go to DOS, not be output to the screen. The READ command will redirect input to DOS. That INPUT A$ will be filled in by DOS with the record read from the file - the user won't see it.

Since this DOS hook is peculiar to Applesoft BASIC you'll need to replace all of this disk I/O with whatever your dialect of BASIC uses. It's likely to be quite different.

QBasic translates pretty easily...
Code:
open "foo" for input as #1
input #1, A$
close #1
 
Don't know if this might be of help

basic_conversion_handbook


http://www.apple-iigs.info/doc/fichiers/basicconversionhandbook.pdf
 
That handbook helps. Thanks!

In the interest of software archeology, I discovered a line of code in the "Traveller Sector Generator", written by Marc Miller* in 1986, that reads:

6160 IF AM = 0 AND SI<>0 THEN TC$ = TC$ + "VA "

This means that to earn the trade classification of a Vacuum World, the UWP must have an Atmosphere equal to 0 (of course), and a Size greater than 0. Since this line of code appeared in Challenge #26 in 1986, it seems to supersede all of the previous LBBs, which stated that only an Atmosphere of 0 was necessary.

I guess Mr. Miller got as tired as the rest of us in seeing all of those "AS VA" trade classifications.

(*No copyright infringement intended - for historical purposes only.)
 
Back
Top