Traveller Store CotI Features New Posts Mark Forums Read Register


Go Back TravellerRPG.com > Citizens of the Imperium > General Traveller Discussions > Software Solutions

Software Solutions Discussions on Traveller related software.

Reply
 
Thread Tools Display Modes
  #51  
Old August 2nd, 2018, 05:32 PM
robject's Avatar
robject robject is offline
Marquis
 
Join Date: Mar 2002
Posts: 13,926
Gallery : 9
Visit robject's Blog
robject has disabled reputation
Default

ALTERNATIVE #1: REU

First alternative is a cartridge image that contains all of Charted Space "in memory", and uses a small program that does bank switching to get access to that memory in chunks.

REU carts for the C64 range form 512K up to 16 megabytes (!) in size. 4mb is plenty for storing all 80,000 worlds in Charted Space.


ALTERNATIVE #2: TCP/IP

This means I use a modem (ok an emulated modem) to talk to the interwebs to get sector data. Probably, this means talking to a small gateway program that translates the calls and transmits queries to TravellerMap, and vice versa. And... probably has a cache as well so it's not always hitting the site.
__________________
Imperiallines magazine
My Helpful Stuff for Traveller5
IMTU tc+ t5++ 3i(+) au ls+ / OTU 44% an+ dt+ ge- j- jf+ n- pi+ pp+ tr+ tv- uwp+ xb+
Tools Link

Last edited by robject; August 2nd, 2018 at 11:51 PM..
Reply With Quote
  #52  
Old August 3rd, 2018, 01:49 PM
whartung whartung is offline
Citizen: SOC-14
 
Join Date: Nov 2004
Posts: 2,579
Gallery : 0
whartung Citizen+whartung Citizen+whartung Citizen+
Default

You can't just connect to an arbitrarily large disk drive, like the file system option?
Reply With Quote
  #53  
Old August 3rd, 2018, 03:09 PM
aramis's Avatar
aramis aramis is offline
Administrator
 
Join Date: May 2001
Location: Anchorage, AK, USofA
Posts: 29,416
Gallery : 56
Visit aramis's Blog
aramis has disabled reputation
Send a message via ICQ to aramis Send a message via AIM to aramis Send a message via Yahoo to aramis
Default

Quote:
Originally Posted by whartung View Post
You can't just connect to an arbitrarily large disk drive, like the file system option?
Defeats the purpose of writing it for an old computer.

If you want a universal VM, go with inform. (It's got more implementations than Java!) The IVM won't do complex graphics, tho'. So you have to do text-driven quasi-graphics. But it does do universal text handling on everything from an Apple II (no +, no e, no c, no GS) and Osborne 1, through the most modern hardware. And most places in between. (Including PalmOS 2+, Newton OS 1.1 and up, iOS, CP/M, VMS, almost every flavor of unix and linux, Symbian, Blackberry, and a half-dozen proprietary phone OS's)

Robject's strongly implied goals include it being able to run on real C64 hardware, albeit potentially slowly. Connecting an arbitrarily large drive is not an option on real C64 hardware.
__________________
~ Aramis
aramis.hostman.us /trav
Smith & Wesson: The Original Point and Click interface!

Archduke of Sylea (CORE 2118)
Duke of the Third Imperium (SPIN 0534)
Count Terra (SOLO 1827)
Count Gorod (REFT 1302)
Count of the Third Imperium (SPIN 2232)
Viscount of Adabicci (SPIN 1824)
Marquis of the Solomani Rim (SOLO 0606)
Marquis of the Third Imperium (SPIN 2410)
Baron of the Third Imperium (SPIN 2231)
Knight of the Iridium Throne (CORE 1434)
Sir William Hostman (OLDE 0512)
Sir William Hostman (DAGU 0622)
Knight of Deneb (REFT 2239)
Knight of Deneb (Spin 2532)
SEH w/Diamonds for Extreme Heroism - Battle of Boughene
MCG - Battle of Boughene
TAS: William Hostman (CORR 2506)
TAS: Bearer (DAIB 1326)
IMTU ct+ tm++ tne tg-- tt+ tmo+ t4- t20+ to ru+ ge+ 3i+ c+ jt au ls pi+ ta he+ st+
Wil Hostman 0602 C539857-9 S A724
OTU: 95% 3i an+ au+ br- cpu± dt± f+ fs++ ge± ih- inf± j± jf+ jm+ jt+ ls- n= nc+ pi+ pp-- tp+ tr+ tv- vi-- xb+-
Unless there is bold red text, presume my posts to be my personal material only.
Reply With Quote
  #54  
