6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Nov 24, 2024 3:36 am

All times are UTC




Post new topic Reply to topic  [ 10 posts ] 
Author Message
PostPosted: Fri Aug 16, 2013 9:47 pm 
Offline
User avatar

Joined: Wed Jul 10, 2013 3:13 pm
Posts: 67
I'm sorry, but I have been searching Google and Bing for a while now and I cant find one. To clear anything up I will explain what I am looking for. I need a chart that show stuff like
Code:
$FFD2 --> Output Char
I want to have a chart of all the KERNAL ROM functions and there corresponding memory location

_________________
JMP $FFD2


Top
 Profile  
Reply with quote  
PostPosted: Fri Aug 16, 2013 10:00 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8546
Location: Southern California
The answer is in my post at viewtopic.php?f=2&t=2605&p=27409#p27409 . The book gives all the entry points.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Sat Aug 17, 2013 12:28 am 
Offline
User avatar

Joined: Sat Sep 29, 2012 10:15 pm
Posts: 904
Try this. The top entry did it for me.
http://lmgtfy.com/?q=commodore+64+kernal+entry+points

No disrespect, but I cannot imagine what you were googling for. Commodore 64 is one of the most documented computers. The phrase 'ROM codes' is not meaningful; you want to look for kernal documentation, entry points, list of routines, etc.

_________________
In theory, there is no difference between theory and practice. In practice, there is. ...Jan van de Snepscheut


Top
 Profile  
Reply with quote  
PostPosted: Sat Aug 17, 2013 8:00 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10986
Location: England
Even this worked:
https://www.google.co.uk/search?q=FFD2+ ... utput+Char
which is directly from James' post... It is curious that James was unable to find what he wanted. Here's a possibility: in the old days you put into a search query some words or phrases which are likely to be in the document you seek and unlikely to be in any other document. These days it's also possible to type in a natural language query, such as "what are the commodore rom codes", at which point you are trusting to some sophisticated heuristics which are still in infancy.

James: perhaps you've never used a command line? Unix and Linux have "grep" and DOS (Windows) has "find", in both cases you say what text you are looking for and the command can return the names of files which contain the text. That's the way we always used to use search engines, and it still works well.

Cheers
Ed


Top
 Profile  
Reply with quote  
PostPosted: Sat Aug 17, 2013 1:38 pm 
Offline
User avatar

Joined: Wed Jul 10, 2013 3:13 pm
Posts: 67
http://lmgtfy.com/?q=Commodore+64+Kernal+rom+map
This is what I searched for on Bing and Google
I came to this http://sta.c64.org/cbm64mem.html , but when I found the Kernal ROM memory this is what it said
KERNAL ROM or RAM area (8192 bytes); depends on the value of bits #0-#2 of the processor port at memory address $0001:

%x0x: RAM area.


%x1x: KERNAL ROM

not very helpful, however I found a GEOS memory map

_________________
JMP $FFD2


Top
 Profile  
Reply with quote  
PostPosted: Sun Aug 18, 2013 6:53 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8514
Location: Midwestern USA
James_Parsons wrote:
http://lmgtfy.com/?q=Commodore+64+Kernal+rom+map
This is what I searched for on Bing and Google
I came to this http://sta.c64.org/cbm64mem.html , but when I found the Kernal ROM memory this is what it said
KERNAL ROM or RAM area (8192 bytes); depends on the value of bits #0-#2 of the processor port at memory address $0001:

%x0x: RAM area.


%x1x: KERNAL ROM

not very helpful, however I found a GEOS memory map

Recommendation: avoid Google and Bing, especially the latter. What you see isn't necessarily what you should get. Both Garth and I strongly suggest the use of Ixquick for web searches.

That said, here's something for you from my development library:

Code:
;===============================================================================
;
;STANDARD KERNEL ROM JUMP TABLE
;
acptr    =$ffa5                ;input byte from serial bus
basin    =$ffcf                ;input a byte, also chrin
bsout    =$ffd2                ;output a byte, aka chrout
chkin    =$ffc6                ;define an input channel
chkout   =$ffc9                ;define an output channel
chrin    =basin                ;input a byte
chrout   =bsout                ;output a byte
cint     =$ff81                ;initialize screen editor & VIC
ciout    =$ffa8                ;output byte to serial bus
clall    =$ffe7                ;close all files
close    =$ffc3                ;close a logical file
clrchn   =$ffcc                ;restore default devices
getin    =$ffe4                ;get a byte
iobase   =$fff3                ;get I/O block base address
ioinit   =$ff84                ;initialize I/O devices
listen   =$ffb1                ;command serial bus device to LISTEN
load     =$ffd5                ;load from device
membot   =$ff9c                ;read/set bottom of memory pointer
memtop   =$ff99                ;read/set top of memory pointer
open     =$ffc0                ;open a logical file
plot     =$fff0                ;read/set position of cursor on screen
ramtas   =$ff87                ;initialize RAM, tape buffer, screen
rdtim    =$ffde                ;read the software clock
readst   =$ffb7                ;read I/O status word
restor   =$ff8a                ;restore default I/O vectors
save     =$ffd8                ;save to a device
scnkey   =$ff9f                ;scan the keyboard
screen   =$ffed                ;read number of screen rows & columns
second   =$ff93                ;send SA after LISTEN
setlfs   =$ffba                ;set logical file parameters
setmsg   =$ff90                ;set kernel message control flag
setnam   =$ffbd                ;set filename parameters
settim   =$ffdb                ;set the software clock
settmo   =$ffa2                ;set IEEE time-out flag
stop     =$ffe1                ;check the STOP key
talk     =$ffb4                ;command serial bus device to TALK
tksa     =$ff96                ;send SA after TALK
udtim    =$ffea                ;update the software clock
unlsn    =$ffae                ;command serial bus device to UNLISTEN
untlk    =$ffab                ;command serial bus device to UNTALK
vector   =$ff8d                ;read/set I/O vector table
;
;================================================================================
;
;C-128 EXTENDED KERNEL JUMP TABLE
;
bootdsk  =$ff53                ;attempt boot from disk device 8
closall  =$ff4a                ;close all files on device in .A
crti     =$ff33                ;common interrupt return
dlchr    =$ff62                ;initialize VDC char RAM
dmacall  =$ff50                ;drive DMA controller
pfkey    =$ff65                ;assign string to F-key
getcfg   =$ff6b                ;translate bank to MMU pattern
go64     =$ff4d                ;switch to C-64 mode
indcmp   =$ff7a                ;compare .A to byte in remote bank
indfet   =$ff74                ;get byte from remote bank
indsta   =$ff77                ;put byte to remote bank
jmpfar   =$ff71                ;jump to routine in remote bank
jsrfar   =$ff6e                ;call subroutine in remote bank
lkupla   =$ff59                ;look up LA
lkupsa   =$ff5c                ;look up SA
phoenix  =$ff56                ;initialize option ROMs & boot from disk
primm    =$ff7d                ;print following string
setbnk   =$ff68                ;set bank for load/save
spinout  =$ff47                ;set up fast serial bus
swapper  =$ff5f                ;swap active display
;
   .end

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Sun Aug 18, 2013 3:34 pm 
Offline

Joined: Sat Dec 13, 2003 3:37 pm
Posts: 1004
I never owned a Commodore machine, I was an in the Atari camp.

But we had books such as "Mapping the Atari" which basically tried to document most every memory location and ROM call within the computer. It was always good reading.

Searching for a similar thing for the C64 revealed this: http://unusedino.de/ec64/technical/proj ... g_c64.html

It's long, I didn't do an exhaustive scan, but it seems comprehensive. I'm sure more exploration of "mapping c64" in a search engine should bring up other interesting documents.


Top
 Profile  
Reply with quote  
PostPosted: Mon Aug 19, 2013 8:46 pm 
Offline

Joined: Tue Jul 24, 2012 2:27 am
Posts: 679
I did an exhaustive scan.... when I typed that in years ago. ;)

It's an excellent low-level reference, but for starting to learn the kernal routines, I'd recommend the official C64 Programmer's Reference Manual instead. (PDFs, Text) Starting off with the Mapping book kind of obfuscates the main API in all the details.

_________________
WFDis Interactive 6502 Disassembler
AcheronVM: A Reconfigurable 16-bit Virtual CPU for the 6502 Microprocessor


Top
 Profile  
Reply with quote  
PostPosted: Tue Aug 20, 2013 6:11 am 
Offline
User avatar

Joined: Sun Jun 30, 2013 10:26 pm
Posts: 1949
Location: Sacramento, CA, USA
White Flame wrote:
I did an exhaustive scan.... when I typed that in years ago. ;)


I saw that impressive labor of love. Did that experience bring your WPM up, from hours of practice, or down, from repetitive motion injury?

Mike


Top
 Profile  
Reply with quote  
PostPosted: Wed Aug 21, 2013 2:44 am 
Offline

Joined: Tue Jul 24, 2012 2:27 am
Posts: 679
I've never had RSI. I'm not sure if that's from starting to type at a very young age and thus adapted to it, or concentrating on good typing posture as I got older.

But yeah, I typed in a few books for the masochistic interests of typing speed practice & thorough content exposure, and because at that time scans were unwieldy (phone modems were still the norm) and not OCR'd.

_________________
WFDis Interactive 6502 Disassembler
AcheronVM: A Reconfigurable 16-bit Virtual CPU for the 6502 Microprocessor


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 48 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: