Fehler gefunden: Ich habe meinen MAX232 zerstört...

Was würdet ihr eigentlich zu diesem Code Sagen?
Code:
'Gameboy Kamera

$regfile = "m8515.dat"                                      'ATmega8515-Deklarationen
$crystal = 4000000                                          'Quarz: 4 MHz
$baud = 9600

Declare Sub Register_laden(addr As Byte , Wert As Byte)

Dim Regaddr(8) As Byte
Dim Regwert(8) As Byte
Dim I As Byte

Dim Bild(16384) As Xram Byte
Dim Z As Word

'Register festlegen:
Regaddr(1) = 1
Regaddr(2) = 2
Regaddr(3) = 3
Regaddr(4) = 4
Regaddr(5) = 5
Regaddr(6) = 6
Regaddr(7) = 7
Regaddr(8) = 0

Regwert(1) = 128
Regwert(2) = 14
Regwert(3) = 6
Regwert(4) = 0
Regwert(5) = 1
Regwert(6) = 0
Regwert(7) = 1
Regwert(8) = 7

Config Scl = Portb.2
Config Sda = Portb.3
Config I2cdelay = 10

'A/D-Wandler einstellen:
I2cinit
I2cstart
I2cwbyte &B10010000
I2cwbyte &B00000000
I2cstop


Config Portb.0 = Output                                     'XCK
Config Portb.1 = Output                                     'Reset
Config Portb.4 = Output                                     'Sin
Config Portd.3 = Input                                      'read
Config Portd.4 = Output                                     'Load
Config Portd.5 = Output                                     'Start

Xckpin Alias Portb.0
Resetpin Alias Portb.1
Sinpin Alias Portb.4
Loadpin Alias Portd.4
Startpin Alias Portd.5
Voutpin Alias Portd.2
Readpin Alias Portd.3

Resetpin = 1                                                'Reset High
Xckpin = 1                                                  'XCK High
Loadpin = 0                                                 'Load Low
Startpin = 0                                                'Start Low

'Reset:
Waitus 5
Xckpin = 0                                                  'XCK Low
Waitus 2
Resetpin = 0                                                'Reset Low
Waitus 2
Xckpin = 1                                                  'XCK High
Waitus 2
Resetpin = 1                                                'Reset High
Waitus 2
Xckpin = 0                                                  'XCK Low

'Register Laden
Call Register_laden(regaddr(1) , Regwert(1))
Call Register_laden(regaddr(2) , Regwert(2))
Call Register_laden(regaddr(3) , Regwert(3))
Call Register_laden(regaddr(4) , Regwert(4))
Call Register_laden(regaddr(5) , Regwert(5))
Call Register_laden(regaddr(6) , Regwert(6))
Call Register_laden(regaddr(7) , Regwert(7))
Call Register_laden(regaddr(8) , Regwert(8))

'Start:
Waitus 2
Startpin = 1
Waitus 2
Xckpin = 1
Waitus 2
Startpin = 0

Do
   'Warten bis Bild fertig:
   Do
      Waitus 3
      Xckpin = 0
      Waitus 5
      Xckpin = 1
      Waitus 2
   Loop Until Readpin = 1

   'Bild lesen;
   I2cstart
   I2cwbyte &B10010001
   For Z = 1 To 16383
      I2crbyte Bild(z) , 8
      Xckpin = 0
      Waitus 4
      Xckpin = 1
   Next

   I2crbyte = Bild(16384) , 9
   I2cstop

   Xckpin = 0
   Waitus 1
   For Z = 1 To 16384
      Printbin Bild(z)
   Next
Loop

End                                                         'end program

Sub Register_laden(addr As Byte , Wert As Byte)
   'Registeraddr übertragen:
   For I = 3 To 1 Step -1
      Waitus 4
      Sinpin = Addr.i
      Xckpin = 1
      Waitus 4
      Xckpin = 0
   Next

   'Registerwert übertragen:
   For I = 8 To 2 Step -1
      Waitus 4
      Sinpin = Wert.i
      Xckpin = 1
      Waitus 4
      Xckpin = 0
   Next
   Waitus 4
   Sinpin = Wert.1
   Xckpin = 0
   Waitus 2
   Loadpin = 1
   Waitus 2
   Xckpin = 0
End Sub
Habe im Moment noch keine Möglichkeit das zu testen.