Old August 6th, 2018, 04:49 PM
whartung whartung is offline
Citizen: SOC-14
 
Join Date: Nov 2004
Posts: 2,579
Gallery : 0
whartung Citizen+whartung Citizen+whartung Citizen+
Default

Quote:
Originally Posted by robject View Post
ALTERNATIVE #1: REU

First alternative is a cartridge image that contains all of Charted Space "in memory", and uses a small program that does bank switching to get access to that memory in chunks.

REU carts for the C64 range form 512K up to 16 megabytes (!) in size. 4mb is plenty for storing all 80,000 worlds in Charted Space.


ALTERNATIVE #2: TCP/IP

This means I use a modem (ok an emulated modem) to talk to the interwebs to get sector data. Probably, this means talking to a small gateway program that translates the calls and transmits queries to TravellerMap, and vice versa. And... probably has a cache as well so it's not always hitting the site.
Quote:
Originally Posted by aramis View Post
Defeats the purpose of writing it for an old computer.
Really?

Seems to me that he's tossed the original C64 under the bus a long time ago. Both from a raw performance perspective (since he seemed to have no intention of running his simulator at native speeds) along with his other expansions of storage technologies.

Surprised he hasn't upped the ante to a C-128 or some other exotic banked RAM expansion yet.

As far as I know, in the past folks were able to attach hard drives to their C64, and once that door's open, well, capacity is pretty much unlimited. Plus there are several modern peripherals that allow attachment of flash drives, etc. to a C64.
Reply With Quote
  #55  
Old August 6th, 2018, 11:00 PM
aramis's Avatar
aramis aramis is offline
Administrator
 
Join Date: May 2001
Location: Anchorage, AK, USofA
Posts: 29,416
Gallery : 56
Visit aramis's Blog
aramis has disabled reputation
Send a message via ICQ to aramis Send a message via AIM to aramis Send a message via Yahoo to aramis
Default

Quote:
Originally Posted by whartung View Post
As far as I know, in the past folks were able to attach hard drives to their C64, and once that door's open, well, capacity is pretty much unlimited. Plus there are several modern peripherals that allow attachment of flash drives, etc. to a C64.
The usual file systems for C64 don't have directory trees and have a limited number of files. The machinery of the third party adapter presents the HD or the SD card to the machine as a 1541c drive, usually with an external push button to cycle through the stored disk images.

Most early machines were similar. One of the complaints about CP/M was the limited file names... 8+3... just like it's bastard child MS-Dos.

And while there are Hard Drive cards for, say, Apple //e and IIgs, they don't work well at all for partitions above 10 MB. (I've a IIgs with a 180 MB HD... I can only access 4 partitions unless I physically disconnect the floppy drives and/or turn off {in the system bios-equivalent} access to the peripheral ports - Serial, Parallel, Joystick, and the ones above 10 MB cannot be booted from. Arranging the partitions for usefulness took a lot of juggling.)

As for an REU cart - carts were intended to allow bank-switching. It's a standard practice in C64 carts (and C128, Vic20, some Atari 2600, some Atari 400/800, as well as a few nintendo carts). The C64 memory is actually overloaded - there's 20 K of ROM without a cart in, and 64 K of RAM, but only 64 K of address space... 3 bits of byte $0001 are used to control bank switches for areas A000-BFFF, D000-DFFF and E000-FFFF. (total, 5 banks). In fact, one loses RAM by using a cart... but the cart can be ram or rom, and can itself monitor for a specific poke to bank switch.

