aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksa Vučković <aleksav013@gmail.com>2022-05-30 09:13:24 +0200
committerAleksa Vučković <aleksav013@gmail.com>2022-05-30 23:07:20 +0200
commit602037ec658da6ab2f04f1c806bfccdcd8125f27 (patch)
tree42041f5f31bde2f5eedd544a7da346b83db8f5f9
parent37af80fa96b00ef9fb1abc1003db88ea1ed1a496 (diff)
idt now working on hardwarev1.0.1
-rw-r--r--Makefile8
-rw-r--r--src/as/irq.s1776
-rw-r--r--src/c/heap.c1
-rw-r--r--src/c/idt.c222
-rw-r--r--src/c/irq_handler.c1330
-rw-r--r--src/c/keyboard.c1
-rw-r--r--src/include/source/irq.h222
-rw-r--r--src/include/source/irq_handler.h222
8 files changed, 3779 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 406447a..ae4f8af 100644
--- a/Makefile
+++ b/Makefile
@@ -18,7 +18,9 @@ export CFLAGS=-std=gnu99 -O3 $(WARNINGS) -ffreestanding -fstack-protector-all
export MKDIR=mkdir -p
export RM=rm -rf
export CP=cp -r
-QEMU=qemu-system-i386
+QEMU=qemu-system-x86_64
+QEMU_FLAGS=-enable-kvm
+QEMU_DEBUG=
@@ -98,7 +100,7 @@ iso: compile
$(MAKE) $(ISO)
run: compile
- $(QEMU) -kernel $(BINARY) $(QEMU_DEBUG)
+ $(QEMU) $(QEMU_FLAGS) -kernel $(BINARY) $(QEMU_DEBUG)
run-iso: iso
- $(QEMU) -cdrom $(ISO)
+ $(QEMU) $(QEMU_FLAGS) -cdrom $(ISO)
diff --git a/src/as/irq.s b/src/as/irq.s
index 71d578d..3a2b581 100644
--- a/src/as/irq.s
+++ b/src/as/irq.s
@@ -32,6 +32,228 @@
.global irq31
.global timer_irq
.global keyboard_irq
+.global irq34
+.global irq35
+.global irq36
+.global irq37
+.global irq38
+.global irq39
+.global irq40
+.global irq41
+.global irq42
+.global irq43
+.global irq44
+.global irq45
+.global irq46
+.global irq47
+.global irq48
+.global irq49
+.global irq50
+.global irq51
+.global irq52
+.global irq53
+.global irq54
+.global irq55
+.global irq56
+.global irq57
+.global irq58
+.global irq59
+.global irq60
+.global irq61
+.global irq62
+.global irq63
+.global irq64
+.global irq65
+.global irq66
+.global irq67
+.global irq68
+.global irq69
+.global irq70
+.global irq71
+.global irq72
+.global irq73
+.global irq74
+.global irq75
+.global irq76
+.global irq77
+.global irq78
+.global irq79
+.global irq80
+.global irq81
+.global irq82
+.global irq83
+.global irq84
+.global irq85
+.global irq86
+.global irq87
+.global irq88
+.global irq89
+.global irq90
+.global irq91
+.global irq92
+.global irq93
+.global irq94
+.global irq95
+.global irq96
+.global irq97
+.global irq98
+.global irq99
+.global irq100
+.global irq101
+.global irq102
+.global irq103
+.global irq104
+.global irq105
+.global irq106
+.global irq107
+.global irq108
+.global irq109
+.global irq110
+.global irq111
+.global irq112
+.global irq113
+.global irq114
+.global irq115
+.global irq116
+.global irq117
+.global irq118
+.global irq119
+.global irq120
+.global irq121
+.global irq122
+.global irq123
+.global irq124
+.global irq125
+.global irq126
+.global irq127
+.global irq128
+.global irq129
+.global irq130
+.global irq131
+.global irq132
+.global irq133
+.global irq134
+.global irq135
+.global irq136
+.global irq137
+.global irq138
+.global irq139
+.global irq140
+.global irq141
+.global irq142
+.global irq143
+.global irq144
+.global irq145
+.global irq146
+.global irq147
+.global irq148
+.global irq149
+.global irq150
+.global irq151
+.global irq152
+.global irq153
+.global irq154
+.global irq155
+.global irq156
+.global irq157
+.global irq158
+.global irq159
+.global irq160
+.global irq161
+.global irq162
+.global irq163
+.global irq164
+.global irq165
+.global irq166
+.global irq167
+.global irq168
+.global irq169
+.global irq170
+.global irq171
+.global irq172
+.global irq173
+.global irq174
+.global irq175
+.global irq176
+.global irq177
+.global irq178
+.global irq179
+.global irq180
+.global irq181
+.global irq182
+.global irq183
+.global irq184
+.global irq185
+.global irq186
+.global irq187
+.global irq188
+.global irq189
+.global irq190
+.global irq191
+.global irq192
+.global irq193
+.global irq194
+.global irq195
+.global irq196
+.global irq197
+.global irq198
+.global irq199
+.global irq200
+.global irq201
+.global irq202
+.global irq203
+.global irq204
+.global irq205
+.global irq206
+.global irq207
+.global irq208
+.global irq209
+.global irq210
+.global irq211
+.global irq212
+.global irq213
+.global irq214
+.global irq215
+.global irq216
+.global irq217
+.global irq218
+.global irq219
+.global irq220
+.global irq221
+.global irq222
+.global irq223
+.global irq224
+.global irq225
+.global irq226
+.global irq227
+.global irq228
+.global irq229
+.global irq230
+.global irq231
+.global irq232
+.global irq233
+.global irq234
+.global irq235
+.global irq236
+.global irq237
+.global irq238
+.global irq239
+.global irq240
+.global irq241
+.global irq242
+.global irq243
+.global irq244
+.global irq245
+.global irq246
+.global irq247
+.global irq248
+.global irq249
+.global irq250
+.global irq251
+.global irq252
+.global irq253
+.global irq254
+.global irq255
irq0:
@@ -271,3 +493,1557 @@ keyboard_irq:
call keyboard_handler
popal
iretl
+
+irq34:
+ pushal
+ cld
+ call irq34_handler
+ popal
+ iretl
+
+irq35:
+ pushal
+ cld
+ call irq35_handler
+ popal
+ iretl
+
+irq36:
+ pushal
+ cld
+ call irq36_handler
+ popal
+ iretl
+
+irq37:
+ pushal
+ cld
+ call irq37_handler
+ popal
+ iretl
+
+irq38:
+ pushal
+ cld
+ call irq38_handler
+ popal
+ iretl
+
+irq39:
+ pushal
+ cld
+ call irq39_handler
+ popal
+ iretl
+
+irq40:
+ pushal
+ cld
+ call irq40_handler
+ popal
+ iretl
+
+irq41:
+ pushal
+ cld
+ call irq41_handler
+ popal
+ iretl
+
+irq42:
+ pushal
+ cld
+ call irq42_handler
+ popal
+ iretl
+
+irq43:
+ pushal
+ cld
+ call irq43_handler
+ popal
+ iretl
+
+irq44:
+ pushal
+ cld
+ call irq44_handler
+ popal
+ iretl
+
+irq45:
+ pushal
+ cld
+ call irq45_handler
+ popal
+ iretl
+
+irq46:
+ pushal
+ cld
+ call irq46_handler
+ popal
+ iretl
+
+irq47:
+ pushal
+ cld
+ call irq47_handler
+ popal
+ iretl
+
+irq48:
+ pushal
+ cld
+ call irq48_handler
+ popal
+ iretl
+
+irq49:
+ pushal
+ cld
+ call irq49_handler
+ popal
+ iretl
+
+irq50:
+ pushal
+ cld
+ call irq50_handler
+ popal
+ iretl
+
+irq51:
+ pushal
+ cld
+ call irq51_handler
+ popal
+ iretl
+
+irq52:
+ pushal
+ cld
+ call irq52_handler
+ popal
+ iretl
+
+irq53:
+ pushal
+ cld
+ call irq53_handler
+ popal
+ iretl
+
+irq54:
+ pushal
+ cld
+ call irq54_handler
+ popal
+ iretl
+
+irq55:
+ pushal
+ cld
+ call irq55_handler
+ popal
+ iretl
+
+irq56:
+ pushal
+ cld
+ call irq56_handler
+ popal
+ iretl
+
+irq57:
+ pushal
+ cld
+ call irq57_handler
+ popal
+ iretl
+
+irq58:
+ pushal
+ cld
+ call irq58_handler
+ popal
+ iretl
+
+irq59:
+ pushal
+ cld
+ call irq59_handler
+ popal
+ iretl
+
+irq60:
+ pushal
+ cld
+ call irq60_handler
+ popal
+ iretl
+
+irq61:
+ pushal
+ cld
+ call irq61_handler
+ popal
+ iretl
+
+irq62:
+ pushal
+ cld
+ call irq62_handler
+ popal
+ iretl
+
+irq63:
+ pushal
+ cld
+ call irq63_handler
+ popal
+ iretl
+
+irq64:
+ pushal
+ cld
+ call irq64_handler
+ popal
+ iretl
+
+irq65:
+ pushal
+ cld
+ call irq65_handler
+ popal
+ iretl
+
+irq66:
+ pushal
+ cld
+ call irq66_handler
+ popal
+ iretl
+
+irq67:
+ pushal
+ cld
+ call irq67_handler
+ popal
+ iretl
+
+irq68:
+ pushal
+ cld
+ call irq68_handler
+ popal
+ iretl
+
+irq69:
+ pushal
+ cld
+ call irq69_handler
+ popal
+ iretl
+
+irq70:
+ pushal
+ cld
+ call irq70_handler
+ popal
+ iretl
+
+irq71:
+ pushal
+ cld
+ call irq71_handler
+ popal
+ iretl
+
+irq72:
+ pushal
+ cld
+ call irq72_handler
+ popal
+ iretl
+
+irq73:
+ pushal
+ cld
+ call irq73_handler
+ popal
+ iretl
+
+irq74:
+ pushal
+ cld
+ call irq74_handler
+ popal
+ iretl
+
+irq75:
+ pushal
+ cld
+ call irq75_handler
+ popal
+ iretl
+
+irq76:
+ pushal
+ cld
+ call irq76_handler
+ popal
+ iretl
+
+irq77:
+ pushal
+ cld
+ call irq77_handler
+ popal
+ iretl
+
+irq78:
+ pushal
+ cld
+ call irq78_handler
+ popal
+ iretl
+
+irq79:
+ pushal
+ cld
+ call irq79_handler
+ popal
+ iretl
+
+irq80:
+ pushal
+ cld
+ call irq80_handler
+ popal
+ iretl
+
+irq81:
+ pushal
+ cld
+ call irq81_handler
+ popal
+ iretl
+
+irq82:
+ pushal
+ cld
+ call irq82_handler
+ popal
+ iretl
+
+irq83:
+ pushal
+ cld
+ call irq83_handler
+ popal
+ iretl
+
+irq84:
+ pushal
+ cld
+ call irq84_handler
+ popal
+ iretl
+
+irq85:
+ pushal
+ cld
+ call irq85_handler
+ popal
+ iretl
+
+irq86:
+ pushal
+ cld
+ call irq86_handler
+ popal
+ iretl
+
+irq87:
+ pushal
+ cld
+ call irq87_handler
+ popal
+ iretl
+
+irq88:
+ pushal
+ cld
+ call irq88_handler
+ popal
+ iretl
+
+irq89:
+ pushal
+ cld
+ call irq89_handler
+ popal
+ iretl
+
+irq90:
+ pushal
+ cld
+ call irq90_handler
+ popal
+ iretl
+
+irq91:
+ pushal
+ cld
+ call irq91_handler
+ popal
+ iretl
+
+irq92:
+ pushal
+ cld
+ call irq92_handler
+ popal
+ iretl
+
+irq93:
+ pushal
+ cld
+ call irq93_handler
+ popal
+ iretl
+
+irq94:
+ pushal
+ cld
+ call irq94_handler
+ popal
+ iretl
+
+irq95:
+ pushal
+ cld
+ call irq95_handler
+ popal
+ iretl
+
+irq96:
+ pushal
+ cld
+ call irq96_handler
+ popal
+ iretl
+
+irq97:
+ pushal
+ cld
+ call irq97_handler
+ popal
+ iretl
+
+irq98:
+ pushal
+ cld
+ call irq98_handler
+ popal
+ iretl
+
+irq99:
+ pushal
+ cld
+ call irq99_handler
+ popal
+ iretl
+
+irq100:
+ pushal
+ cld
+ call irq100_handler
+ popal
+ iretl
+
+irq101:
+ pushal
+ cld
+ call irq101_handler
+ popal
+ iretl
+
+irq102:
+ pushal
+ cld
+ call irq102_handler
+ popal
+ iretl
+
+irq103:
+ pushal
+ cld
+ call irq103_handler
+ popal
+ iretl
+
+irq104:
+ pushal
+ cld
+ call irq104_handler
+ popal
+ iretl
+
+irq105:
+ pushal
+ cld
+ call irq105_handler
+ popal
+ iretl
+
+irq106:
+ pushal
+ cld
+ call irq106_handler
+ popal
+ iretl
+
+irq107:
+ pushal
+ cld
+ call irq107_handler
+ popal
+ iretl
+
+irq108:
+ pushal
+ cld
+ call irq108_handler
+ popal
+ iretl
+
+irq109:
+ pushal
+ cld
+ call irq109_handler
+ popal
+ iretl
+
+irq110:
+ pushal
+ cld
+ call irq110_handler
+ popal
+ iretl
+
+irq111:
+ pushal
+ cld
+ call irq111_handler
+ popal
+ iretl
+
+irq112:
+ pushal
+ cld
+ call irq112_handler
+ popal
+ iretl
+
+irq113:
+ pushal
+ cld
+ call irq113_handler
+ popal
+ iretl
+
+irq114:
+ pushal
+ cld
+ call irq114_handler
+ popal
+ iretl
+
+irq115:
+ pushal
+ cld
+ call irq115_handler
+ popal
+ iretl
+
+irq116:
+ pushal
+ cld
+ call irq116_handler
+ popal
+ iretl
+
+irq117:
+ pushal
+ cld
+ call irq117_handler
+ popal
+ iretl
+
+irq118:
+ pushal
+ cld
+ call irq118_handler
+ popal
+ iretl
+
+irq119:
+ pushal
+ cld
+ call irq119_handler
+ popal
+ iretl
+
+irq120:
+ pushal
+ cld
+ call irq120_handler
+ popal
+ iretl
+
+irq121:
+ pushal
+ cld
+ call irq121_handler
+ popal
+ iretl
+
+irq122:
+ pushal
+ cld
+ call irq122_handler
+ popal
+ iretl
+
+irq123:
+ pushal
+ cld
+ call irq123_handler
+ popal
+ iretl
+
+irq124:
+ pushal
+ cld
+ call irq124_handler
+ popal
+ iretl
+
+irq125:
+ pushal
+ cld
+ call irq125_handler
+ popal
+ iretl
+
+irq126:
+ pushal
+ cld
+ call irq126_handler
+ popal
+ iretl
+
+irq127:
+ pushal
+ cld
+ call irq127_handler
+ popal
+ iretl
+
+irq128:
+ pushal
+ cld
+ call irq128_handler
+ popal
+ iretl
+
+irq129:
+ pushal
+ cld
+ call irq129_handler
+ popal
+ iretl
+
+irq130:
+ pushal
+ cld
+ call irq130_handler
+ popal
+ iretl
+
+irq131:
+ pushal
+ cld
+ call irq131_handler
+ popal
+ iretl
+
+irq132:
+ pushal
+ cld
+ call irq132_handler
+ popal
+ iretl
+
+irq133:
+ pushal
+ cld
+ call irq133_handler
+ popal
+ iretl
+
+irq134:
+ pushal
+ cld
+ call irq134_handler
+ popal
+ iretl
+
+irq135:
+ pushal
+ cld
+ call irq135_handler
+ popal
+ iretl
+
+irq136:
+ pushal
+ cld
+ call irq136_handler
+ popal
+ iretl
+
+irq137:
+ pushal
+ cld
+ call irq137_handler
+ popal
+ iretl
+
+irq138:
+ pushal
+ cld
+ call irq138_handler
+ popal
+ iretl
+
+irq139:
+ pushal
+ cld
+ call irq139_handler
+ popal
+ iretl
+
+irq140:
+ pushal
+ cld
+ call irq140_handler
+ popal
+ iretl
+
+irq141:
+ pushal
+ cld
+ call irq141_handler
+ popal
+ iretl
+
+irq142:
+ pushal
+ cld
+ call irq142_handler
+ popal
+ iretl
+
+irq143:
+ pushal
+ cld
+ call irq143_handler
+ popal
+ iretl
+
+irq144:
+ pushal
+ cld
+ call irq144_handler
+ popal
+ iretl
+
+irq145:
+ pushal
+ cld
+ call irq145_handler
+ popal
+ iretl
+
+irq146:
+ pushal
+ cld
+ call irq146_handler
+ popal
+ iretl
+
+irq147:
+ pushal
+ cld
+ call irq147_handler
+ popal
+ iretl
+
+irq148:
+ pushal
+ cld
+ call irq148_handler
+ popal
+ iretl
+
+irq149:
+ pushal
+ cld
+ call irq149_handler
+ popal
+ iretl
+
+irq150:
+ pushal
+ cld
+ call irq150_handler
+ popal
+ iretl
+
+irq151:
+ pushal
+ cld
+ call irq151_handler
+ popal
+ iretl
+
+irq152:
+ pushal
+ cld
+ call irq152_handler
+ popal
+ iretl
+
+irq153:
+ pushal
+ cld
+ call irq153_handler
+ popal
+ iretl
+
+irq154:
+ pushal
+ cld
+ call irq154_handler
+ popal
+ iretl
+
+irq155:
+ pushal
+ cld
+ call irq155_handler
+ popal
+ iretl
+
+irq156:
+ pushal
+ cld
+ call irq156_handler
+ popal
+ iretl
+
+irq157:
+ pushal
+ cld
+ call irq157_handler
+ popal
+ iretl
+
+irq158:
+ pushal
+ cld
+ call irq158_handler
+ popal
+ iretl
+
+irq159:
+ pushal
+ cld
+ call irq159_handler
+ popal
+ iretl
+
+irq160:
+ pushal
+ cld
+ call irq160_handler
+ popal
+ iretl
+
+irq161:
+ pushal
+ cld
+ call irq161_handler
+ popal
+ iretl
+
+irq162:
+ pushal
+ cld
+ call irq162_handler
+ popal
+ iretl
+
+irq163:
+ pushal
+ cld
+ call irq163_handler
+ popal
+ iretl
+
+irq164:
+ pushal
+ cld
+ call irq164_handler
+ popal
+ iretl
+
+irq165:
+ pushal
+ cld
+ call irq165_handler
+ popal
+ iretl
+
+irq166:
+ pushal
+ cld
+ call irq166_handler
+ popal
+ iretl
+
+irq167:
+ pushal
+ cld
+ call irq167_handler
+ popal
+ iretl
+
+irq168:
+ pushal
+ cld
+ call irq168_handler
+ popal
+ iretl
+
+irq169:
+ pushal
+ cld
+ call irq169_handler
+ popal
+ iretl
+
+irq170:
+ pushal
+ cld
+ call irq170_handler
+ popal
+ iretl
+
+irq171:
+ pushal
+ cld
+ call irq171_handler
+ popal
+ iretl
+
+irq172:
+ pushal
+ cld
+ call irq172_handler
+ popal
+ iretl
+
+irq173:
+ pushal
+ cld
+ call irq173_handler
+ popal
+ iretl
+
+irq174:
+ pushal
+ cld
+ call irq174_handler
+ popal
+ iretl
+
+irq175:
+ pushal
+ cld
+ call irq175_handler
+ popal
+ iretl
+
+irq176:
+ pushal
+ cld
+ call irq176_handler
+ popal
+ iretl
+
+irq177:
+ pushal
+ cld
+ call irq177_handler
+ popal
+ iretl
+
+irq178:
+ pushal
+ cld
+ call irq178_handler
+ popal
+ iretl
+
+irq179:
+ pushal
+ cld
+ call irq179_handler
+ popal
+ iretl
+
+irq180:
+ pushal
+ cld
+ call irq180_handler
+ popal
+ iretl
+
+irq181:
+ pushal
+ cld
+ call irq181_handler
+ popal
+ iretl
+
+irq182:
+ pushal
+ cld
+ call irq182_handler
+ popal
+ iretl
+
+irq183:
+ pushal
+ cld
+ call irq183_handler
+ popal
+ iretl
+
+irq184:
+ pushal
+ cld
+ call irq184_handler
+ popal
+ iretl
+
+irq185:
+ pushal
+ cld
+ call irq185_handler
+ popal
+ iretl
+
+irq186:
+ pushal
+ cld
+ call irq186_handler
+ popal
+ iretl
+
+irq187:
+ pushal
+ cld
+ call irq187_handler
+ popal
+ iretl
+
+irq188:
+ pushal
+ cld
+ call irq188_handler
+ popal
+ iretl
+
+irq189:
+ pushal
+ cld
+ call irq189_handler
+ popal
+ iretl
+
+irq190:
+ pushal
+ cld
+ call irq190_handler
+ popal
+ iretl
+
+irq191:
+ pushal
+ cld
+ call irq191_handler
+ popal
+ iretl
+
+irq192:
+ pushal
+ cld
+ call irq192_handler
+ popal
+ iretl
+
+irq193:
+ pushal
+ cld
+ call irq193_handler
+ popal
+ iretl
+
+irq194:
+ pushal
+ cld
+ call irq194_handler
+ popal
+ iretl
+
+irq195:
+ pushal
+ cld
+ call irq195_handler
+ popal
+ iretl
+
+irq196:
+ pushal
+ cld
+ call irq196_handler
+ popal
+ iretl
+
+irq197:
+ pushal
+ cld
+ call irq197_handler
+ popal
+ iretl
+
+irq198:
+ pushal
+ cld
+ call irq198_handler
+ popal
+ iretl
+
+irq199:
+ pushal
+ cld
+ call irq199_handler
+ popal
+ iretl
+
+irq200:
+ pushal
+ cld
+ call irq200_handler
+ popal
+ iretl
+
+irq201:
+ pushal
+ cld
+ call irq201_handler
+ popal
+ iretl
+
+irq202:
+ pushal
+ cld
+ call irq202_handler
+ popal
+ iretl
+
+irq203:
+ pushal
+ cld
+ call irq203_handler
+ popal
+ iretl
+
+irq204:
+ pushal
+ cld
+ call irq204_handler
+ popal
+ iretl
+
+irq205:
+ pushal
+ cld
+ call irq205_handler
+ popal
+ iretl
+
+irq206:
+ pushal
+ cld
+ call irq206_handler
+ popal
+ iretl
+
+irq207:
+ pushal
+ cld
+ call irq207_handler
+ popal
+ iretl
+
+irq208:
+ pushal
+ cld
+ call irq208_handler
+ popal
+ iretl
+
+irq209:
+ pushal
+ cld
+ call irq209_handler
+ popal
+ iretl
+
+irq210:
+ pushal
+ cld
+ call irq210_handler
+ popal
+ iretl
+
+irq211:
+ pushal
+ cld
+ call irq211_handler
+ popal
+ iretl
+
+irq212:
+ pushal
+ cld
+ call irq212_handler
+ popal
+ iretl
+
+irq213:
+ pushal
+ cld
+ call irq213_handler
+ popal
+ iretl
+
+irq214:
+ pushal
+ cld
+ call irq214_handler
+ popal
+ iretl
+
+irq215:
+ pushal
+ cld
+ call irq215_handler
+ popal
+ iretl
+
+irq216:
+ pushal
+ cld
+ call irq216_handler
+ popal
+ iretl
+
+irq217:
+ pushal
+ cld
+ call irq217_handler
+ popal
+ iretl
+
+irq218:
+ pushal
+ cld
+ call irq218_handler
+ popal
+ iretl
+
+irq219:
+ pushal
+ cld
+ call irq219_handler
+ popal
+ iretl
+
+irq220:
+ pushal
+ cld
+ call irq220_handler
+ popal
+ iretl
+
+irq221:
+ pushal
+ cld
+ call irq221_handler
+ popal
+ iretl
+
+irq222:
+ pushal
+ cld
+ call irq222_handler
+ popal
+ iretl
+
+irq223:
+ pushal
+ cld
+ call irq223_handler
+ popal
+ iretl
+
+irq224:
+ pushal
+ cld
+ call irq224_handler
+ popal
+ iretl
+
+irq225:
+ pushal
+ cld
+ call irq225_handler
+ popal
+ iretl
+
+irq226:
+ pushal
+ cld
+ call irq226_handler
+ popal
+ iretl
+
+irq227:
+ pushal
+ cld
+ call irq227_handler
+ popal
+ iretl
+
+irq228:
+ pushal
+ cld
+ call irq228_handler
+ popal
+ iretl
+
+irq229:
+ pushal
+ cld
+ call irq229_handler
+ popal
+ iretl
+
+irq230:
+ pushal
+ cld
+ call irq230_handler
+ popal
+ iretl
+
+irq231:
+ pushal
+ cld
+ call irq231_handler
+ popal
+ iretl
+
+irq232:
+ pushal
+ cld
+ call irq232_handler
+ popal
+ iretl
+
+irq233:
+ pushal
+ cld
+ call irq233_handler
+ popal
+ iretl
+
+irq234:
+ pushal
+ cld
+ call irq234_handler
+ popal
+ iretl
+
+irq235:
+ pushal
+ cld
+ call irq235_handler
+ popal
+ iretl
+
+irq236:
+ pushal
+ cld
+ call irq236_handler
+ popal
+ iretl
+
+irq237:
+ pushal
+ cld
+ call irq237_handler
+ popal
+ iretl
+
+irq238:
+ pushal
+ cld
+ call irq238_handler
+ popal
+ iretl
+
+irq239:
+ pushal
+ cld
+ call irq239_handler
+ popal
+ iretl
+
+irq240:
+ pushal
+ cld
+ call irq240_handler
+ popal
+ iretl
+
+irq241:
+ pushal
+ cld
+ call irq241_handler
+ popal
+ iretl
+
+irq242:
+ pushal
+ cld
+ call irq242_handler
+ popal
+ iretl
+
+irq243:
+ pushal
+ cld
+ call irq243_handler
+ popal
+ iretl
+
+irq244:
+ pushal
+ cld
+ call irq244_handler
+ popal
+ iretl
+
+irq245:
+ pushal
+ cld
+ call irq245_handler
+ popal
+ iretl
+
+irq246:
+ pushal
+ cld
+ call irq246_handler
+ popal
+ iretl
+
+irq247:
+ pushal
+ cld
+ call irq247_handler
+ popal
+ iretl
+
+irq248:
+ pushal
+ cld
+ call irq248_handler
+ popal
+ iretl
+
+irq249:
+ pushal
+ cld
+ call irq249_handler
+ popal
+ iretl
+
+irq250:
+ pushal
+ cld
+ call irq250_handler
+ popal
+ iretl
+
+irq251:
+ pushal
+ cld
+ call irq251_handler
+ popal
+ iretl
+
+irq252:
+ pushal
+ cld
+ call irq252_handler
+ popal
+ iretl
+
+irq253:
+ pushal
+ cld
+ call irq253_handler
+ popal
+ iretl
+
+irq254:
+ pushal
+ cld
+ call irq254_handler
+ popal
+ iretl
+
+irq255:
+ pushal
+ cld
+ call irq255_handler
+ popal
+ iretl
diff --git a/src/c/heap.c b/src/c/heap.c
index 3120ed8..954a220 100644
--- a/src/c/heap.c
+++ b/src/c/heap.c
@@ -129,6 +129,7 @@ void k_heapBMFree(KHEAPBM *heap, void *ptr)
bi = ptroff / b->bsize;
/* .. */
bm = (uint8_t*)&b[1];
+
/* clear allocation */
id = bm[bi];
/* oddly.. GCC did not optimize this */
diff --git a/src/c/idt.c b/src/c/idt.c
index f73d574..b25ba78 100644
--- a/src/c/idt.c
+++ b/src/c/idt.c
@@ -75,6 +75,228 @@ void init_idt_table(void)
add_idt_entry(31,(uint32_t)irq31);
add_idt_entry(32,(uint32_t)timer_irq);
add_idt_entry(33,(uint32_t)keyboard_irq);
+ add_idt_entry(34,(uint32_t)irq34);
+ add_idt_entry(35,(uint32_t)irq35);
+ add_idt_entry(36,(uint32_t)irq36);
+ add_idt_entry(37,(uint32_t)irq37);
+ add_idt_entry(38,(uint32_t)irq38);
+ add_idt_entry(39,(uint32_t)irq39);
+ add_idt_entry(40,(uint32_t)irq40);
+ add_idt_entry(41,(uint32_t)irq41);
+ add_idt_entry(42,(uint32_t)irq42);
+ add_idt_entry(43,(uint32_t)irq43);
+ add_idt_entry(44,(uint32_t)irq44);
+ add_idt_entry(45,(uint32_t)irq45);
+ add_idt_entry(46,(uint32_t)irq46);
+ add_idt_entry(47,(uint32_t)irq47);
+ add_idt_entry(48,(uint32_t)irq48);
+ add_idt_entry(49,(uint32_t)irq49);
+ add_idt_entry(50,(uint32_t)irq50);
+ add_idt_entry(51,(uint32_t)irq51);
+ add_idt_entry(52,(uint32_t)irq52);
+ add_idt_entry(53,(uint32_t)irq53);
+ add_idt_entry(54,(uint32_t)irq54);
+ add_idt_entry(55,(uint32_t)irq55);
+ add_idt_entry(56,(uint32_t)irq56);
+ add_idt_entry(57,(uint32_t)irq57);
+ add_idt_entry(58,(uint32_t)irq58);
+ add_idt_entry(59,(uint32_t)irq59);
+ add_idt_entry(60,(uint32_t)irq60);
+ add_idt_entry(61,(uint32_t)irq61);
+ add_idt_entry(62,(uint32_t)irq62);
+ add_idt_entry(63,(uint32_t)irq63);
+ add_idt_entry(64,(uint32_t)irq64);
+ add_idt_entry(65,(uint32_t)irq65);
+ add_idt_entry(66,(uint32_t)irq66);
+ add_idt_entry(67,(uint32_t)irq67);
+ add_idt_entry(68,(uint32_t)irq68);
+ add_idt_entry(69,(uint32_t)irq69);
+ add_idt_entry(70,(uint32_t)irq70);
+ add_idt_entry(71,(uint32_t)irq71);
+ add_idt_entry(72,(uint32_t)irq72);
+ add_idt_entry(73,(uint32_t)irq73);
+ add_idt_entry(74,(uint32_t)irq74);
+ add_idt_entry(75,(uint32_t)irq75);
+ add_idt_entry(76,(uint32_t)irq76);
+ add_idt_entry(77,(uint32_t)irq77);
+ add_idt_entry(78,(uint32_t)irq78);
+ add_idt_entry(79,(uint32_t)irq79);
+ add_idt_entry(80,(uint32_t)irq80);
+ add_idt_entry(81,(uint32_t)irq81);
+ add_idt_entry(82,(uint32_t)irq82);
+ add_idt_entry(83,(uint32_t)irq83);
+ add_idt_entry(84,(uint32_t)irq84);
+ add_idt_entry(85,(uint32_t)irq85);
+ add_idt_entry(86,(uint32_t)irq86);
+ add_idt_entry(87,(uint32_t)irq87);
+ add_idt_entry(88,(uint32_t)irq88);
+ add_idt_entry(89,(uint32_t)irq89);
+ add_idt_entry(90,(uint32_t)irq90);
+ add_idt_entry(91,(uint32_t)irq91);
+ add_idt_entry(92,(uint32_t)irq92);
+ add_idt_entry(93,(uint32_t)irq93);
+ add_idt_entry(94,(uint32_t)irq94);
+ add_idt_entry(95,(uint32_t)irq95);
+ add_idt_entry(96,(uint32_t)irq96);
+ add_idt_entry(97,(uint32_t)irq97);
+ add_idt_entry(98,(uint32_t)irq98);
+ add_idt_entry(99,(uint32_t)irq99);
+ add_idt_entry(100,(uint32_t)irq100);
+ add_idt_entry(101,(uint32_t)irq101);
+ add_idt_entry(102,(uint32_t)irq102);
+ add_idt_entry(103,(uint32_t)irq103);
+ add_idt_entry(104,(uint32_t)irq104);
+ add_idt_entry(105,(uint32_t)irq105);
+ add_idt_entry(106,(uint32_t)irq106);
+ add_idt_entry(107,(uint32_t)irq107);
+ add_idt_entry(108,(uint32_t)irq108);
+ add_idt_entry(109,(uint32_t)irq109);
+ add_idt_entry(110,(uint32_t)irq110);
+ add_idt_entry(111,(uint32_t)irq111);
+ add_idt_entry(112,(uint32_t)irq112);
+ add_idt_entry(113,(uint32_t)irq113);
+ add_idt_entry(114,(uint32_t)irq114);
+ add_idt_entry(115,(uint32_t)irq115);
+ add_idt_entry(116,(uint32_t)irq116);
+ add_idt_entry(117,(uint32_t)irq117);
+ add_idt_entry(118,(uint32_t)irq118);
+ add_idt_entry(119,(uint32_t)irq119);
+ add_idt_entry(120,(uint32_t)irq120);
+ add_idt_entry(121,(uint32_t)irq121);
+ add_idt_entry(122,(uint32_t)irq122);
+ add_idt_entry(123,(uint32_t)irq123);
+ add_idt_entry(124,(uint32_t)irq124);
+ add_idt_entry(125,(uint32_t)irq125);
+ add_idt_entry(126,(uint32_t)irq126);
+ add_idt_entry(127,(uint32_t)irq127);
+ add_idt_entry(128,(uint32_t)irq128);
+ add_idt_entry(129,(uint32_t)irq129);
+ add_idt_entry(130,(uint32_t)irq130);
+ add_idt_entry(131,(uint32_t)irq131);
+ add_idt_entry(132,(uint32_t)irq132);
+ add_idt_entry(133,(uint32_t)irq133);
+ add_idt_entry(134,(uint32_t)irq134);
+ add_idt_entry(135,(uint32_t)irq135);
+ add_idt_entry(136,(uint32_t)irq136);
+ add_idt_entry(137,(uint32_t)irq137);
+ add_idt_entry(138,(uint32_t)irq138);
+ add_idt_entry(139,(uint32_t)irq139);
+ add_idt_entry(140,(uint32_t)irq140);
+ add_idt_entry(141,(uint32_t)irq141);
+ add_idt_entry(142,(uint32_t)irq142);
+ add_idt_entry(143,(uint32_t)irq143);
+ add_idt_entry(144,(uint32_t)irq144);
+ add_idt_entry(145,(uint32_t)irq145);
+ add_idt_entry(146,(uint32_t)irq146);
+ add_idt_entry(147,(uint32_t)irq147);
+ add_idt_entry(148,(uint32_t)irq148);
+ add_idt_entry(149,(uint32_t)irq149);
+ add_idt_entry(150,(uint32_t)irq150);
+ add_idt_entry(151,(uint32_t)irq151);
+ add_idt_entry(152,(uint32_t)irq152);
+ add_idt_entry(153,(uint32_t)irq153);
+ add_idt_entry(154,(uint32_t)irq154);
+ add_idt_entry(155,(uint32_t)irq155);
+ add_idt_entry(156,(uint32_t)irq156);
+ add_idt_entry(157,(uint32_t)irq157);
+ add_idt_entry(158,(uint32_t)irq158);
+ add_idt_entry(159,(uint32_t)irq159);
+ add_idt_entry(160,(uint32_t)irq160);
+ add_idt_entry(161,(uint32_t)irq161);
+ add_idt_entry(162,(uint32_t)irq162);
+ add_idt_entry(163,(uint32_t)irq163);
+ add_idt_entry(164,(uint32_t)irq164);
+ add_idt_entry(165,(uint32_t)irq165);
+ add_idt_entry(166,(uint32_t)irq166);
+ add_idt_entry(167,(uint32_t)irq167);
+ add_idt_entry(168,(uint32_t)irq168);
+ add_idt_entry(169,(uint32_t)irq169);
+ add_idt_entry(170,(uint32_t)irq170);
+ add_idt_entry(171,(uint32_t)irq171);
+ add_idt_entry(172,(uint32_t)irq172);
+ add_idt_entry(173,(uint32_t)irq173);
+ add_idt_entry(174,(uint32_t)irq174);
+ add_idt_entry(175,(uint32_t)irq175);
+ add_idt_entry(176,(uint32_t)irq176);
+ add_idt_entry(177,(uint32_t)irq177);
+ add_idt_entry(178,(uint32_t)irq178);
+ add_idt_entry(179,(uint32_t)irq179);
+ add_idt_entry(180,(uint32_t)irq180);
+ add_idt_entry(181,(uint32_t)irq181);
+ add_idt_entry(182,(uint32_t)irq182);
+ add_idt_entry(183,(uint32_t)irq183);
+ add_idt_entry(184,(uint32_t)irq184);
+ add_idt_entry(185,(uint32_t)irq185);
+ add_idt_entry(186,(uint32_t)irq186);
+ add_idt_entry(187,(uint32_t)irq187);
+ add_idt_entry(188,(uint32_t)irq188);
+ add_idt_entry(189,(uint32_t)irq189);
+ add_idt_entry(190,(uint32_t)irq190);
+ add_idt_entry(191,(uint32_t)irq191);
+ add_idt_entry(192,(uint32_t)irq192);
+ add_idt_entry(193,(uint32_t)irq193);
+ add_idt_entry(194,(uint32_t)irq194);
+ add_idt_entry(195,(uint32_t)irq195);
+ add_idt_entry(196,(uint32_t)irq196);
+ add_idt_entry(197,(uint32_t)irq197);
+ add_idt_entry(198,(uint32_t)irq198);
+ add_idt_entry(199,(uint32_t)irq199);
+ add_idt_entry(200,(uint32_t)irq200);
+ add_idt_entry(201,(uint32_t)irq201);
+ add_idt_entry(202,(uint32_t)irq202);
+ add_idt_entry(203,(uint32_t)irq203);
+ add_idt_entry(204,(uint32_t)irq204);
+ add_idt_entry(205,(uint32_t)irq205);
+ add_idt_entry(206,(uint32_t)irq206);
+ add_idt_entry(207,(uint32_t)irq207);
+ add_idt_entry(208,(uint32_t)irq208);
+ add_idt_entry(209,(uint32_t)irq209);
+ add_idt_entry(210,(uint32_t)irq210);
+ add_idt_entry(211,(uint32_t)irq211);
+ add_idt_entry(212,(uint32_t)irq212);
+ add_idt_entry(213,(uint32_t)irq213);
+ add_idt_entry(214,(uint32_t)irq214);
+ add_idt_entry(215,(uint32_t)irq215);
+ add_idt_entry(216,(uint32_t)irq216);
+ add_idt_entry(217,(uint32_t)irq217);
+ add_idt_entry(218,(uint32_t)irq218);
+ add_idt_entry(219,(uint32_t)irq219);
+ add_idt_entry(220,(uint32_t)irq220);
+ add_idt_entry(221,(uint32_t)irq221);
+ add_idt_entry(222,(uint32_t)irq222);
+ add_idt_entry(223,(uint32_t)irq223);
+ add_idt_entry(224,(uint32_t)irq224);
+ add_idt_entry(225,(uint32_t)irq225);
+ add_idt_entry(226,(uint32_t)irq226);
+ add_idt_entry(227,(uint32_t)irq227);
+ add_idt_entry(228,(uint32_t)irq228);
+ add_idt_entry(229,(uint32_t)irq229);
+ add_idt_entry(230,(uint32_t)irq230);
+ add_idt_entry(231,(uint32_t)irq231);
+ add_idt_entry(232,(uint32_t)irq232);
+ add_idt_entry(233,(uint32_t)irq233);
+ add_idt_entry(234,(uint32_t)irq234);
+ add_idt_entry(235,(uint32_t)irq235);
+ add_idt_entry(236,(uint32_t)irq236);
+ add_idt_entry(237,(uint32_t)irq237);
+ add_idt_entry(238,(uint32_t)irq238);
+ add_idt_entry(239,(uint32_t)irq239);
+ add_idt_entry(240,(uint32_t)irq240);
+ add_idt_entry(241,(uint32_t)irq241);
+ add_idt_entry(242,(uint32_t)irq242);
+ add_idt_entry(243,(uint32_t)irq243);
+ add_idt_entry(244,(uint32_t)irq244);
+ add_idt_entry(245,(uint32_t)irq245);
+ add_idt_entry(246,(uint32_t)irq246);
+ add_idt_entry(247,(uint32_t)irq247);
+ add_idt_entry(248,(uint32_t)irq248);
+ add_idt_entry(249,(uint32_t)irq249);
+ add_idt_entry(250,(uint32_t)irq250);
+ add_idt_entry(251,(uint32_t)irq251);
+ add_idt_entry(252,(uint32_t)irq252);
+ add_idt_entry(253,(uint32_t)irq253);
+ add_idt_entry(254,(uint32_t)irq254);
+ add_idt_entry(255,(uint32_t)irq255);
idtp.size=sizeof(struct idt_entry)*256-1;
idtp.offset=(uint32_t)&idt;
diff --git a/src/c/irq_handler.c b/src/c/irq_handler.c
index b687148..a448701 100644
--- a/src/c/irq_handler.c
+++ b/src/c/irq_handler.c
@@ -225,3 +225,1333 @@ void irq31_handler(void)
printf("Interrupt 31.\n");
printf("Reserved\n");
}
+void irq34_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 34.\n");
+}
+
+void irq35_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 35.\n");
+}
+
+void irq36_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 36.\n");
+}
+
+void irq37_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 37.\n");
+}
+
+void irq38_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 38.\n");
+}
+
+void irq39_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+}
+
+void irq40_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 40.\n");
+}
+
+void irq41_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 41.\n");
+}
+
+void irq42_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 42.\n");
+}
+
+void irq43_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 43.\n");
+}
+
+void irq44_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 44.\n");
+}
+
+void irq45_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 45.\n");
+}
+
+void irq46_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 46.\n");
+}
+
+void irq47_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 47.\n");
+}
+
+void irq48_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 48.\n");
+}
+
+void irq49_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 49.\n");
+}
+
+void irq50_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 50.\n");
+}
+
+void irq51_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 51.\n");
+}
+
+void irq52_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 52.\n");
+}
+
+void irq53_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 53.\n");
+}
+
+void irq54_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 54.\n");
+}
+
+void irq55_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 55.\n");
+}
+
+void irq56_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 56.\n");
+}
+
+void irq57_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 57.\n");
+}
+
+void irq58_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 58.\n");
+}
+
+void irq59_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 59.\n");
+}
+
+void irq60_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 60.\n");
+}
+
+void irq61_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 61.\n");
+}
+
+void irq62_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 62.\n");
+}
+
+void irq63_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 63.\n");
+}
+
+void irq64_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 64.\n");
+}
+
+void irq65_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 65.\n");
+}
+
+void irq66_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 66.\n");
+}
+
+void irq67_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 67.\n");
+}
+
+void irq68_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 68.\n");
+}
+
+void irq69_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 69.\n");
+}
+
+void irq70_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 70.\n");
+}
+
+void irq71_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 71.\n");
+}
+
+void irq72_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 72.\n");
+}
+
+void irq73_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 73.\n");
+}
+
+void irq74_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 74.\n");
+}
+
+void irq75_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 75.\n");
+}
+
+void irq76_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 76.\n");
+}
+
+void irq77_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 77.\n");
+}
+
+void irq78_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 78.\n");
+}
+
+void irq79_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 79.\n");
+}
+
+void irq80_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 80.\n");
+}
+
+void irq81_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 81.\n");
+}
+
+void irq82_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 82.\n");
+}
+
+void irq83_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 83.\n");
+}
+
+void irq84_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 84.\n");
+}
+
+void irq85_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 85.\n");
+}
+
+void irq86_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 86.\n");
+}
+
+void irq87_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 87.\n");
+}
+
+void irq88_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 88.\n");
+}
+
+void irq89_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 89.\n");
+}
+
+void irq90_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 90.\n");
+}
+
+void irq91_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 91.\n");
+}
+
+void irq92_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 92.\n");
+}
+
+void irq93_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 93.\n");
+}
+
+void irq94_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 94.\n");
+}
+
+void irq95_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 95.\n");
+}
+
+void irq96_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 96.\n");
+}
+
+void irq97_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 97.\n");
+}
+
+void irq98_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 98.\n");
+}
+
+void irq99_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 99.\n");
+}
+
+void irq100_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 100.\n");
+}
+
+void irq101_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 101.\n");
+}
+
+void irq102_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 102.\n");
+}
+
+void irq103_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 103.\n");
+}
+
+void irq104_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 104.\n");
+}
+
+void irq105_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 105.\n");
+}
+
+void irq106_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 106.\n");
+}
+
+void irq107_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 107.\n");
+}
+
+void irq108_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 108.\n");
+}
+
+void irq109_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 109.\n");
+}
+
+void irq110_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 110.\n");
+}
+
+void irq111_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 111.\n");
+}
+
+void irq112_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 112.\n");
+}
+
+void irq113_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 113.\n");
+}
+
+void irq114_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 114.\n");
+}
+
+void irq115_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 115.\n");
+}
+
+void irq116_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 116.\n");
+}
+
+void irq117_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 117.\n");
+}
+
+void irq118_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 118.\n");
+}
+
+void irq119_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 119.\n");
+}
+
+void irq120_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 120.\n");
+}
+
+void irq121_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 121.\n");
+}
+
+void irq122_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 122.\n");
+}
+
+void irq123_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 123.\n");
+}
+
+void irq124_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 124.\n");
+}
+
+void irq125_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 125.\n");
+}
+
+void irq126_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 126.\n");
+}
+
+void irq127_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 127.\n");
+}
+
+void irq128_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 128.\n");
+}
+
+void irq129_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 129.\n");
+}
+
+void irq130_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 130.\n");
+}
+
+void irq131_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 131.\n");
+}
+
+void irq132_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 132.\n");
+}
+
+void irq133_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 133.\n");
+}
+
+void irq134_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 134.\n");
+}
+
+void irq135_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 135.\n");
+}
+
+void irq136_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 136.\n");
+}
+
+void irq137_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 137.\n");
+}
+
+void irq138_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 138.\n");
+}
+
+void irq139_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 139.\n");
+}
+
+void irq140_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 140.\n");
+}
+
+void irq141_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 141.\n");
+}
+
+void irq142_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 142.\n");
+}
+
+void irq143_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 143.\n");
+}
+
+void irq144_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 144.\n");
+}
+
+void irq145_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 145.\n");
+}
+
+void irq146_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 146.\n");
+}
+
+void irq147_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 147.\n");
+}
+
+void irq148_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 148.\n");
+}
+
+void irq149_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 149.\n");
+}
+
+void irq150_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 150.\n");
+}
+
+void irq151_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 151.\n");
+}
+
+void irq152_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 152.\n");
+}
+
+void irq153_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 153.\n");
+}
+
+void irq154_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 154.\n");
+}
+
+void irq155_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 155.\n");
+}
+
+void irq156_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 156.\n");
+}
+
+void irq157_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 157.\n");
+}
+
+void irq158_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 158.\n");
+}
+
+void irq159_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 159.\n");
+}
+
+void irq160_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 160.\n");
+}
+
+void irq161_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 161.\n");
+}
+
+void irq162_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 162.\n");
+}
+
+void irq163_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 163.\n");
+}
+
+void irq164_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 164.\n");
+}
+
+void irq165_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 165.\n");
+}
+
+void irq166_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 166.\n");
+}
+
+void irq167_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 167.\n");
+}
+
+void irq168_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 168.\n");
+}
+
+void irq169_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 169.\n");
+}
+
+void irq170_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 170.\n");
+}
+
+void irq171_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 171.\n");
+}
+
+void irq172_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 172.\n");
+}
+
+void irq173_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 173.\n");
+}
+
+void irq174_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 174.\n");
+}
+
+void irq175_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 175.\n");
+}
+
+void irq176_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 176.\n");
+}
+
+void irq177_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 177.\n");
+}
+
+void irq178_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 178.\n");
+}
+
+void irq179_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 179.\n");
+}
+
+void irq180_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 180.\n");
+}
+
+void irq181_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 181.\n");
+}
+
+void irq182_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 182.\n");
+}
+
+void irq183_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 183.\n");
+}
+
+void irq184_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 184.\n");
+}
+
+void irq185_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 185.\n");
+}
+
+void irq186_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 186.\n");
+}
+
+void irq187_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 187.\n");
+}
+
+void irq188_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 188.\n");
+}
+
+void irq189_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 189.\n");
+}
+
+void irq190_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 190.\n");
+}
+
+void irq191_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 191.\n");
+}
+
+void irq192_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 192.\n");
+}
+
+void irq193_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 193.\n");
+}
+
+void irq194_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 194.\n");
+}
+
+void irq195_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 195.\n");
+}
+
+void irq196_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 196.\n");
+}
+
+void irq197_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 197.\n");
+}
+
+void irq198_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 198.\n");
+}
+
+void irq199_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 199.\n");
+}
+
+void irq200_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 200.\n");
+}
+
+void irq201_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 201.\n");
+}
+
+void irq202_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 202.\n");
+}
+
+void irq203_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 203.\n");
+}
+
+void irq204_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 204.\n");
+}
+
+void irq205_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 205.\n");
+}
+
+void irq206_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 206.\n");
+}
+
+void irq207_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 207.\n");
+}
+
+void irq208_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 208.\n");
+}
+
+void irq209_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 209.\n");
+}
+
+void irq210_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 210.\n");
+}
+
+void irq211_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 211.\n");
+}
+
+void irq212_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 212.\n");
+}
+
+void irq213_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 213.\n");
+}
+
+void irq214_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 214.\n");
+}
+
+void irq215_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 215.\n");
+}
+
+void irq216_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 216.\n");
+}
+
+void irq217_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 217.\n");
+}
+
+void irq218_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 218.\n");
+}
+
+void irq219_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 219.\n");
+}
+
+void irq220_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 220.\n");
+}
+
+void irq221_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 221.\n");
+}
+
+void irq222_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 222.\n");
+}
+
+void irq223_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 223.\n");
+}
+
+void irq224_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 224.\n");
+}
+
+void irq225_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 225.\n");
+}
+
+void irq226_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 226.\n");
+}
+
+void irq227_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 227.\n");
+}
+
+void irq228_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 228.\n");
+}
+
+void irq229_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 229.\n");
+}
+
+void irq230_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 230.\n");
+}
+
+void irq231_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 231.\n");
+}
+
+void irq232_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 232.\n");
+}
+
+void irq233_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 233.\n");
+}
+
+void irq234_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 234.\n");
+}
+
+void irq235_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 235.\n");
+}
+
+void irq236_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 236.\n");
+}
+
+void irq237_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 237.\n");
+}
+
+void irq238_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 238.\n");
+}
+
+void irq239_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 239.\n");
+}
+
+void irq240_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 240.\n");
+}
+
+void irq241_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 241.\n");
+}
+
+void irq242_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 242.\n");
+}
+
+void irq243_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 243.\n");
+}
+
+void irq244_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 244.\n");
+}
+
+void irq245_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 245.\n");
+}
+
+void irq246_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 246.\n");
+}
+
+void irq247_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 247.\n");
+}
+
+void irq248_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 248.\n");
+}
+
+void irq249_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 249.\n");
+}
+
+void irq250_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 250.\n");
+}
+
+void irq251_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 251.\n");
+}
+
+void irq252_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 252.\n");
+}
+
+void irq253_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 253.\n");
+}
+
+void irq254_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 254.\n");
+}
+
+void irq255_handler(void)
+{
+ ioport_out(PIC1_COMMAND_PORT, 0x20);
+ printf("Interrupt 255.\n");
+}
diff --git a/src/c/keyboard.c b/src/c/keyboard.c
index ab31315..5242bb0 100644
--- a/src/c/keyboard.c
+++ b/src/c/keyboard.c
@@ -150,6 +150,7 @@ void keyboard_handler()
{
c=shift_charcode[keycode];
}
+
if(buffer_index<BUFFER_SIZE)
{
buffer[buffer_current][buffer_index++]=c;
diff --git a/src/include/source/irq.h b/src/include/source/irq.h
index febf3e1..5c0c0aa 100644
--- a/src/include/source/irq.h
+++ b/src/include/source/irq.h
@@ -35,5 +35,227 @@ extern void irq30(void);
extern void irq31(void);
extern void timer_irq(void);
extern void keyboard_irq(void);
+extern void irq34(void);
+extern void irq35(void);
+extern void irq36(void);
+extern void irq37(void);
+extern void irq38(void);
+extern void irq39(void);
+extern void irq40(void);
+extern void irq41(void);
+extern void irq42(void);
+extern void irq43(void);
+extern void irq44(void);
+extern void irq45(void);
+extern void irq46(void);
+extern void irq47(void);
+extern void irq48(void);
+extern void irq49(void);
+extern void irq50(void);
+extern void irq51(void);
+extern void irq52(void);
+extern void irq53(void);
+extern void irq54(void);
+extern void irq55(void);
+extern void irq56(void);
+extern void irq57(void);
+extern void irq58(void);
+extern void irq59(void);
+extern void irq60(void);
+extern void irq61(void);
+extern void irq62(void);
+extern void irq63(void);
+extern void irq64(void);
+extern void irq65(void);
+extern void irq66(void);
+extern void irq67(void);
+extern void irq68(void);
+extern void irq69(void);
+extern void irq70(void);
+extern void irq71(void);
+extern void irq72(void);
+extern void irq73(void);
+extern void irq74(void);
+extern void irq75(void);
+extern void irq76(void);
+extern void irq77(void);
+extern void irq78(void);
+extern void irq79(void);
+extern void irq80(void);
+extern void irq81(void);
+extern void irq82(void);
+extern void irq83(void);
+extern void irq84(void);
+extern void irq85(void);
+extern void irq86(void);
+extern void irq87(void);
+extern void irq88(void);
+extern void irq89(void);
+extern void irq90(void);
+extern void irq91(void);
+extern void irq92(void);
+extern void irq93(void);
+extern void irq94(void);
+extern void irq95(void);
+extern void irq96(void);
+extern void irq97(void);
+extern void irq98(void);
+extern void irq99(void);
+extern void irq100(void);
+extern void irq101(void);
+extern void irq102(void);
+extern void irq103(void);
+extern void irq104(void);
+extern void irq105(void);
+extern void irq106(void);
+extern void irq107(void);
+extern void irq108(void);
+extern void irq109(void);
+extern void irq110(void);
+extern void irq111(void);
+extern void irq112(void);
+extern void irq113(void);
+extern void irq114(void);
+extern void irq115(void);
+extern void irq116(void);
+extern void irq117(void);
+extern void irq118(void);
+extern void irq119(void);
+extern void irq120(void);
+extern void irq121(void);
+extern void irq122(void);
+extern void irq123(void);
+extern void irq124(void);
+extern void irq125(void);
+extern void irq126(void);
+extern void irq127(void);
+extern void irq128(void);
+extern void irq129(void);
+extern void irq130(void);
+extern void irq131(void);
+extern void irq132(void);
+extern void irq133(void);
+extern void irq134(void);
+extern void irq135(void);
+extern void irq136(void);
+extern void irq137(void);
+extern void irq138(void);
+extern void irq139(void);
+extern void irq140(void);
+extern void irq141(void);
+extern void irq142(void);
+extern void irq143(void);
+extern void irq144(void);
+extern void irq145(void);
+extern void irq146(void);
+extern void irq147(void);
+extern void irq148(void);
+extern void irq149(void);
+extern void irq150(void);
+extern void irq151(void);
+extern void irq152(void);
+extern void irq153(void);
+extern void irq154(void);
+extern void irq155(void);
+extern void irq156(void);
+extern void irq157(void);
+extern void irq158(void);
+extern void irq159(void);
+extern void irq160(void);
+extern void irq161(void);
+extern void irq162(void);
+extern void irq163(void);
+extern void irq164(void);
+extern void irq165(void);
+extern void irq166(void);
+extern void irq167(void);
+extern void irq168(void);
+extern void irq169(void);
+extern void irq170(void);
+extern void irq171(void);
+extern void irq172(void);
+extern void irq173(void);
+extern void irq174(void);
+extern void irq175(void);
+extern void irq176(void);
+extern void irq177(void);
+extern void irq178(void);
+extern void irq179(void);
+extern void irq180(void);
+extern void irq181(void);
+extern void irq182(void);
+extern void irq183(void);
+extern void irq184(void);
+extern void irq185(void);
+extern void irq186(void);
+extern void irq187(void);
+extern void irq188(void);
+extern void irq189(void);
+extern void irq190(void);
+extern void irq191(void);
+extern void irq192(void);
+extern void irq193(void);
+extern void irq194(void);
+extern void irq195(void);
+extern void irq196(void);
+extern void irq197(void);
+extern void irq198(void);
+extern void irq199(void);
+extern void irq200(void);
+extern void irq201(void);
+extern void irq202(void);
+extern void irq203(void);
+extern void irq204(void);
+extern void irq205(void);
+extern void irq206(void);
+extern void irq207(void);
+extern void irq208(void);
+extern void irq209(void);
+extern void irq210(void);
+extern void irq211(void);
+extern void irq212(void);
+extern void irq213(void);
+extern void irq214(void);
+extern void irq215(void);
+extern void irq216(void);
+extern void irq217(void);
+extern void irq218(void);
+extern void irq219(void);
+extern void irq220(void);
+extern void irq221(void);
+extern void irq222(void);
+extern void irq223(void);
+extern void irq224(void);
+extern void irq225(void);
+extern void irq226(void);
+extern void irq227(void);
+extern void irq228(void);
+extern void irq229(void);
+extern void irq230(void);
+extern void irq231(void);
+extern void irq232(void);
+extern void irq233(void);
+extern void irq234(void);
+extern void irq235(void);
+extern void irq236(void);
+extern void irq237(void);
+extern void irq238(void);
+extern void irq239(void);
+extern void irq240(void);
+extern void irq241(void);
+extern void irq242(void);
+extern void irq243(void);
+extern void irq244(void);
+extern void irq245(void);
+extern void irq246(void);
+extern void irq247(void);
+extern void irq248(void);
+extern void irq249(void);
+extern void irq250(void);
+extern void irq251(void);
+extern void irq252(void);
+extern void irq253(void);
+extern void irq254(void);
+extern void irq255(void);
#endif
diff --git a/src/include/source/irq_handler.h b/src/include/source/irq_handler.h
index a20ed70..ee88d1f 100644
--- a/src/include/source/irq_handler.h
+++ b/src/include/source/irq_handler.h
@@ -39,5 +39,227 @@ void irq28_handler(void);
void irq29_handler(void);
void irq30_handler(void);
void irq31_handler(void);
+void irq34_handler(void);
+void irq35_handler(void);
+void irq36_handler(void);
+void irq37_handler(void);
+void irq38_handler(void);
+void irq39_handler(void);
+void irq40_handler(void);
+void irq41_handler(void);
+void irq42_handler(void);
+void irq43_handler(void);
+void irq44_handler(void);
+void irq45_handler(void);
+void irq46_handler(void);
+void irq47_handler(void);
+void irq48_handler(void);
+void irq49_handler(void);
+void irq50_handler(void);
+void irq51_handler(void);
+void irq52_handler(void);
+void irq53_handler(void);
+void irq54_handler(void);
+void irq55_handler(void);
+void irq56_handler(void);
+void irq57_handler(void);
+void irq58_handler(void);
+void irq59_handler(void);
+void irq60_handler(void);
+void irq61_handler(void);
+void irq62_handler(void);
+void irq63_handler(void);
+void irq64_handler(void);
+void irq65_handler(void);
+void irq66_handler(void);
+void irq67_handler(void);
+void irq68_handler(void);
+void irq69_handler(void);
+void irq70_handler(void);
+void irq71_handler(void);
+void irq72_handler(void);
+void irq73_handler(void);
+void irq74_handler(void);
+void irq75_handler(void);
+void irq76_handler(void);
+void irq77_handler(void);
+void irq78_handler(void);
+void irq79_handler(void);
+void irq80_handler(void);
+void irq81_handler(void);
+void irq82_handler(void);
+void irq83_handler(void);
+void irq84_handler(void);
+void irq85_handler(void);
+void irq86_handler(void);
+void irq87_handler(void);
+void irq88_handler(void);
+void irq89_handler(void);
+void irq90_handler(void);
+void irq91_handler(void);
+void irq92_handler(void);
+void irq93_handler(void);
+void irq94_handler(void);
+void irq95_handler(void);
+void irq96_handler(void);
+void irq97_handler(void);
+void irq98_handler(void);
+void irq99_handler(void);
+void irq100_handler(void);
+void irq101_handler(void);
+void irq102_handler(void);
+void irq103_handler(void);
+void irq104_handler(void);
+void irq105_handler(void);
+void irq106_handler(void);
+void irq107_handler(void);
+void irq108_handler(void);
+void irq109_handler(void);
+void irq110_handler(void);
+void irq111_handler(void);
+void irq112_handler(void);
+void irq113_handler(void);
+void irq114_handler(void);
+void irq115_handler(void);
+void irq116_handler(void);
+void irq117_handler(void);
+void irq118_handler(void);
+void irq119_handler(void);
+void irq120_handler(void);
+void irq121_handler(void);
+void irq122_handler(void);
+void irq123_handler(void);
+void irq124_handler(void);
+void irq125_handler(void);
+void irq126_handler(void);
+void irq127_handler(void);
+void irq128_handler(void);
+void irq129_handler(void);
+void irq130_handler(void);
+void irq131_handler(void);
+void irq132_handler(void);
+void irq133_handler(void);
+void irq134_handler(void);
+void irq135_handler(void);
+void irq136_handler(void);
+void irq137_handler(void);
+void irq138_handler(void);
+void irq139_handler(void);
+void irq140_handler(void);
+void irq141_handler(void);
+void irq142_handler(void);
+void irq143_handler(void);
+void irq144_handler(void);
+void irq145_handler(void);
+void irq146_handler(void);
+void irq147_handler(void);
+void irq148_handler(void);
+void irq149_handler(void);
+void irq150_handler(void);
+void irq151_handler(void);
+void irq152_handler(void);
+void irq153_handler(void);
+void irq154_handler(void);
+void irq155_handler(void);
+void irq156_handler(void);
+void irq157_handler(void);
+void irq158_handler(void);
+void irq159_handler(void);
+void irq160_handler(void);
+void irq161_handler(void);
+void irq162_handler(void);
+void irq163_handler(void);
+void irq164_handler(void);
+void irq165_handler(void);
+void irq166_handler(void);
+void irq167_handler(void);
+void irq168_handler(void);
+void irq169_handler(void);
+void irq170_handler(void);
+void irq171_handler(void);
+void irq172_handler(void);
+void irq173_handler(void);
+void irq174_handler(void);
+void irq175_handler(void);
+void irq176_handler(void);
+void irq177_handler(void);
+void irq178_handler(void);
+void irq179_handler(void);
+void irq180_handler(void);
+void irq181_handler(void);
+void irq182_handler(void);
+void irq183_handler(void);
+void irq184_handler(void);
+void irq185_handler(void);
+void irq186_handler(void);
+void irq187_handler(void);
+void irq188_handler(void);
+void irq189_handler(void);
+void irq190_handler(void);
+void irq191_handler(void);
+void irq192_handler(void);
+void irq193_handler(void);
+void irq194_handler(void);
+void irq195_handler(void);
+void irq196_handler(void);
+void irq197_handler(void);
+void irq198_handler(void);
+void irq199_handler(void);
+void irq200_handler(void);
+void irq201_handler(void);
+void irq202_handler(void);
+void irq203_handler(void);
+void irq204_handler(void);
+void irq205_handler(void);
+void irq206_handler(void);
+void irq207_handler(void);
+void irq208_handler(void);
+void irq209_handler(void);
+void irq210_handler(void);
+void irq211_handler(void);
+void irq212_handler(void);
+void irq213_handler(void);
+void irq214_handler(void);
+void irq215_handler(void);
+void irq216_handler(void);
+void irq217_handler(void);
+void irq218_handler(void);
+void irq219_handler(void);
+void irq220_handler(void);
+void irq221_handler(void);
+void irq222_handler(void);
+void irq223_handler(void);
+void irq224_handler(void);
+void irq225_handler(void);
+void irq226_handler(void);
+void irq227_handler(void);
+void irq228_handler(void);
+void irq229_handler(void);
+void irq230_handler(void);
+void irq231_handler(void);
+void irq232_handler(void);
+void irq233_handler(void);
+void irq234_handler(void);
+void irq235_handler(void);
+void irq236_handler(void);
+void irq237_handler(void);
+void irq238_handler(void);
+void irq239_handler(void);
+void irq240_handler(void);
+void irq241_handler(void);
+void irq242_handler(void);
+void irq243_handler(void);
+void irq244_handler(void);
+void irq245_handler(void);
+void irq246_handler(void);
+void irq247_handler(void);
+void irq248_handler(void);
+void irq249_handler(void);
+void irq250_handler(void);
+void irq251_handler(void);
+void irq252_handler(void);
+void irq253_handler(void);
+void irq254_handler(void);
+void irq255_handler(void);
#endif