home *** CD-ROM | disk | FTP | other *** search
- u
- The 6502-RAMROM as drive expander
- ==============================
- i Wolfgang Moser and Nicolas Welte
-
- A short overview of the 6502
- microprocessor based hardware
- extension, that was designed by
- Nicolas Welte . It contains a
- dedicated test report with my personal
- experiences and some application
- examples. Originally the 6502-RAMROM
- [6502-RamRom inserted into 1541 drive,
- side view,
-
- was conceived by Nicolas Welte and
- Paul Fvrster for the Commodore PET
- series computers as a RAM and ROM
- expansion and diagnostic board,
- leading to it's first name: PETRAM.
- Based upon many discussions with
- Nicolas in the design phase, he (we ?)
- decided to make use of a Flash-ROM
- chip instead of just EPROMs. And other
- 6502 microprocessor based Commodore
- computers like the VIC20 or the 1541
- disk drive should be taken into
- account.
-
- The processor adaptor board can be
- configured for different systems by
- simply replacing one little GAL 16V8
- programmable logic chip. To keep the
- hardware simple, the C64 computer or
- other non pure 6502 micro's are not
- supported.
-
- 6502-RAMROM prototype test report from
- Womo, 2003-02-07 HardwareSome weeks
- after Nicolas received his
- professionally manufactured printed
- circuit boards (PCBs) of the
- 6502-RAMROM I ordered two of them
- [Delivered 6502-RamRom and
- Flash-Adaptor PCBs,
-
- along with some of the needed
- components. Since I don't own a PET
- computer nor a VIC20, I ordered only
- two GALs for the Commodore 15x1 drive
- replacement configuration. Since I can
- call myself an experienced electronic
- craftsman, soldering the board was no
- big problem. Although I have to state
- that, for a beginner, it may be too
- hard. Please look
-
- onto Nicolas' construction page and
- carefully decide, if you feel able to
- solder the board. If not, you should
- order the ready-built extension board
- [6502-RamRom top view,
- [6502-RamRom bottom view
- [Soldered optional SMD-RAM,
-
- At this time, the Flash update
- software wasn't available for disk
- drive in-circuit updates, so I had to
- use my IBM-PC based c't-Flasher for
- burning some contents into the ROMs. I
- tested several speeder ROMs, flashed
- different versions into the four ROM
- banks and switched them forth and
- back. Everything worked fine, cool.
- Dolphin-DOS 2.0Before I could test the
- RAM options I needed to solve some
- problems. I wanted to test out the
- Dolphin-DOS 2.0 floppy speeder ROM
- which makes use of additional RAM .
- But for this and other speeder systems
- I needed to install a parallel cable
- from the floppy's 6522 VIA chip to my
- C64's user port. And I needed a simple
- solution to quickly test out different
- C64 Kernal replacements.The second was
- no problem, because I also ordered
- some Flash-ROM [C64 Flash-Adapter
- Kernal ROMswitch,
- top view, [Inserted C64
- Flash-Adapter Kernal ROM switch,]
-
- adaptor PCBs and could easily build a
- Flash-ROM to C64 Kernal adaptor.
- Inserting a parallel cable into my
- 1541 drive was a little bit
- problematic, because the 6502-RAMROM
- board overlays the 6522 VIA chip
- location. First I used some additional
- 40 pin sockets to lift the 6502-RAMROM
- a bit higher, but I didn't feel happy
- with it; the case couldn't be closed
- now. So I built a very special
- lowest-profile parallel cable adaptor.
- [1541 low profile parallel cable
- adaptor, bottom view,
- [1541 low profile parallel cable
- adaptor, top view,
-
- This all done, I first tested my
- beloved SpeedDOS (35 and 40 tracks)
- and made sure, that it worked fine. I
- also tested some of the most important
- copy programs to make sure, that the
- parallel cable and the ROM
- replacements don't fail. Preparations
- for the test of Dolphin-DOS 2.0 ] were
- done, flashing the 1541 drive ROM and
- C64 Kernal. I configured the RAM
- option switches to DD2 and made the
- first steps. Anything looked fine. And
- wow, DD2 isn't as slow as I thought
- all the time. Although beaten by
- Professional-DOS working with it
- brings fun. I couldn't see any
- problems like load or CRC errors, all
- games loaded fine and were playable.
- So the RAM seemed to work fine also.
- [Space between parallel cable
- adaptorand 6502-RamRom (view 1),
- [Space between parallel cable adaptor
- and 6502-RamRom (view 2), [Space
- between parallel cable adaptorand
- 6502-RamRom (lifted),
-
- In-circuit flashing The next test
- phase came, when Nicolas was finished
- with the in-circuit drive flashing
- software . This piece of software was
- designed a very, very special way. The
- ROM, that is going to burned is not
- loaded into the computer's memory and
- transferred back into the drive's
- Flash-ROM memory. That would be much
- too long winded. No, the ROM contents
- are transferred directly, block by
- block, from the disk's surface into
- the drive's buffer memory and further
- into the Flash-ROM.
-
- This is possible, because Flash-ROMs
- from Atmel ] were used, that can be
- flashed page by page. Unfortunately
- the Flash software does only support
- chips from Atmel until now, but you
- can use differently sized ROMs, if you
- want (AT29C256, AT29C512, AT29C010)
- and if you don't need that much ROM
- banks.For the first times flashing new
- drive ROMs went flawlessly, but
- whenever a SpeedDOS-ROM was configured
- via the main ROM switches I ran into
- problems with flashing other ROM
- banks.
-
- Some tests revealed, that whenever a
- SpeedDOS-ROM was selected with the
- 6502-RAMROM and the Flash enable
- switch was set, the drive hung up,
- when a file was loaded or the error
- channel was retrieved with the '@'
- command. I discussed it with Nicolas
- and he told me, that he found similar
- problems with the original CBM
- VIC20-ROM. We found out that some
- misdesigned ROM code fragments were
- responsible for this (Note: the VICE
- emulator's built-in monitor was
- exceedingly helpful with this:
- <ALT>-m, device 8:, watch store 8000
- FFFF, exit).
-
- Whenever the Flash enable switch is
- set and parts of code executed by the
- desired 6502 processor store values to
- the ROM (to the Flash-ROM), the
- internal logic of the Flash blocks the
- whole chip so that even reading the
- ROM fails for some time. After
- discussing this point in the
- cbm-hackers mailing list ], Nicolas
- managed to fix this ROM bug and so did
- I with the SpeedDOS-ROMs .
-
- ...end part 1...
-
-