Heck...
$0801-$9FFF Default BASIC RAM area (38911 bytes).
$8000-$9FFF Optional cartridge ROM (8192 bytes). RAM if no cartridge in.
$A000-$BFFF Basic ROM or Machine Code accessible RAM
$D000-$DFFF Character ROM or I/O or RAM
$E000-$FFFF Kernal ROM or Machine Code accessible RAM

They got bank switching going on in routine use.
Given the 4K blocks switchable, if you lose one byte for switch control, one could theoretically make a 128 KB - 16 B bank-switching cart, showing 8 KB per window.

In fact, someone has done a manually switchable 128 KB breadboard project.
__________________
~ Aramis
aramis.hostman.us /trav
Smith & Wesson: The Original Point and Click interface!

Archduke of Sylea (CORE 2118)
Duke of the Third Imperium (SPIN 0534)
Count Terra (SOLO 1827)
Count Gorod (REFT 1302)
Count of the Third Imperium (SPIN 2232)
Viscount of Adabicci (SPIN 1824)
Marquis of the Solomani Rim (SOLO 0606)
Marquis of the Third Imperium (SPIN 2410)
Baron of the Third Imperium (SPIN 2231)
Knight of the Iridium Throne (CORE 1434)
Sir William Hostman (OLDE 0512)
Sir William Hostman (DAGU 0622)
Knight of Deneb (REFT 2239)
Knight of Deneb (Spin 2532)
SEH w/Diamonds for Extreme Heroism - Battle of Boughene
MCG - Battle of Boughene
TAS: William Hostman (CORR 2506)
TAS: Bearer (DAIB 1326)
IMTU ct+ tm++ tne tg-- tt+ tmo+ t4- t20+ to ru+ ge+ 3i+ c+ jt au ls pi+ ta he+ st+
Wil Hostman 0602 C539857-9 S A724
OTU: 95% 3i an+ au+ br- cpu± dt± f+ fs++ ge± ih- inf± j± jf+ jm+ jt+ ls- n= nc+ pi+ pp-- tp+ tr+ tv- vi-- xb+-
Unless there is bold red text, presume my posts to be my personal material only.
Reply With Quote
  #56  
Old August 8th, 2018, 07:31 PM
robject's Avatar
robject robject is offline
Marquis
 
Join Date: Mar 2002
Posts: 13,926
Gallery : 9
Visit robject's Blog
robject has disabled reputation
Default

Quote:
Originally Posted by whartung View Post
Seems to me that he's tossed the original C64 under the bus a long time ago. Both from a raw performance perspective (since he seemed to have no intention of running his simulator at native speeds) along with his other expansions of storage technologies.

Surprised he hasn't upped the ante to a C-128 or some other exotic banked RAM expansion yet.

As far as I know, in the past folks were able to attach hard drives to their C64, and once that door's open, well, capacity is pretty much unlimited. Plus there are several modern peripherals that allow attachment of flash drives, etc. to a C64.
LOL. Well I do what I can. And yeah, the REU is exactly an exotic banked RAM expansion, so there's my ante.

And yeah, I know VICE accesses the native file system as if it were one gigantic disk. But I don't want to go there. Not sure why... actually I know why: it's not as easy to hand to someone else and say "run this". An REU image is still unitary -- similar enough to a disk image that I could post it to Facebook and say "run this".

Granted, the file system is just one unzip removed from that, but still.

LONGER-RANGED GOAL

I'll up the ante one more: a clever Australian PhD is using his students to engineer a <thing> that can run a Commodore 65 ROM -- which was an 8-bit prototype that never made it out the door, except as a dozen working and semi-working prototypes out there in the big world. (A working prototype sells for EUR 81,000.00 in Germany for instance... or is that 81.000,00?) He essentially has his students working on a very beefy but 8-bit machine using a legacy OS with modern hardware.

