6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sat Apr 20, 2024 4:05 am

All times are UTC




Post new topic Reply to topic  [ 28 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Thu May 11, 2017 8:13 pm 
Offline

Joined: Sat Dec 13, 2003 3:37 pm
Posts: 1004
barrym95838 wrote:
Yeah, you could shift the second character of the keyword and stop there. So RETURN could be shortened to rE when you were entering the program line. It got a little tricky when there was ambiguity ... (was gO equivalent to GOTO or GOSUB)? PETSCII had some cool attributes, but I could never get around the fact that there were two different PETSCII codes for each member of the upper-case alphabet, depending on what "display mode" you were in.

Mike B.

P.S. The "P." shorthand was an attribute of TRS-80 Level 1 BASIC, which didn't tokenize. If you entered "P." the interpreter would store it as two bytes and look for the first keyword entry that started with "P", which was "PRINT". Entering "PRINT" used five bytes, and made the slow interpreter even slower.


I googled up a PET simulator, and googled a bit.

What's funny is that the keyboard is all uppercase, shifted you get symbols.

But there was also a "lowercase mode", which replaced the symbols with lowercase letters.

So, unlike most everything else, where lowercase is normal, and uppercase shifted, the PET was opposite.

I even remembered that you could PRINT "<CLS>", and it would capture the Clear Screen as a character (in this case, and inverted heart, but only in quotes.

I have no real memories of how to move the cursor, I guess I just stuck a HOME plus a bunch of DOWN and RIGHT in a string. Truth is, most of my work was done simply by POKEing in to the screen memory. But I know I did some stuff with just BASIC. (I had a neat little Star Trek game where the display was the front view screen, so I had several face-on ship silhouettes, like \_=_/ for a Romulan, only using the nice characters vs just ascii [and I'm too lazy to dig up the unicode]).

I worked on the PET for 2 years in high school, very formative experience.


Top
 Profile  
Reply with quote  
PostPosted: Thu May 11, 2017 8:35 pm 
Offline
User avatar

Joined: Sun Jun 30, 2013 10:26 pm
Posts: 1922
Location: Sacramento, CA, USA
whartung wrote:
... What's funny is that the keyboard is all uppercase, shifted you get symbols.

But there was also a "lowercase mode", which replaced the symbols with lowercase letters ...

I wish that was true. IIRC, when you entered "lowercase mode", the upper-case letters became lower-case and the symbols became upper-case, which is the part that irked me the most about those machines. The really old ones gave me a headache with their harsh, flickery scrolls too.

Mike B.


Top
 Profile  
Reply with quote  
PostPosted: Fri May 12, 2017 10:54 pm 
Offline
User avatar

Joined: Thu Jun 23, 2011 2:12 am
Posts: 229
Location: Rancho Cucamonga, California
barrym95838 wrote:
IIRC, when you entered "lowercase mode", the upper-case letters became lower-case and the symbols became upper-case, which is the part that irked me the most about those machines. The really old ones gave me a headache with their harsh, flickery scrolls too.


I think it was a little more complicated than that: on early PETs, when you poked 59468,14 (lower case character set), the upper case letters stayed upper case and some symbols became lower case, but on later pets, the upper case characters in the graphic character set (poke 59468,12) became lower case and the graphics were under the upper case characters.

The slow scroll could be partially fixed with the poke that later became the "killer poke". It would trick the 6502 into thinking that the vertical retrace was active so it would do a faster scroll but that meant that flicker would be visible because the screen hardware would access the memory at the same time as the CPU.

The editor could be in two modes: quote mode or normal mode. In quote mode, it wouldn't execute cursor movements but it would send special characters straight to memory where they were stored as e.g. chr$(147) for clear-screen (showing up as a heart). And yes in BASIC the only ways to move the cursor were to use the tab() function and to use the cursor control characters in a print statement. Seems weird but it was really pretty efficient, though probably a total pain in the you-know-what whenever someone wanted to write a book about Commodore BASIC: only Commodore printers would reproduce those special symbols, and much of the time they wouldn't do it correctly because many printers would print in lower case/upper case instead of graphics, and of course in some cases the resolution of a printer head wasn't the same as the resolution of the screen.

The editor definitely took some getting used to. You had to learn that if you type something while the cursor is in the last column on the screen, the editor joins the current line to the next line in memory (unless the current line is already joined to the previous line). I thought the screen editor on the PET and CBM machines was absolutely brilliant, and no other machine had it at the time (until the IBM PC showed up).

The "?" abbreviation for PRINT was introduced in MS Basic really early, I know OSI BASIC also accepts it.

The two-letter abbreviations for keywords may not have been in there from the beginning, I don't know. They came in really handy for long BASIC lines (you could write a line longer than 80 characters and it would be difficult to edit it because the screen editor didn't support more than 80 characters but it would list the line just fine). And for long extended commands in Commodore BASIC such as DIRECTORY. I always just typed diR because I thought that was the command (from seeing others type it), then I found out the command is really DIRECTORY but no-one bothered to type the whole word :-)

Microsoft introduced the single quote for comments later on (IBM PC Basic supported it)

===Jac


Top
 Profile  
Reply with quote  
PostPosted: Sat May 13, 2017 2:36 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8138
Location: Midwestern USA
jac_goudsmit wrote:
The "?" abbreviation for PRINT was introduced in MS Basic really early, I know OSI BASIC also accepts it.

MAI Basic Four systems also accepted ? as a synonym for PRINT. MAI's Business BASIC preceded Microsoft BASIC by about five years.

Quote:
The two-letter abbreviations for keywords may not have been in there from the beginning, I don't know.

They were present in all Commodore BASIC versions and weren't necessarily two letters. All keywords in the BASIC ROM were terminated with the last character have bit 7 set. When you used keyword abbreviations the tokenizer terminated the match when it encountered the last character in your abbreviation, which also had bit 7 set. You didn't always get what you expected, however. For example, iN (shifted-N) would give you INPUT, whereas inP would give you INPUT#.

Commodore's BASIC was also unique in that it recognized GO TO as syntactically equivalent to GOTO—there is only one token for GOTO.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Sat May 13, 2017 6:33 am 
Offline
User avatar

Joined: Sun Jun 30, 2013 10:26 pm
Posts: 1922
Location: Sacramento, CA, USA
BigDumbDinosaur wrote:
... For example, iN (shifted-N) would give you INPUT, whereas inP would give you INPUT# ...


Attachment:
iN_vs_inP.JPG
iN_vs_inP.JPG [ 24.28 KiB | Viewed 4682 times ]


@jac: I first encountered the use of the apostrophe character as a substitute for REM on the TRS-80 Model 1 Level 2, about a year before the IBM PC was introduced.

Mike B.


Top
 Profile  
Reply with quote  
PostPosted: Sat May 13, 2017 8:40 pm 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8138
Location: Midwestern USA
barrym95838 wrote:
BigDumbDinosaur wrote:
... For example, iN (shifted-N) would give you INPUT, whereas inP would give you INPUT# ...


Attachment:
iN_vs_inP.JPG


@jac: I first encountered the use of the apostrophe character as a substitute for REM on the TRS-80 Model 1 Level 2, about a year before the IBM PC was introduced.

Mike B.

My memory is necessarily hazy on this. Whaddya expect out of an old man has hasn't written anything in Commodore BASIC since the latter 1980s? :D

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Sun May 21, 2017 7:09 pm 
Offline
Site Admin
User avatar

Joined: Fri Aug 30, 2002 1:08 am
Posts: 280
Location: Northern California
cbmeeks wrote:
I know the PET didn't take off like the Apple II, C64, etc. But, being targeted for business, there had to be at least a few titles that were released. I would assume that is.

So, other than BASIC, what were some of the software titles available?

PET isn't a single computer but rather a product line of related computers. They are usually referred to as "PET/CBM" since the later machines were badged "CBM" instead of "PET".

The first PET computer model, the PET 2001, had a 9" screen that displayed 40 columns of text. It had a calculator-like ("chiclet") keyboard and a built-in cassette drive. There was initially no floppy drive available. The PET 2001 available with different RAM sizes, initially 4K, but most machines had at least 8K. It came out at a time when SBCs like the KIM-1, SYM-1, and AIM-65 were popular. It was used for largely the same applications. Early PET newsletters are filled with electronics projects and assembly language programming articles, the same kinds of things you'd read in the SBC newsletters like SYMphysis and AIMinteractive.

There were many iterations and variations of the PET/CBM computers. A number of games were available for the 40-column models as you mentioned. The focus on business came with the 80 column models. The CBM 8032 had a 12" screen that displayed 80 columns of text, a full-size keyboard, and 32K RAM. Several models of floppy drives were available by this time as well. These features made the CBM 8032 more suited for typical business applications of the time.

Business software for PET/CBM usually targeted the 8032 but some could run on other models as well. Some titles included:

  • WordPro, PaperClip (word processor)
  • VisiCalc (spreadsheet)
  • JINSAM, Oracle (database)
  • Silicon Office (all-in-one)
  • McTerm (telecommunications)

There were later machines based on the 8032 but with more features. The 8096 and 8296 machines had expansion memory. The SuperPET included expansion memory and an additional 6809 processor. It came with a package of high-level languages that ran on the 6809 side including Pascal, APL, and Cobol. There were also two third-party expansions that added a Z80 and could run CP/M.

_________________
- Mike Naberezny (mike@naberezny.com) http://6502.org


Top
 Profile  
Reply with quote  
PostPosted: Mon May 22, 2017 12:17 pm 
Offline
User avatar

Joined: Wed Aug 17, 2005 12:07 am
Posts: 1207
Location: Soddy-Daisy, TN USA
I actually own an 8032. Hmmm. With the 80 column display, I wonder how many games will work on it vs. the 4xxx series?

_________________
Cat; the other white meat.


Top
 Profile  
Reply with quote  
PostPosted: Mon May 22, 2017 2:57 pm 
Offline
User avatar

Joined: Sun Jun 30, 2013 10:26 pm
Posts: 1922
Location: Sacramento, CA, USA
cbmeeks wrote:
Hmmm. With the 80 column display, I wonder how many games will work on it vs. the 4xxx series?

I have seen someone who knows how to do it (my old friend Joe Bridgewater) POKE the display of an 8032 to 40 columns for just that purpose. This was nearly 35 years ago, so the detail is fuzzy, but I think my memory is still serving me correctly at least in a broad sense.

Mike B.


Top
 Profile  
Reply with quote  
PostPosted: Mon May 22, 2017 9:44 pm 
Offline
User avatar

Joined: Thu Jun 23, 2011 2:12 am
Posts: 229
Location: Rancho Cucamonga, California
cbmeeks wrote:
I actually own an 8032. Hmmm. With the 80 column display, I wonder how many games will work on it vs. the 4xxx series?


I've seen it done.

You basically have to reprogram the CRT controller (6545, equivalent to the 6845) to display 40 columns instead of 80, and modify some other parameters to make sure the line frequency stays the same. It's definitely been done before and it shouldn't be too hard to find if you know what to google for.

You also have to change the character set by printing chr$(12) or poke 59468,12 of course. It won't look very good because of the wacky aspect ratio but many games should work.

===Jac


Top
 Profile  
Reply with quote  
PostPosted: Mon May 22, 2017 10:38 pm 
Offline

Joined: Sat Aug 15, 2009 8:08 pm
Posts: 29
So, the 8032 can be turned into a 4032 several ways.
1) You can run some software called "80240.PRG" or "80240ANYHZ.PRG". This re-programs the CRTC controller to do 40 columns and also installs a patch so that printing works properly. You can download 80240.PRG on my web page here:
http://www.6502.org/users/sjgray/projec ... index.html
(Note: The 40 columns will not fill the screen, but instead are located in the middle)
2) If you have a "Universal Dynamic PET" motherboard (not the original 80-column board), you can set some jumpers to turn it into a 40-column machine. You then need to replace the EDIT ROM chip. There were several switcher boards that could switch between 40 and 80 easily. Here is one:
http://www.6502.org/users/sjgray/comput ... index.html

