ok im hooked

Let's talk about anything related to the 6502 microprocessor.
Post Reply
sporkit
Posts: 4
Joined: 24 Sep 2005

ok im hooked

Post by sporkit »

first off hi to everybody on this site. second... wow. its awsome to see people dedicated to really working with computers on this level. with modern computing microsoft and things they way they are this seems like a lost art to me.

anyway, i dont really know where im going with any of this but maybe you guys could get some ideas started in my head. im almost 22 right now and currently attending NIU where im taking assembler for older IBM mainframes (i think my textbook was written in 1981 or something). ive always been fasinated with computers, how they work, ect. i played a bit of atari but was raised on my nintendo. i read somewhere that the nes runs on 6502 architecture. long story short that eventually brought me here.

so i suppose what im getting at is where should i start? an eventual goal of mine is to write a small game or program that i could play on a nes emulator and if i can find the right information maybe create an actual cartrage based game to play on the original hardware (a life long goal accomplished ;-). im also very interested in the mechanics of all these things. this picture is definatly the coolest thing ive ever whitnessed. usually when i start a hobby of some type, i like to grab a good book and just chew right threw it.

does anybody have any recommendations as to what i should start with? should i buy a c64 and start from there? maybe a good book? maybe a cool idea you think i might be interested in? maybe im in the wrong place and have no idea what im talking about? maybe this post is getting way to long. :P

thanks!
User avatar
GARTHWILSON
Forum Moderator
Posts: 8773
Joined: 30 Aug 2002
Location: Southern California
Contact:

Post by GARTHWILSON »

The picture you made the link to is of a computer where the owner actually made his own 6502 processor from discrete logic IIRC. That's an extremely ambitious project whose value is almost purely educational (like learning assembly language for an old IBM mainframe!).

If you have a working Commodore 64 (preferably with a working disc drive) and the manuals that go with it, that could be a good way to start. There's already some working hardware with various details taken care of (like display, keyboard, etc.) so you can get instant results. Where it might become a bit of a disadvantage at some point is the same thing-- that the OS kind of insulates you to some extent from those details that you will eventually want to learn to make and program for yourself. It's nice however that at least the C64 has the expansion ports and you can plug in new hardware of your own making.

There are a lot of resources on this website including book recommendations, code, pictures and descriptions of others' 6502 projects, development software, etc.. Spend a few evenings looking it over and get even more inspired!
kc5tja
Posts: 1706
Joined: 04 Jan 2003

Post by kc5tja »

GARTHWILSON wrote:
The picture you made the link to is of a computer where the owner actually made his own 6502 processor from discrete logic IIRC. That's an extremely ambitious project whose value is almost purely educational (like learning assembly language for an old IBM mainframe!).
This is not so educational/historical as you might think. With the increasing popularity of other platforms and Java, more and more schools are NOT teaching mainframe administration fundamentals. This is highly problematic especially when you consider that the majority of mainframe administrators are reaching retirement age.
Quote:
If you have a working Commodore 64 (preferably with a working disc drive) and the manuals that go with it, that could be a good way to start.
Alternatively, and maybe even more conveniently, you can download and install a Commodore 64 emulator called "VICE". This is perhaps the world's most accurate Commodore emulator (it actually emulates Commodore's *entire* 8-bit computer line, ranging from the earliest of PETs to the Commodore 128, including the x64 series [e.g., the 164, 264, and 364 -- aka Commodore 16 and Commodore +4, respectively]).

I do wish it emulated the Commodore 65 though. That would be a fun system to play with!
Quote:
become a bit of a disadvantage at some point is the same thing-- that the OS kind of insulates you to some extent from those details that you will eventually want to learn to make and program for yourself.
The OS covers only talking to attached I/O peripherals (via Commodore's IEC bus), and getting input from the keyboard and putting characters on the screen. There is NO OS support for sprites, NO OS support for sound, etc. It is essentially a Commodore PET OS direct-ported to the Commodore 64. Even the OS vectors are the same.

The OS didn't start covering this stuff until the Commodore 128, and even then, it was often chosen to roll your own code instead. While the 128's OS functionality was powerful, it was tightly interwoven with Commodore BASIC 7.0.
sporkit
Posts: 4
Joined: 24 Sep 2005

Post by sporkit »

Quote:
schools are NOT teaching mainframe administration fundamentals. This is highly problematic especially when you consider that the majority of mainframe administrators are reaching retirement age.
you just made me feel a whole lot better about taking this class. ;) i believe NIU is one of the few universities remaining that has a strong mainfraim program. my book was actually written by a former professor of that school.

