Comments (6)
Usually, 60h is used for joypad interrupt vector, according to the pan docs:
INT 60 - Joypad Interrupt
Joypad interrupt is requested when any of the above Input lines changes from High to Low. Generally this should happen when a key becomes pressed (provided that the button/direction key is enabled by above Bit4/5), however, because of switch bounce, one or more High to Low transitions are usually produced both when pressing or releasing a key.
from gameboy.live.
As I read but incorrectly documented. As I suspected.
from gameboy.live.
Ok then what about everything after 60h? That is what I meant. Is this for other interrupts?
from gameboy.live.
$0000-$00FF - Restart and Interrupt Vector Table
The first 255 byte area in the Gameboy address space is reserved for Interrupt Vectors and Restart Vectors. Interrupts are a break in program code generated by a piece of the hardware when a certain condition is met. These conditions can be set by the programmer. There are several different types of interrupts, and when an interrupt is generated, the program stops where it is, and jumps to one of the specified locations in the Vector Table. The types of interrups are:
V-Blank - This interrupt can be generated when the LCD has drawn the last line on the screen and gone into the vertical blanking period. When this Interrupt is triggered, the CPU stores the current point of execution on the Stack, and jumps to $0040, which will usually contain another jump to the location of the code you want executed during the v-blank period.
LCDC - This interrupt can be generated by the LCD controller chip on various conditions, the most commonly used being the LYC condition, which is an interrupt generated when the LCD begins to draw a certain scanline. The scanline it generates an interrupt on is selectable. When triggered, this interrupt forces the CPU to jump to address $0048. For more information, see the section on I/O registers.
Timer - The system timer can be set to count at specified frequencies, and will increment a count register. When this register overflows, an interrupt is generated and the CPU jumps to $0050. More information in the I/O register section.
Serial - Generated by the serial link controller. The CPU jumps to $0058 when this interrupt is triggered. More info in the I/O register section.
Joypad - Generated when a key is pressed. Due to button "bounce", this interrupt may occur several times when a button is pressed. More info in the I/O register section.
from gameboy.live.
https://github.com/tilkinsc/gbheaderview
I written a program based off this information. 1026 lines of code :X. Does this:
C:\programming\gbheader>test "Pokemon Yellow.gb"
rst00h - ff 00 00 00 00 00 00 00
rst08h - ff 00 00 00 00 00 00 00
rst10h - ff 00 00 00 00 00 00 00
rst18h - ff 00 00 00 00 00 00 00
rst20h - ff 00 00 00 00 00 00 00
rst28h - ff 00 00 00 00 00 00 00
rst30h - ff 00 00 00 00 00 00 00
rst38h - ff 00 00 00 00 00 00 00
int40h - c3 e5 1d 00 00 00 00 00
int48h - c3 ac 15 00 00 00 00 00
int50h - c3 6a 21 00 00 00 00 00
int58h - c3 79 1f 00 00 00 00 00
int60h - d9 af e0 0f f0 ff 47 cb
int68h - 87 e0 ff f0 44 fe 91 20
int70h - fa f0 40 e6 7f e0 40 78
int78h - e0 ff c9 f0 40 cb ff e0
int80h - 40 c9 af 21 00 c3 06 a0
int88h - 22 05 20 fc c9 3e a0 21
int90h - 00 c3 11 04 00 06 28 77
int98h - 19 05 20 fb c9 ea 22 d1
intA0h - f0 b8 f5 fa 22 d1 cd 7e
intA8h - 3e cd b1 00 f1 cd 7e 3e
intB0h - c9 78 a7 28 0c 79 a7 28
intB8h - 01 04 cd c1 00 05 20 fa
intC0h - c9 2a 12 13 0d 20 fa c9
intC8h - f0 40 cb 7f c2 fe 15 e5
intD0h - 62 6b d1 78 f5 cb 31 3e
intD8h - 0f a1 47 3e f0 a1 4f f1
intE0h - c3 9d 00 f0 40 cb 7f c2
intE8h - 36 16 d5 54 5d 78 f5 26
intF0h - 00 69 29 29 29 44 4d f1
intF8h - e1 c3 d4 15 00 00 00 00
Entry Point - 00 c3 ab 01
Title - POKEMON YELLOW\0
CGB Flag - 80 (CGB and GB)
New Licensee Code - (ASCII) 01 (Nintendo)
SGB Flag - 03 (SGB Functions)
Cartridge Type - 1b (MBC5+RAM+BATTERY)
Rom Size - 05 (1MByte (64 banks) - only 63 banks used by MBC1)
Ram Size - 03 (32 KByte (4 banks * 8 KByte))
Destination Code - 01 (Non-Japanese)
Old Licensee Code - 33 (GBC - See Above)
ROM Version - 00
Header Checksum - 97
Global Checksum - 04 7c
from gameboy.live.
GBROMtxt.7z.zip
This is a list of all the headers of most all of the gb and gbc roms. If you want to run something statistical. It is actually a .7z file not a .zip.
from gameboy.live.
Related Issues (20)
- Unable to connect to remote host
- Add Fyne interface version HOT 3
- why telnet? HOT 1
- Implement paging / search engine for gamelist on telnet
- Add a docker version ? HOT 3
- Issue with High Sierra HOT 1
- No such file or directory HOT 2
- Conection Refused HOT 5
- compile error use go1.112 HOT 2
- Can't build on PI HOT 3
- 运行 gbdotlive.exe 文件时闪退
- build error HOT 2
- BUILD ERROR HOT 1
- 游戏能存档吗? HOT 1
- About translation contribute HOT 1
- Where can I find the gb files?
- telnet gameboy.live 1989
- telnet gameboy.live 1989
- Everytime when I launch a gb file, the telnet connection would be closed. HOT 1
- help
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gameboy.live.