========
Newsgroups: comp.sys.cbm
Subject: COMP.SYS.CBM: General FAQ, v3.1 Part 9/9
From: brain@mail.msen.com (Jim Brain)
Date: 13 Aug 1996 01:16:51 -0400


X-Posted-By: YPost, version 0.08


Archive-name: cbm-main-faq.3.1.p9
Comp-answers-archive-name: commodore/main-faq/part9
News-answers-archive-name: commodore/main-faq/part9
Comp-sys-cbm-archive-name: main-faq/part9
Version: 3.1
Last-modified: 1996/08/12
                       	

  ---------------------------------------------------------------------------
  
  Table of Contents (for this file)
  ---------------------------------
  
  14.  Programming
  14.1.  What Programming Languages are available?
  14.2.  What is a Cross Assembler?  How do I use one?
+ 14.3   What is an "undocumented opcode"?
   
  15.  User Groups

  16.  Sales and Service
 do I purchase Commodore Equipment and Software?
  16.2.  Where do I get equipment serviced?
  16.3.  How do I know who to buy from or request service   
  17. Miscellaneous
  17.1.  How fast does a Commodore 64 run?
  17.2.  How can a turn my NTSC-M 64 into a PAL-B 64 or vice versa?
  17.3.  What does this IC number mean?
+ 17.4.  What are the differences between C64 ROM Revisions?
     
  18. Credits   

  ---------------------------------------------------------------------------
  

  14.  Programming
  
  
  14.1.  What Programming Languages are available?
 
  The following programming languages are known to exist for the CBM
  computers:

  Ada
  APL
  Assembly Language
  BASIC (interpreted and compiled)
  BASIC extenders
  C
  COBOL
  COMAL
  FORTH
  FORTRAN
  LISP
  LOGO
  MUMPS
  Pascal
  PILOT
 
  You name it, and it is probably available for the Commodore computer
  system.  The list of supported languages availeble for the Commodore
  8 bit computer systems is much too large to fir in the FAQ, but they are
  available at http://www.wimsey.com/~danf/cbm/languages.html.

  
  14.2.  What is a Cross Assembler?  How do I use one?
  
  A cross assembler is a program that runs on one computer and generates
  code for another computer.  Usually, a non 8-bit CBM machine generates
  the code using this program, but it can be another 64 hooked in some way
  to a "target" 64.  Whatever the caes that can be
  used:
  
  as6502          linking 6502 cross assembler
  masm6502        6502 macro cross-assembler
  ps65a12         Unix format 6502 cross assembler
  svasm02         6502 cross assembler
  xasm220         many-targeted cross assemblers
  smal6502        linking macro assembler written in portable PASCAL

  A more detailed list can be found at:
  http://www.wimsey.com/~danf/cbm/cross-development.html

  For all cross assemblers, the user will most likely benefit from a way to
  transm from the source platform to the target platform.  
  See Section 7 for information on products that will help transfer the
  files.


  14.3   What is an "undocumented opcode"?

  In the 65XX CPU line, each machine language instruction is a single byte,
  which allows for 256 instruction types, or opcodes.  However, there are
  fewer than 256 defined.  When designing the 65XX line, the designers, 
  needing to keep complexity down, decided to treat the extra opcode
  positions as "don't care" opcodes, where no effort would be made to makpcodes do anything special.  Since the opcodes are arranged in a
  16X16 matrix, with a row or column cotaining opcodes that perform similar
  operations, an undefined opcode in the matrix can have the behavior of
 its row or column or both.  These opcodes are called
  "illegal" or "undocumented" opcodes, and are occasionally used by
  demo coders to accomplish special timing effects, or by software
  programmers for copy protection code. ut these opcodes
  and what each does, the get the 64doc file at 
  ftp://ftp.funet.fi/pub/cbm/documents/64doc or visit a cbm emulator forum.


  15.  User Groups
  
  User's Groups fulfill a major function for Commodore owners.place to meet other users, discuss problems and solutions for computing, 
  teach and learn information about their machinee shared
  and friendships are made.  The Commodore community is made up largely by
  real or virtual user's groups.
  
  A complete list of Commodore user groups can be found at 