3) You can install a special EDIT ROM that can switch back and forth via software (written by myself) here:
http://www.6502.org/users/sjgray/projec ... index.html

Any questions, just ask!
Steve


Top
 Profile  
Reply with quote  
PostPosted: Mon Jun 12, 2017 6:20 pm 
Offline
User avatar

Joined: Wed Aug 17, 2005 12:07 am
Posts: 1207
Location: Soddy-Daisy, TN USA
whartung wrote:
I had a neat little Star Trek game where the display was the front view screen, so I had several face-on ship silhouettes, like \_=_/ for a Romulan, only using the nice characters vs just ascii


I love stuff like that. I remember those days when literally a dot represented a ship or person.

You should look that code up if you have it. It would be a great addition to the type-in games for PET and other classic computers.

_________________
Cat; the other white meat.


Top
 Profile  
Reply with quote  
PostPosted: Thu Sep 28, 2017 10:57 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10789
Location: England
Mike Naberezny wrote:
cbmeeks wrote:
I know the PET didn't take off like the Apple II, C64, etc. But, being targeted for business, there had to be at least a few titles that were released. I would assume that is.

So, other than BASIC, what were some of the software titles available?

PET isn't a single computer but rather a product line of related computers. They are usually referred to as "PET/CBM" since the later machines were badged "CBM" instead of "PET".
...
Business software for PET/CBM usually targeted the 8032 but some could run on other models as well. Some titles included:
  • WordPro, PaperClip (word processor)
  • VisiCalc (spreadsheet)
  • JINSAM, Oracle (database)
  • Silicon Office (all-in-one)
  • McTerm (telecommunications)
