Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

More Plus/4 questions..

28 views
Skip to first unread message

David Murray

unread,
Aug 26, 1998, 3:00:00 AM8/26/98
to
I am still learning a great deal each day about this little jewel.. Here
are some unanswered questions..

1) Where is the RS232 port it is supposed to have? The memory mad shows
it seperate from the user-port.. so is it the User-port? Or do you have
to rig up some kind of device to the cartridge port?

2) Why is it that the memory map shows the character ROM at $D000 and
yet if I grab the contents from BASIC using PEEKs I get nothing that
resembles characters.. Let's say I write a program to copy everything
from $D000 to $2000 (directly to the bitmap screen) I get nothing.. Yet
if I write the same program in ML, it copies the standard character set
to the screen. It seems that BASIC sees something different in that
area than ML does.. Why?

3) since the 3-plus-1 software stinks so much.. would it help my
programming effort to remove this chip from the computer?

Well.. I'm sure I'll think of more.. but if somebody could answer
these.. I'd be better off.. Oh.. and still nobody has claimed to have a
copy of HiggyTerm or any other Plus/4 terminal software... Please.. if
you have anything at all.. please email it to me!

--DavidM.

Martijn van Buul

unread,
Aug 27, 1998, 3:00:00 AM8/27/98
to
It occurred to me that David Murray wrote:
> I am still learning a great deal each day about this little jewel.. Here
> are some unanswered questions..
>
> 1) Where is the RS232 port it is supposed to have? The memory mad shows
> it seperate from the user-port.. so is it the User-port? Or do you have
> to rig up some kind of device to the cartridge port?
It's on the Userport allright. Same pin-out as the C64's userport,
if I'm not mistaken.

Be aware though that, like the C64, the Plus/4 doesn't comply to RS232
completely; it outputs a serial port with voltage levels of 0 and 5v. This
should be -12 and +12v. MAXIM sells an IC containing the needed converters
(I believe it's called the MAX232)

>
> 2) Why is it that the memory map shows the character ROM at $D000 and
> yet if I grab the contents from BASIC using PEEKs I get nothing that
> resembles characters.. Let's say I write a program to copy everything
> from $D000 to $2000 (directly to the bitmap screen) I get nothing.. Yet
> if I write the same program in ML, it copies the standard character set
> to the screen. It seems that BASIC sees something different in that
> area than ML does.. Why?

Bankswitching. The Plus/4 has more RAM + ROM than would fit in it's address
space. So, it uses a technique called bankswitching: It is possible to
select wether a memory location should be ROM or RAM. The C64 uses
a similiar techique (and so does the 128 for that respect).

IIRC, you can select banks using some addresses in top memory. (see your
memory map;)

> 3) since the 3-plus-1 software stinks so much.. would it help my
> programming effort to remove this chip from the computer?

Ofcourse; you can replace it with something else if you want to. Only
removing it won't help you very much; you won't get more RAM or anything
like that.

--
Martijn van Buul, mart...@mud.stack.nl
Tijntje@OuterSpace - 131.155.141.166 3333

Cameron Kaiser

unread,
Aug 27, 1998, 3:00:00 AM8/27/98
to
David Murray <w01...@airmail.net> writes:

>1) Where is the RS232 port it is supposed to have? The memory mad shows
>it seperate from the user-port.. so is it the User-port? Or do you have
>to rig up some kind of device to the cartridge port?

It *is* the userport. It's the same as the 64's (same pinout), but you need to
tweak a jumper to get 64 peripherals like the 1600 series modems to work with
it. It does have its own UART (well, a 6551 ACIA really).

>2) Why is it that the memory map shows the character ROM at $D000 and
>yet if I grab the contents from BASIC using PEEKs I get nothing that
>resembles characters.. Let's say I write a program to copy everything
>from $D000 to $2000 (directly to the bitmap screen) I get nothing.. Yet
>if I write the same program in ML, it copies the standard character set
>to the screen. It seems that BASIC sees something different in that
>area than ML does.. Why?

It does see something different; the [78]501 banks in and out ROM and RAM
depending on the particular configuration necessary. The 6509 series, the 64
and the 128 also utilise this trick to get more than 64K into the machine
(the CPU just has to choose what it will look at and make sure it totals 64K).

When you SYS, the Plus/4 changes bank configurations. In BASIC, to get the 60K,
the +4 is in a configuration that gives the maximal amount of RAM possible,
including swapping out the ROMs. Your BASIC program code consumes the entire
swathe of memory from $1000 to $FCFF. When you SYS or the machine runs some
ML subroutine, the ROMs are banked back in so that there is now ROM overlaying
$8000-$BFFF and $D000-$FFFF.

Switching banks while your program is running is very ill-advised. On the 128,
POKEing to $FF00 while your BASIC program is running could very well cause a
serious 'system fart' (technical term) if you bank out the BASIC ROM. A similar
situation exists on the Plus/4; if you futz with $FF3E (ROM select) or $FF3F
(RAM select) while your program is running, you can cause trouble or a crash.
Better to let the BASIC SYS handle it for you.

These locations, in simplified (read: untested) terms, do the following. If
you write to $FF3E, the ROMs turn on; if you write to $FF3F, the ROMs turn off.
However, I would only do this from ML (and make sure you turn the ROMs back on
before you RTS).

>3) since the 3-plus-1 software stinks so much.. would it help my
>programming effort to remove this chip from the computer?

No, not really. They're banked out most of the time, so their presence will
neither help nor harm you (as long as you don't actually use them ;-).

--
-------------- The Commodore 64 lives: http://computerworkshops.home.ml.org/ --
Cameron Kaiser (posting with a Commodore 128) | "When in doubt, take a pawn."
cdkaiser@concentricMUNGEnet | -- Mission: Impossible
-- personal page: http://calvin.ptloma.edu/~spectre/ ------ CBMSF Unit $EA31 --

hsa...@epix.net

unread,
Aug 27, 1998, 3:00:00 AM8/27/98
to
David Murray wrote:
>
> I am still learning a great deal each day about this little jewel.. Here
> are some unanswered questions..
>
> 1) Where is the RS232 port it is supposed to have? The memory mad shows
> it seperate from the user-port.. so is it the User-port? Or do you have
> to rig up some kind of device to the cartridge port?
>
> 2) Why is it that the memory map shows the character ROM at $D000 and
> yet if I grab the contents from BASIC using PEEKs I get nothing that
> resembles characters.. Let's say I write a program to copy everything
> from $D000 to $2000 (directly to the bitmap screen) I get nothing.. Yet
> if I write the same program in ML, it copies the standard character set
> to the screen. It seems that BASIC sees something different in that
> area than ML does.. Why?
>
> 3) since the 3-plus-1 software stinks so much.. would it help my
> programming effort to remove this chip from the computer?
>
> Well.. I'm sure I'll think of more.. but if somebody could answer
> these.. I'd be better off.. Oh.. and still nobody has claimed to have a
> copy of HiggyTerm or any other Plus/4 terminal software... Please.. if
> you have anything at all.. please email it to me!
>
> --DavidM.

Okay, David, Higgyterm +4 and Teleterm should be waiting on a d64. Last
night epix was running slow and then my power went out so I had to redo
the message tonight, just sent it, hope you got it this time. BTW,
there's a plus/4 listserve that seems to be ml programmer oriented, if
you want the address I'll send it to you.

DJ

David Murray

unread,
Aug 28, 1998, 3:00:00 AM8/28/98
to hsa...@epix.net
hsa...@epix.net wrote:

Yes.. I'd like that... I want to learn more about this mysterious little
box.. Thanks for the terminals.. I got them working.. well.. running.. I
can't seem to get the computer to "see" data comming in through the
user-port. However, I can send data out the user-port.. This is weird.. I'm
going to make a new post in the forum hoping someobdy can answer this
mystery.
--DavidM.

0 new messages