| http://www.msen.com/~brain/pub/cbm-ug-list.1.0.txt
  This file is also available from Jim Brain's MAILSERV server as file
  cbm-ug-list.txt.  (See Section 6.5.2 for directions on using the MAILSERV 
  sore owners are encouraged to join group to help keep these
  vital organizations around.  In addition, most user groups publish
  newsletters 


  16.  Sales and Service
   
  Sooner or later, every Commodore owner will need to get his or her
  computer serviced, add another peripheral, or simply purchase some
  enhancement hardware or software.  Contrary to popular belief, there
  is a large base of hardwarepliers and service centers.
   
   
  16.1.  Where do I purchase Commodore Equipment and Software?
   
  ESCOM (holder of the Commodore patents and copyrights), does not curre
  Commodore 64 and Commodore 128 computers.

  ESCOM also does not manufacture software for the Com However, many companies still sell software for the Commodore line.

  A complete list of Commodore hardware, peripheral, and software suppliers
| is available at http://www.msen.com/~brain/pub/cbm-supply-lis
  directions on using MAILSERV).


  16.2.  Where do I get equipment serviced?
   
  There are a number of repair facilities around that will bring your trusty
  Commodore computer up to speed again.  Please loo below for one
  that might be able to help you.  If that doesn't turn up anything, check
  with your local User's Group.
  
  A complete list of Commodore software and hardware repair facilities can
  be found at http://www.msen.com/~brain/pub/cbm-repair.txt or at Jim  MAILSERV server as file cbm-repair.txt.  (See Section 6.5.2 for dire
  on using MAILSERV)

   
  16.3.  How do I know who to buy from or request service from?
   
  The information provided in this file does not imply that a company is
  reputa in business.  It is best to use the above information
  as a starting point, and contact others who can discuss the various
  manufacturers and repair facilities listed above.
   
   
  17. Miscellaneous
  
  Well, this is where the chaff falowing questions are either
  too new to categorize or do not fit into a category.  
  
  
  17.1.  How fast does a Commodore 64 run?
  
  If you are using a stock Commodore 64, the CPU clock frequency is a function
  of the video timing frequency, which is slightly different for differing
  countries.  If you haveC64 (Common in Europe), the computer 
  is running at 985248.444Hz.  If you are using an NTSC-M C64 (Common in the 
  USA), the computer is running slightly faster, at 1022727.143Hz.  
  
  
  17.2.  How can a turn my NTSC-M 64 into a PAL-B 64 or vice versa?
  
  Changing a C64 from stock PAL-B to stock NTSC-M or vice versa
  requires swapping in the approproate VIC-II chip and the appropriate
  crystal, as well as changing a jumper on the motherboard (The jumper
  has printing near it that indicates whether to cut or connect the jumper).
  Also, if you have a version 1 KERNAL ROM and want to use the built-in
  RS-232 routines, you need to either swap KERNAL ROMs with the other 
  computer (not recommended), or obtain a revision 3 KERNAL (recommended).  
  
  Now, if maintaining stock operation is not a complete must, or if you
  just want to tinker, the crystal and jumper modifications can be made
  optional.  
  
  The VIC-II chip has a relaxed tolerance for timing, so it is possible to 
  run an NTSC-M VIC-II with a PAL-B crystal and jumper settings.
  The cssible as well.  Since the crystal frequency is used to 
  generate the frequencies for the TV and monitor output, your TV or
  monitor may not like the resuling hybrid signal very well, but it won't 
  break anythiIn addtion, the jumper indicated above determines the divisor used to scale 
  down the crystal frequency for the CPU.  For PAL-B units, the divisor is 
  18, and for NTSC-M units the divisor is 14.  The Commodore 64 will operate 
  regardless of the crystal frequency and state of this jumper.  Therefore, 
  to speed up a 64, one can install a PAL-B crystal (17734472Hz) and change
  the jumper to use the NTSC divisor (14) to increase the operating
  speed of the machine to 1266748Hz.  However, note that any operations (disk,
  rs-232, special VIC tricks) that require synchronized timing may fail in 
  this "non-stock" scenario.
  
   
  17.3.  What does this IC number mean?
  
  Here are a few Commodore IC numbers and their functions.  Note that this
| is an incomplete list.  A more comprehensive list is called csg.chips.info
  and is at ftp.funet.fi.        

  For the VIC-20:

  Mnemonic         PN#   Alt. PN#
  CPU              6502
  VIC-I (NTSC-M)   6560
  VIC-I (PAL-B)    6561
  CPU              6502

  For the C-64 and C-64C:

  Mnemonic         PN#   Alt. PN#
  CPU              6510
  VIC-II (NTSC-M)  6567  8562?
  VIC-II (PAL-B)   6569  8565
  VIC-II (PAL-N)   6572
  VIC-II (PAL-M)   6573
  SID              6581  6582  8580
  
  For the C-128(D):

  Mnemonic         PN#   Alt. PN#     Notes:
  CPU              8502
  VIC-IIe (NTSC-M) 8564
  VIC-IIe (PAL-B)  8566
  VIC-IIe (PAL-N)  8569
| DVDC             8563  8568         (get r9a or r9b if possible)
  SID              6581  6582  8580

  Differences between 64 boards:

  The older boards had discrete LSI logic and a PLA chip.  The newer
  boards put all the PLA and LSI logic into p.  On the
  older boards, the KERNAL and BASIC ROMs were separate, while they are
  combined in the newer design.
  
  There are two different models of the narrow board.  One has Color RAM,
  while the other does not.  The ASIC chip includes the PLA and 7 TTL chips,
  and the Color RAM on some machines machines.
  
  The new models use 9 volt versions 8580 SID, while older models use the
  6581 12 volt SID.  The VIC chip (6567 NTSC-M, 6569 PAL-B) has been replaced
  with the 8562 (NTSC-M) and 8565 (PAL-B) on newer models.
  
  Both BASIC 2.0 and the KERNAL ROM have been combined into one ROM for
  the C64C/G/GS.  This ROM is the same as is used on the C128 in C64 mode.
  The ROM is indentical except for nationality differences.

   
+ 17.4.  What are the differences between C64 ROM Revisions?

+ Well, they have a number of them, and each difference is documented and
+ explained in "The Commodore 64 Whole Memory Guide" by Tim Arnot.
+ (ftp://x2ftp.oulu.fi/pub/cbm/docs/c64-kernel.diffs)
		  			    

  18. Credits   
  
  I want to extend my thanks to t people for their help in
  providing correct, up-to-date information in this FAQ:

  Fred Mueller, who maintained this FAQ before I.
  Everyone who helped add to the 1.4 FAQ material to make the 2.0-2.2 FAQ.
  Everyone w add to the 2.2 FAQ to make the 3.0 FAQ.
+ Adam Vardy, with corrections to S.
+ Roger Long, for information on Random Magazine.
+ Jouko Valta, for information on C65 archives and kernal diffs.
+ Tom Cwikla, for info on ANADISK.
+ Alan Jones, for info on a new newsgroup mail gateway.
+ Antony Gibbs, for info on Commodore Zone.
+ Gaelyne Moranec, for info on GIF viewers.
+ John Keyerleber, for info on plans for CBM printer to PC interface.
+ David Gahris, for numerous WWW addresses.
+ Marc Frank, for error in cbm-supply-list.txt filename.
+ Jack Vander White, for address updates.
+ Jeff Daniels, for info on his company.
+ Paul MacArthur, for info on X1541 cable source.
+ Craig Bruce, for info on his FTP Mail Server.
+ Dirk Moell, for info on blinks on 8050.
+ Bob Masse, for info on C128 VDC IC revisions.
+ Alan Jones, for corrections to Daniel Dallmann's RS-232 interface.
+ Donald Ayers, for information on his GRASSROOTS #1 Disk.
+ Daniel Kahlin, for info on Over5.
+ Dallas Legan, for info on Transactor Index. 
+ Andre Fachat, for info on VICE.
+ Allen Smith, for info on COMPUTERSMITH Internet updates.
+ Jack vanderwhite, for updates on COMMODORE CEE BBS phone.
+ Jeff Jones, for updates on LOADSTAR prices.
+ Frank Ellert, for info on more UNIX-like OSes.
+ Paul McAleer, for informaiton on Micro-Bytes.
+ J. E. Sears, for info on PPI.
+ Jeff Jones, for information on LOADSTAR Letter going commercial.
+ Chris MCEE, for corrections on Demo terms.
+ R.T. Cunningham, for updates on SuperCPU dates and info.
+ Beth Gladen, for uncovering a bug in user group list filename.
+ Nhat-Viet Phi, for info on his RAMLink User's List.
+ Holger Heimes, for info on extra BBS numbers to get FAQ at.
+ Scott Eggleston, with new email info and merger of Underground info.
+ Jarno Lamberg, for corrections to 17.4 URL.
+ Eric Hoetzel, for info on 6502CC mailing list.
+ Jeff Daniels, for updates on the VIC newsletter.
+ Nick Rossi, for information on Novaterm 9.6.
+ Walt Roth, for corrections on posting frequency.

	 

-- 
Jim Brain, Embedded System Designer, Brain Innovations, Inc. (BII)(offline sig)
j.brain@ieee.org   "Above views DO reflect my employer, since I'm my employer"
Dabbling in WWW, Embedded Systems, VR, Old CBM computers, and Good Times!  -Me-
<a href=http://www.msen.com/~brain/>Jim Brain: BII, VR, and CBM info</a>