if i could work from an emulator that would definatly be more convienient than actually buying old hardware. you guys mention that the OS might restrict my learning. if (for now) im just learning 6502 then would it be better to start learning on the c64 or possibly a different system? hopefully ill have more time to search around the referance material that you have on your site. the assembler class im taking now occupies alot of my time.
kc5tja
Posts: 1706
Joined: 04 Jan 2003

Post by kc5tja »

sporkit wrote:
you guys mention that the OS might restrict my learning.
Actually, what I was trying to get at was that the Commodore computers essentially didn't have an OS, in the sense that we know them today. The Commodore "Kernal" (why was it misspelt? No idea) really wasn't a kernel -- it's just a BIOS with integrated file management calls. Everything else you had to code yourself.

This is perhaps precisely why Commodore computers were such good systems to learn how to code for. With no useful, pre-packaged library of code, you were forced to learn programming at the systems level to get anything useful done.
sporkit
Posts: 4
Joined: 24 Sep 2005

Post by sporkit »

purchased this off ebay to get me started.

im hoping this will get me comfortable with the basics of the system. if its anything like assembler for the pc or ibm mainframes i should be able to pick it up fairly quickly. i believe ill just learn on an emulator i saw somewhere on the site. after that i think ill be reading up on these documents to learn more about sprites and working with getting more gamming components to the screen. that is unless anybody here can recommend something more professional?
Memblers
Posts: 64
Joined: 16 Jan 2003
Location: Indianapolis
Contact:

Post by Memblers »

Ah, there isn't all that much tech info on zophar.net. Try my website:
http://nesdev.parodius.com/
There's a lot there, I don't update as often as I should though. There's a forum too.

If you're gonna use an NES emulator, use Nintendulator (fast PC required). On most emulators it's really easy to write a program that will run on an emu and not the real system.

I've designed an NES dev cart I call Squeedo. It uses flashrom and is reprogrammable by connecting it to a PC's serial port. I should be able to start producing those before the year is over, cost should be under $100.
bogax
Posts: 250
Joined: 18 Nov 2003

Post by bogax »


Zaks' book is reputed to have errors.

Note the comments here for example (about 5 paragraphs down):

http://www.atarimagazines.com/v1n6/lookingatbooks.html


It's still useful (I have used it and have two copies) but be aware.
orac
Posts: 64
Joined: 31 Aug 2002
Location: USA

Post by orac »

Hi Everyone,

What is comical is that in the Atari piece (see link in last post) the fifth paragraph has a mistake about the 6800! The 6800 sets the "sign" bit in the condition code register after a load of the accumulator. Consequently, you can follow a "LDAA $65" instruction with a BPL/BMI instruction to test bit #7.

Cheers,

Paul
sporkit
Posts: 4
Joined: 24 Sep 2005

Post by sporkit »

bogax wrote:
Zaks' book is reputed to have errors.
crap. haha, fortunatly it only set me back about 8 bucks shipping and all. i guess ill just be on my toes when i go threw it.
Memblers wrote:
Ah, there isn't all that much tech info on zophar.net. Try my website: http://nesdev.parodius.com/
:) its awsome to meet you. i actually visited your site after i saw it featured in this book. there is a small section on how to create your own dev carts as well. it definatly a great read if you havent seen it yet.
R65C02P3
Posts: 17
Joined: 28 Aug 2005
Location: Pennsylvania
Contact:

Post by R65C02P3 »

GARTHWILSON wrote:
Quote:
There are a lot of resources on this website including book recommendations, code, pictures and descriptions of others' 6502 projects, development software, etc.. Spend a few evenings looking it over and get even more inspired!
I echo above, and welcome sporkit!

regards,
Brian
Post Reply