...
The SuperPET included expansion memory and an additional 6809 processor. It came with a package of high-level languages that ran on the 6809 side including Pascal, APL, and Cobol. There were also two third-party expansions that added a Z80 and could run CP/M.


Mike, I see you've been uploading scans of even more early PET magazines - have you glimpsed any pattern or hint of what business applications were needed, or were selling, which might have driven adoption?

Here are some PET-related links from the 6502 Documents Archive:

  • Commodore PET Users Club Newsletter
    An official Commodore publication for PET users.
  • MICRO: The 6502 Journal
    MICRO was geared towards all 6502-based systems. It regularly featured articles for single board computers such as the KIM-1 and SYM-1, as well as desktop machines of the time such as the Commodore PET and Apple II.
  • PET Gazette
    Published by Len Lindsay of Madison, Wisconsin.
  • The PET Paper
    Published by ARESCO of Audubon, Pennsylvania.
  • PET User Notes
    Publication of the PET User Group focused on early Commodore PET computers.
  • PET Users Group Newsletter
    Published by the University of California at Berkeley's Lawrence Hall of Science under the Computer Project.
  • SPOT: Society of PET Owners and Trainers
    SPOT, the Society of PET Owners and Trainers, covers the early years of the Commodore PET. SPOT was first published in the People's Computers newsletters and edited by Phyllis Cole. It was then published in Recreational Computing magazine and edited by Harry Saal, who provided these extracts.
  • PRINTOUT
    A Commodore PET magazine published by PRINTOUT Publications of the UK.
  • SuperPET Gazette
    Published by the International SuperPET Users Group (ISPUG).


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 28 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: