home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
genie-commodore-file-library
/
CompSysCBM
/
070596H.TXT
< prev
next >
Wrap
Text File
|
2019-04-13
|
28KB
|
747 lines
12.5. How do I build a 2400/9600 bps RS-232 interface cable?
A new programming technique makes it possible to acheive 9600 bps on an
unexpected Commodore 64 without the use of a Swiftlink cartridge.
Daniel Dallmann of Germany is the originator of this technique and is
currently writing modem drivers for some of the popular C64 terminal
emulation programs to take advantage of this new technique.
The interface described below is a little more complex than the one
in Section 12.4, but has many advantages:
* The interface generates proper EIA232 (RS-232) voltage levels.
The one in Section 12.4 relies on the ability of most newer RS232
equipment to handle lower voltages.
* The following interface can be used as a direct replacement for the
| interface in Section 12.4, and will work will all most
telecommunications programs at up to 2400 bps, while providing the
necessary interfacing to allow suitably equipped applications to
| operate at up to 9600 bps. (Some programs needing DCD and DTR lines
| may have problems.)
* if you currently own a normal RS232 interface, that interface can be
modified to incorporate the new interfacing for 9600 bps operation. =
(in some cases one line of the old interface has to be disconnected,
see note **1 )
9600 bps is the maximum limit this type of technique due to the timing
limitations of the C64. The delay between the activation of the NMI-ha=
ndler
and the falling edge of rxd is too long. The handler must be called in=
less than 100 cycles. That's no problem at 9600 bps, but for 19200 bau=
d
(the next higher baud rate), you have only 50 cycles, and that's imposs=
oble
(because of VIC-DMA ). On a C128 in fast mode 38400 baud may be possib=
le,
but I don't have a C128, so someone else has to try it out.
Schematic of a very simple RS232-Interface:
userport MAX232 rs232 9pin 25pin
+----------+
! !
(C) pb0--+ ! !
! ! /! !
(B) flag2--*--------------------O< !--------- rxd 2 3
! 9! \! !8
*7* sp2--+ ! !
! !
*6* cnt2--+ ! !
! ! !
*L* pb7--+ <NOTE **1!> ! !
! !\ !
(M) pa2--*--------------------! >O--------- txd 3 2
! 11! !/ !14
*5* sp1--+ ! !
74ls00 ! !
+-----+ ! !
! ! ! !\ !
(D) pb1-*------>O-------------! >O--------- rts 7 4
! 1! !3 10! !/ !7
+----! ! ! !
2! ! ! /! !
(K) pb6--------O<-----*-------O< !--------- cts 8 5
6! !4 ! 12! \! !13
! !--+ ! !
(1) gnd------! !5 ! !--- gnd 5 7
7! ! ! !15
(2) +5V------! ! ! ! (dsr 6 6)
14+-----+ ! !
! ! (dcd 1 8)
! !
! ! (dtr 4 20)
c2 ! !+ ! !
| (2) +5v------------! !-----! ! (ri 9 22)
! ! 2! !
! !
c4 +! ! ! !
(1) gnd------------! !-----! !
! ! 6! !
! !
c1 ! !+ ! !
+-! !-----! !
! ! ! 1! !
! ! !
+---------! !
3! !
c3 ! !+ ! !
+-! !-----! !
! ! ! 4! !
! ! !
+---------! !
5! !
! !
(1) gnd--------------------! !
15! !
! !
(2) +5V--------------------! !
16+----------+
(x) - connections required for a normal RS232-Interface.
*x* - additional connections to go up to 9600 baud.
| remark: The MAX232 needs 4 capacitors to generate +/- 10 volts to
| drive the RS-232 unit. The values are as such: (in uF)
| IC C1 C2 C3 C4
| ------- --- --- --- ---
| MAX232 1.0 1.0 1.0 1.0
| MAX232A 0.1 0.1 0.1 0.1
| MAX232E 1.0 1.0 1.0 1.0
notes :
**1 Some other interfaces use this pin. In that case you have to cu=
t
the connection and change it to new way. PB7 is normally used t=
o
receive the DSR (Data Set Ready) signal from the modem, but this=
signal isn't supported by all terminal programs. Because of the=
new
wiring DSR will seem to be active to all 'old' programs, so that=
there won't be any troubles.
Top view of the used ICs:
74 LS 00 MAX232
+------+ +------+
inA -!1 \/14!- vcc +cap1 -!1 \/16!- Vcc
inA -! !- inC +cap2 -! !- GND
outA -! !- inC -cap1 -! !- RS232/txd
inB -! !- outC +cap3 -! !- RS232/cts
inB -! !- inD -cap3 -! !- TTL/^cts
outB -! !- inD -cap4 -! !- TTL/txd
gnd -!7 8!- outD RS232/rts -! !- TTL/^rts
+------+ RS232/rxd -!8 9!- TTL/rxd
+------+
4 X NAND
2 X RS232 transmitter
2 X RS232 receiver
user port (view on C64s backside)
1 2 3 4 5 6 7 8 9 10 11 12 (top)
------------------------------------
A B C D E F H J K L M N (bottom)
1 - GND A - GND
2 - +5V B - ^flag2
3 - ^reset C - pb0
4 - cnt1 D - pb1
5 - sp1 E - pb2
6 - cnt2 F - pb3
7 - sp2 H - pb4
8 - ^pc2 J - pb5
9 - atn in K - pb6
10- 9V AC L - pb7
11- 9V AC M - pa2
12- GND N - GND
12.6. How can I determine how much VDC video memory is in my C128?
Here are two ways to detect whether the C128 VDC chip has 16kB or 64kB
of RAM.
1 rem fred's nifty program to determine size of 8563 dram
5 w=3Ddec("cdcc"):r=3Ddec("cdda")
10 bank15: ad=3Ddec("d600"): da=3Dad+1 :rem setup ml
20 pokead,28: s=3Dpeek(da): pokeda,63 :rem select 64k
30 i=3D16896: sysw,i/256,18:sysw,iand255,19:sysw,85,31 :rem write $55
40 i=3D16896: sysw,i/256,18:sysw,iand255,19:sysr,,31:rregc1 :rem read h=
ere
50 i=3D17152: sysw,i/256,18:sysw,iand255,19:sysr,,31:rregc2 :rem and he=
re
60 i=3D16896: sysw,i/256,18:sysw,iand255,19:sysw,170,31 :rem write $aa
70 i=3D16896: sysw,i/256,18:sysw,iand255,19:sysr,,31:rregc3 :rem read h=
ere
80 i=3D17152: sysw,i/256,18:sysw,iand255,19:sysr,,31:rregc4 :rem and he=
re
90 pokead,28: pokeda,s:sysdec("ff62") :rem restore 16/64k
95 print chr$(14)chr$(147)
100 if c1=3Dc2 and c3=3Dc4 then print "16K": else print"64K" :rem did =
it echo?
110 end
or:
POKE DEC("D600"),28:POKE DEC("D601"),63:SYS DEC("FF62"):SCNCLR
If you have 16k the screen will fill with zeros; 64k will give you a
ready prompt.
12.7. How can I convert my C64 to run on battery power?
The July, 1990 issue of 73 Amateur Radio has an article on converting
the C64 and 1541 to run on DC power. I'll summarize the C64 portion:
DC Power Conversion for the C64
1. Locate component CR4 on the circuit board. Mark the positive hole on
the board. Desolder and remove the component.
2. Rest :-)
3. Connect the marked hole to +12V.
4. Desolder and remove VR1. Looking down at the component side of the
board, connect a wire from the vacant right hand hole and run it to
+12V.
5. Locate L5. It will probably be in one of two locations. On the older
version, desolder the right hand leg and lift. On the newer version,
desolder the top leg and lift.
6. Connect +5V to the empty L5 hole.
7. Locate the R37 and R100 pads. Use a continuity meter to find the pad=
s
that are connected. Desolder and lift these legs. You will insert a
60 Hz clock here.
8. You could generate this clock using a variety of methods. Here's one=
:
+12V
__________________________|
| |
| C1 R1 ______|_______
|-)|-+-/\/\/-+-----|6 8 |
| | \ | |
| XTAL1 / R2 | MM5369 |
| | \ | |
|-)|-+-------+-----|5 1|---> 60 Hz (to R37 pad)
C2 | 2 |
---------------
|
GND
C1 =3D 30 pF
C2 =3D 3-15 pF (variable)
XTAL1 =3D 3.57 MHz crystal
R1 =3D 1k
R2 =3D 10M
It is suggested that you use a short length of shielded coax cable to
connect the 60 Hz output to the R37/R100 pad.
Also, it is suggested that you use a frequency counter to tune the abov=
e
circuit to exactly 60 Hz.
This conversion would work well if you wanted to use the C64 in a car o=
r powered
by a solar set-up.
12.7. How do I build a GEOCable interface?
The interface is simply a cable between the printer and the user port. =
The pinout is as follows:
pin on 64 pin on printer
a Ground 33 Grond
b Flag 2 11 Busy
c PB0 2 Data 1
d PB1 3 Data 2
e PB2 4 Data 3
f PB3 5 Data 4
h PB4 6 Data 5
j PB5 7 Data 6
k PB6 8 Data 7
l PB7 9 Data 8
m PA2 1 Strobe
n Ground 16 Ground
Superscript uses the same cable, but has the following change:
b Flag 2 10 Acknowledge
Either wiring will work with either program, but the GEOCable wiring
is preferred.
+ 12.8. How do I connect my Commodore printer to an IBM PC?
+ Look for the plans for the interface at:
+ http://www.coast.net/simtel/msdos/info/c64topc.zip
#! rnews 32909
Path: pravda.aa.msen.com!news1.best.com!news.texas.net!newsfeed.concentri=
c.net!news-master!mariner.cris.com!Gaelyne
From: Gaelyne@cris.com (Gaelyne Moranec)
Newsgroups: comp.sys.cbm
Subject: COMP.SYS.CBM: General FAQ, v3.1 Part 8/9
Supersedes: <cbmmainfaq80496@msen.com>
Followup-To: comp.sys.cbm
Date: 5 Jul 1996 06:26:30 GMT
Organization: Brain Innovations, Inc.
Lines: 710
Approved: news-answers-request@MIT.EDU
Message-ID: <cbmmainfaq80596@msen.com>
Reply-To: brain@mail.msen.com
NNTP-Posting-Host: mariner.cris.com
Summary: This posting contains answers to questions that commonly surface=
in
comp.sys.cbm. This posting will tell you enough to get your
computer connected to a network, fixed, and/or enhanced. This f=
ile
should be read by new users of comp.sys.cbm before posting to th=
e
group. It should also be proofread by users who are currently
active in comp.sys.cbm.
Keywords: CBM FAQ Help List C64 C128 VIC Modem
X-Newsreader: TIN [version 1.2 PL2]
Archive-name: cbm-main-faq.3.1.p8
Comp-answers-archive-name: commodore/main-faq/part8
News-answers-archive-name: commodore/main-faq/part8
Comp-sys-cbm-archive-name: main-faq/part8
Version: 3.1
Last-modified: 1996/05/15
-----------------------------------------------------------------------=
----
Table of Contents (for this file)
---------------------------------
13. Enhancements
13.1. How do I increase my disk drive's transfer speed?
13.1.1. What is a Fastloader?
13.1.2. What is a ROM replacement?
13.1.3. What are the disadvantages to using a drive enhancement?
13.1.4. What other things can I do to speed up the drive?
13.2. How do I expand my disk drive's capacity?
13.2.1. What is a Hard Drive? Who sells them?
13.2.2. What is 64NET?
+ 13.2.3. What is SERVER64?
13.3. How do I expand my computer's RAM capacity?
13.3.1. What is a Ram Expansion Unit?
13.3.2. What is a geoRAM Unit?
13.3.3. What is battery backed GeoRAM (BBGRam)?
13.3.4. What is a RAMLink?
13.3.5. What is a RAMDrive?
13.3.6. How do I expand my C128 Video RAM?
13.3.7. How do I expand my C64 internally?
13.3.8. How do I expand my C128 internally?
13.4. How do I increase my computer's speed?
13.4.1. How do I increase my Commodore 64's speed?
13.4.2. How do I increase my Commodore 128's speed?
13.4.3. Can I speed up other Commodore computers?
13.5. How do I increase my computer screen's resolution?
13.5.1. How do I increase my Commodore 64's screen resolution?
13.5.2. How do I increase my Commodore 128's screen resolution?
13.5.3. How do I increase other CBM computers' resolutions?
13.6. How do I increase my computer's serial transfer speed?
13.7. How do I increase my computer's sound quality?
13.8. What other ways can I expand my Commodore computer?
-----------------------------------------------------------------------=
----
13. Enhancements
If you like to tinker with your Commodore to get the best possible
performance out of it, these suggestions and products may help you
in your quest.
13.1. How do I increase my disk drive's transfer speed?
Since the introduction of the Commodore VIC-20 and the slow serial bus,
Commodore owners have been plagued by slow disk access. There are two
ways to allevaiet this problem, fastloaders and ROM replacements.
13.1.1. What is a Fastloader?
The Commodore 1541 drive and any drive attached to a VIC-20, C64, Plus =
4,
C116, or C16 suffer from very slow read and write times. This is cause=
d
by Commodore's haste in "economizing" the IEEE-488 bus used in the PET
series of Commodore computers into the serial bus. The IEEE-488 bus
transferred 8 bits of data at a time, and performed some synchronizatio=
n
steps, or handshaking, between bytes. Commodore reduced the path to 1 =
bit
but kept most of the original handshaking, most of which is redundant w=
hen
transferring 1 bit at a time. Early on, some developers noted that, si=
nce
the 1541 drive was intelligent enough to execute a program loaded into =
its
RAM, and the Commodore operating system calls to do disk I/O could be
bypassed, they could write software that sped up the loading process by
modifying or completely changing the protocol used on the serial bus. =
This
is the idea behind fastload cartridges like FastLoad, Mach 5, etc...
13.1.2. What is a ROM replacement?
As programs became more complex, some programs would not operate with
this approach. Thus, the developers then rewrote parts of the Commodor=
e
operating system on both the computer and the disk drive, and replaced =
the
parts of them that did disk I/O with new pieces of code. This is the i=
dea
behind JiffyDos and others.
The basic idea in speeding up the disk drive is to use more than 1 line
to transfer data, effectively doubling the transfer speed. Then, reduc=
e
synchronization requirements in the protocol to a bare minimum, as
synchronizing time is time not being used to do transfers.
The fastload cartridges are handicapped somewhat by the need to transfe=
r
the portion of the program that runs in the disk drive to the drive usi=
ng
the slow speed evry time the drive is used. This can be alleviated
somewhat, but the replacement operating system replacement products lik=
e
JiffyDos win the race since they do not need to load code into the driv=
e,
as it is already there.
13.1.3. What are the disadvantages to using a drive enhancement?
The products are not 100% compatible, as they sacrifice reliability for
speed somewhat. That means that a program that does not load due to an
error while using a fastload product will probably load without the
fastloading enabled. Also, some programs can not handle the change in
loading or reading speed, so these enhancements yield about 90%
compatibility.
13.1.4. What other things can I do to speed up the drive?
You can also increase the speed of disk drive operation by organizing
consecutive parts of a file on disk to fall a certain number of disk
sectors apart. This is called the interleave or interleaving factor.
Normally, a 1541 disk drive space consecutive parts of a file 10 sector=
s
apart, but you can change that a little to minimize the time needed to =
find
consecutive parts of a file.
Also, the C128 in 128 mode hooked up to a 1571 or 1581 has a built-in
fastloading scheme called burst loading. Therefore, if you are in 128 =
mode
and hooked up to a 1581 or a 1571, you already have this feature. Howe=
ver,
the 128 in 64 mode reverts back to the old slow serial routines, and th=
e 128
in any mode using a 1541 cannot use the burst load routines.
13.2. How do I expand my disk drive's capacity?
Software Support International sells the 1541 RAMBoard, which will incr=
ease
you 1541's memory. SSI used to market a similar board for the 1571, bu=
t they
have depleted stock and no longer carry it.
You can also expand your disk drives on board RAM capacity, and use tha=
t extra
memory for better archiving performance.
+ 13.2.1. What is a Hard Drive? Who sells them?
+ A hard disk drive is a non-removable ramdom access medium similar that
+ allows one to store very large quantities of data. Hard disk drives
+ are mandatory on most newer computer systems, but are usually optional
+ for Commodore 8-bit computers. However, the faster load time, the
+ greater capacity, and the ease of use make them desirable.
CMD sells hard drives for the Commodore 64 and 128. They range in size=
s
from 50 Megabytes on up. In comparison, a Commodore 1581 drive holds
.8 Megabytes.
+ 13.2.2. What is 64NET?
If you have access to an IBM of some kind (preferrably with a hard driv=
e),
you can use a product called 64NET to hook the drive up to the Commodor=
e.
64NET consists of a cable which connects the CBM User Port and the IBM
Parallel Port together, and a program that runs on both machines. The
program on the IBM is a standard application, but the CBM part is a wed=
ge,
so it should integrate seamlessly with some programs. There is now jus=
t
one copy of the product. Registered users simply receive a 64NET.KEY
file that enables SAVING. There is a student discount of AUS$40.00.
The product is at version 1.82.45N BETA and has full OPEN/CLOSE/READ/RE=
ADST
support, can support 4 gigabyte IBM partitions, and have a built-in
off-board monitor which includes some dos wedge functions. The
IBM programs have link-based helpsystems and will run on any IBM
machine. The registered version allows saving of files, wheras the PD
version does not.
The registered BETA version is available (with upgrade to final version
free) for AUS$50.00, while the unregistered version is free. These
prices do not include the cable that is required for operation. The ca=
ble,
program, and more information can be received from Paul Gardner-Stephen=
at
gardners@ist.flinders.edu.au. Also, the system can be ordered from:
In Europe:
Performance Peripherals Europe
Germany
+49 2227 3221
Michael Renz
+49 2227 3221
And in Australia from:
Russell Alphey
+61 3 4278558 (A/H
r.alphey@dce.vic.gov.au
Paul Gardner-Stephen
+61 8 277 7479 (A/H)
Versions are available for the C64 and C128, and a C65 version is close=
to
completion.
+ 13.2.3. What is SERVER64?
SERVER64 is a product like 64NET, in that it allows you to use an IBM P=
C
as a large hard drive. However, unlike 64NET, SERVER64 does not requir=
e
a connection to the user port and a special boot program be run. Inste=
ad,
the system uses an X1541 cable to attach the Commodore 64 serial port t=
o
an IBM parallel port.
The product is available at:
ftp://ccnga.uwaterloo.ca/pub/incoming/SERVER64.ZIP
Documentation is available at:
ftp://ccnga.uwaterloo.ca/pub/incoming/SERVER64.TXT
Both are expected to move to the /pub/cbm/emulation directory soon.
13.3. How do I expand my computer's RAM capacity?
13.3.1. What is a Ram Expansion Unit?
The original form of RAM expansion available to the C64 and C128 were t=
he
Commodore REUs (Ram Expansion Units). These REUs plug into the cartrid=
ge
port, and provide 128K (the C=3D1700), 256K (the C=3D1764), or 512K (th=
e C=3D1750)
of additional RAM.
This RAM is not true system RAM however; simply adding a 512K REU to yo=
ur
system does NOT mean that your word processor will suddenly be able to =
edit
512K larger documents. A REU will only be used by a program that was
written to take advantage of an REU. As a caveat on this, you can use =
your
REU as additional RAM for a RAMLink .
An REU can be used as a Commodore Disk Drive by running the program
RAMDOS. This will allow users to save and load files from the REU.
If you are using CP/M, the REU can be configured to act like a disk dri=
ve
under CP/M.
Although the C=3D1764 was originally advertised for the C64, and the 17=
00 and
1750 for the C128, any of the three RAM expanders will work with either=
the
C64 or the C128. Note that if you want to use any of them on the C64, =
you
need a heavy duty power supply. The 1764 comes with such a power suppl=
y.
There are hardware hacks that will expand a 1700 or a 1764 to 512K;
additionally, a 512K REU can be expanded to 1 Meg or more. The plans a=
re
at ftp://ccnga.uwaterloo.ca/pub/cbm/hardware. While it appears complet=
ely
safe to upgrade your REU to 1 Meg, there have been some reports of prob=
lems
with REU's upgraded to 2 Megs. Sometimes the REU will work fine for a =
while,
then fail. If you are upgrading your REU, it would probably be wise to=
stop
at 1 Meg. If you are still memory hungry, consider a CMD RAMLink.
If you don't wish to do it yourself, there are people who will do it fo=
r
you, for a fee. The following individual will do RAM expansions on the=
17xx series. He Has lots of experience doing these modifications. His
current quoted price for expanding a 1750 from 512k to 1 meg is $60. Ca=
ll
for the latest prices. In addition he can do repairs on the RAM.
Raymond Day
9601 Morton Taylor Road
Belleville, MI 48111-1328
r.day@genie.geis.com (Contact)
(313) 699-6727
On a similar note, Software Support International sells a device called
the 1750 clone, which functions just like a 1750. It is not as expanda=
ble
as the real 1750, but can be used where a 1750 is recommended or requir=
ed.
13.3.2. What is a geoRAM Unit?
When Commodore REUs became hard to find several years back, Berkeley
Softworks introduced geoRAM, which is a 512K RAM expander. This RAM
expander gives you all of the advantages of a 1750 with GEOS. However,=
it is
not 1750 compatible, so it will not work like a 1750 outside of GEOS; i=
t is
transparent to other programs. (As a caveat on this, see the info on
RAMLink)). DesTerm128 2.0 will not work with a geoRAM plugged in. A
special version of GEOS 2.0 (which is bundled with geoRAM) is necessary=
to
use geoRAM. No additional power supply is necessary to use geoRAM. Th=
e
geoRAM can be upgraded to 2MB also. Contact Jens-Michael Gross at
grossibr@buran.fb10.tu-berlin.de for information on upgrading the geoRA=
M.
The geoRAM can be used without GEOS if it is installed in a RAMDrive or
RAMLink. See Section 13.3.4 for information.
13.3.3. What is battery backed GeoRAM (BBGRam)?
Battery Backed GeoRam is a products marketed by Performance Peripherals
Incorporated. The unit is actually a geoRAM clone, but has battery bac=
kup
included within the unit. The unit can be ordered in the following
configurations:
512kBytes $92.97US
1MBytes $123.97US
2MBytes $165.97US
13.3.4. What is a RAMLink?
RAMLink (RL) is a RAM expansion devices from CMD. The RAM in these dev=
ices
can be partitioned into native mode partitions (with dynamically alloca=
ted
subdirectories), or 1541, 1571, or 1581 emulating partitions. Thanks t=
o the
15x1 emulating partitions, software does not have to be specifically wr=
itten
to run with a RL. The RL devices should appear as a disk drive to most
programs. One notable exception is DesTerm v2.00, which does not work
with the RL. There are few other exceptions, and no major commercial
program has a problem running with an RL . The deciding factor seems t=
o be
whether or not the program uses a drive's internal ram. The RL does no=
t
'mimic' having this type of internal drive ram, and if a program relies=
upon this it will not run. The heavily copy protected Digital Solution=
s'
programs use this drive ram for its burst loading routines. So, even
though a Maverick/RamBoard combination will write a copy of it to the R=
L,
it will fail to boot. However, these programs, once booted from a 1571=
,
will use and access all of RL's many functions for lightening fast load=
s
and saves.
RL has ts own power sources, separate from the computer. When you turn=
off the computer, the power to the RL is left on, leaving its contents
intact. This power supply always remains on. (For safety from power
outages, battery backups are also available.)
RAMLink is a powerful, large device. It can be configured from 0 to
up to 16 Megs of RAM, using industry standard 1x8 (100ns) 1 Meg and 4 M=
eg
SIMMs.(1x9, and faster Simms can be used.) The RL is constructed so th=
at
the user may easily add additional SIMMs at any time.
RAMLink has a port into which you can plug a Commodore REU or a geoRAM.
You can configure RAMLink to either leave this RAM device alone, or to =
use
the REU/geoRAM's RAM just as if it were part of the RAMLink's RAM. A
RAMLink also has a pass-through port, in which you can plug a normal
C64/C128 cartridge, and a parallel port for a CMD hard drive. The latt=
er
greatly improves the transfer speed of data between your computer and t=
he
hard drive.
If you have a geoRAM, the geoRAM can be plugged into the RL . the
geoRAM then acts as an extra piece of ram-based disk storage.
The RL comes with a very well documented, thorough, and easily
referenced User Manual. Contact CMD for more details.