So my long-range goal is to port all this nonsense to his MEGA65 when it's closer to ready. http://mega65.org/
__________________
Imperiallines magazine
My Helpful Stuff for Traveller5
IMTU tc+ t5++ 3i(+) au ls+ / OTU 44% an+ dt+ ge- j- jf+ n- pi+ pp+ tr+ tv- uwp+ xb+
Tools Link

Last edited by robject; August 8th, 2018 at 07:43 PM..
Reply With Quote
  #57  
Old August 10th, 2018, 11:17 PM
robject's Avatar
robject robject is offline
Marquis
 
Join Date: Mar 2002
Posts: 13,926
Gallery : 9
Visit robject's Blog
robject has disabled reputation
Default

Since I'm targeting the software for CommodoreServer(.com), I am therefore going to have to use SEQ files on 174k D64 diskette images.

The average UWP is 12.6 bytes, so the average subsector is 504 bytes (2 blocks), and the average sector is 8064 bytes (32 blocks).

Data is stored in quadrant-sectors at 8 blocks per quadrant (so 80 quadrants/20 sectors would take up 640 blocks). The filename format makes it easy for the program to find neighboring quadrants.

Row/Col Sector name Subsector letters.

"Row/Col" are the important numbers, because they uniquely identify the quadrant.

Code:
"15/21 SPIN ABCD"

Data is read in via:
GET#CH, B0$, B1$, B2$, ... B6$ : rem 7 bytes
INPUT#CH, NA$ : rem name, eol terminated

Strings are used as single-character buffers, and the operation chr$(x) is used to turn a byte value x into a string with one character in it. (Going the other way, ASC(x$) returns the value of the first character in x$.)

The Official Structure:

Code:
Byte 1:
   subsector col: 4 bits (two subsectors across)
   Starport + Base: 4 bits
Byte 2: 
   subsector row: 5 bits (two subsectors deep)
   Travel zone: 2 bits (1=amber, 2=red)
   GG presence: 1 bit
Byte 3: 
   TL: 5 bits
   Atmosphere: 2 bits (1=taint, 2=exotic, 3=corrosive)
   Belt presence: 1 bit
Byte 4:
   LL: 3 bits (1-7; multiply value by 2)
   Pop: 3 bits (0=transient (Ba=none), others=6+value)
   Orbit: 2 bits (1=inner, 2=HZ, 3=outer)
Byte 5:
   Trade Codes
Byte 6: 
   Trade Codes
Byte 7: 
   Star color: 3 bits (1=OBA, 2-6=FGKML)
   Giant star: 1 bit
   Importance: 3 bits (-3 to +5)
Bytes 8...n: Mainworld name, in pairs of Z-text bytes
Starport + Base: (1=A, 2=A+N, 3=A+S, 4=A+NS, 5=A+D, 6=A+W, 7=B, 8=B+N, 9=B+S, 10=B+NS, 11=C, 12=C+S, 13=D, 14=D+S, 15=E)

Z-text shrinks world name by 30%. So average length shrinks from 8 characters to 5.6.
__________________
Imperiallines magazine
My Helpful Stuff for Traveller5
IMTU tc+ t5++ 3i(+) au ls+ / OTU 44% an+ dt+ ge- j- jf+ n- pi+ pp+ tr+ tv- uwp+ xb+
Tools Link

Last edited by robject; December 24th, 2018 at 03:17 PM..
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Twilight 2027 - The Rise of the Machines Space Cadet TWILIGHT: 2000 1E/2E 1 October 25th, 2007 07:53 PM

This website and its contents are copyright ©2010- Far Future Enterprises. All rights reserved. Traveller is a registered trademark of Far Future Enterprises .
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2010-2013, Far Future Enterprises. All Rights Reserved.