diff --git a/MAKEFILE b/MAKEFILE deleted file mode 100644 index 9ce86cb..0000000 --- a/MAKEFILE +++ /dev/null @@ -1,59 +0,0 @@ -all: - cd lib - make - cd .. - - cd noyau - make - cd .. - - cd install - make - cd .. - - cd commande - make - cd .. - - cd programs - make - cd .. - -install: - if not exist data mkdir data - copy noyau\systeme.sys data - copy noyau\boot.bin data - copy commande\commande.ce data - copy lib\*.lib data - copy programs\*.ce data - copy programs\exem-lib.lib data - copy programs\cos.rip data - copy install\setup.com . - -copy: clean all - copy noyau\systeme.sys b: - copy commande\*.ce b: - copy lib\*.lib b: - copy programs\*.ce b: - copy programs\*.lib b: - -clean: - cd lib - make clean - cd .. - - cd noyau - make clean - cd .. - - cd install - make clean - cd .. - - cd commande - make clean - cd .. - - cd programs - make clean - cd .. \ No newline at end of file diff --git a/noyau/boot.asm b/boot/boot12.asm similarity index 83% rename from noyau/boot.asm rename to boot/boot12.asm index 05812e0..ef7a4f9 100644 --- a/noyau/boot.asm +++ b/boot/boot12.asm @@ -1,9 +1,5 @@ -model tiny,stdcall -p486 -locals -jumps -codeseg -option procalign:byte +use16 +align 1 include "..\include\mem.h" include "..\include\fat.h" @@ -13,7 +9,7 @@ org 7C00h jmp boot -bootsec bootinfo <"COS2000A",512,1,1,2,224,2880,0F0h,9,18,2,0,0,0,0,0,29h,01020304h,"COS2000 ","FAT12 "> +bootsec bootinfo "COS2000A","COS2000 ","FAT12 " errorloading db " [Erreur]",0dh,0ah,0 okloading db "Recherche noyau ",0Dh,0ah," -" @@ -21,10 +17,8 @@ sys db "SYSTEME SYS",0 syst db " [ Ok ]",0dh,0ah,"Chargement ",0 dot db ".",0 - - errorboot: - mov si,offset errorloading + mov si,errorloading call showstr mov ah,0 int 16h @@ -46,14 +40,14 @@ boot2: mov dl,[bootsec.bootdrive] int 13h jc errorboot - mov si,offset okloading + mov si,okloading call showstr mov cx,[bootsec.reservedsectors] add cx,[bootsec.hiddensectorsh] adc cx,[bootsec.hiddensectorsl] push cx mov bx,[bootsec.sectorsperfat] - mov di,offset bufferfat + mov di,bufferfat readfat: call readsector jc errorboot @@ -72,24 +66,24 @@ readfat: div [bootsec.sectorsize] add ax,cx sub ax,2 - mov [word ptr bootsec.reservedfornt],ax + mov word [bootsec.reservedfornt],ax xor dx,dx checkroot: - mov di,offset buffer + mov di,buffer call readsector jc errorboot xor bx,bx findnext: - cmp [byte ptr di],0 + cmp byte [di],0 je errorboot - cmp [byte ptr di],0E5h + cmp byte [di],0E5h je no - cmp [byte ptr di],041h + cmp byte [di],041h je no - mov si,offset dot + mov si,dot call showstr push di cx - mov si,offset sys + mov si,sys mov cx,11 rep cmpsb pop cx di @@ -105,7 +99,7 @@ no: inc cx jmp checkroot oksystem: - mov si,offset syst + mov si,syst call showstr mov cx,[di+26] mov ax,8000h @@ -113,13 +107,13 @@ oksystem: push es mov di,0000h push 0010h - mov si,offset dot + mov si,dot xor ax,ax fatagain: cmp cx,0FF0h jae finishload push cx - add cx,[word ptr bootsec.reservedfornt] + add cx,word [bootsec.reservedfornt] call readsector pop cx jc errorboot @@ -167,7 +161,7 @@ done: getfat: push ax bx dx di - mov di,offset bufferfat + mov di,bufferfat mov ax,cx mov bx,ax and bx,0000000000000001b @@ -206,11 +200,13 @@ fin: pop si bx ax ret - +rb 7C00h+512-2-$ db 055h,0AAh endof: -buffer equ offset endof+2048 -bufferfat equ offset endof+4096 +buffer: +rb 7C00h+512+2048-$ +bufferfat: +rb 7C00h+512+4096-$ diff --git a/boot/boot12.bin b/boot/boot12.bin new file mode 100644 index 0000000..84e13df Binary files /dev/null and b/boot/boot12.bin differ diff --git a/boot/makefile b/boot/makefile new file mode 100644 index 0000000..a1539f2 --- /dev/null +++ b/boot/makefile @@ -0,0 +1,10 @@ +ASM=fasm +CLEAN=rm -rf + +all: boot12.bin + +boot12.bin: boot12.asm + $(ASM) $< + +clean: + $(CLEAN) *.bin diff --git a/commande/MAKEFILE b/commande/MAKEFILE deleted file mode 100644 index 88ba04d..0000000 --- a/commande/MAKEFILE +++ /dev/null @@ -1,20 +0,0 @@ -asm= lzasm /z/t -lnk= elink - -all: commande.ce - -commande.ce: commande.obj - $(lnk) commande.obj commande.ce - -commande.obj: commande.asm - $(asm) commande.asm - -clean: - del *.obj - del *.ce - del *.bak - del *.lib - del *.com - del *.bin - del *.sys - del *.err \ No newline at end of file diff --git a/contribs/MAKEFILE b/contribs/MAKEFILE deleted file mode 100644 index f9193dc..0000000 --- a/contribs/MAKEFILE +++ /dev/null @@ -1,20 +0,0 @@ -lnk_boot = tlink /x -asm= tasm /t/m5/zi -lnk= tlink /x/t - -all: ex-tasm.com ex-nasm.com - -ex-tasm.com: ex-tasm.asm - $(asm) ex-tasm - $(lnk) ex-tasm - ren ex-tasm.com ex-tasm.com - -ex-nasm.com: ex-nasm.asm - nasm ex-nasm.asm -o ex-nasm.com - -clean: - del *.obj - del *.exe - del *.com - del *.sys - del *.err diff --git a/contribs/ex-nasm.asm b/contribs/ex-nasm.asm deleted file mode 100644 index a73f573..0000000 --- a/contribs/ex-nasm.asm +++ /dev/null @@ -1,27 +0,0 @@ -[bits 16] ;16 bits -[org 0x0] ;Point d'entré en 0h -section .text ;Segment de code - -checks db "CE" ;signature de l'exe -major db 1 ;N° version -checksum dd 0 ;Checksum de l'exe -compressed db 0 ;a 1 si compressé par RLE -exports dw 0 ;importation de fonctions -imports dw imported ;exportation de fonctions -sections dw 0 ;sections des blocs mémoire -starting dw realstart - -imported: -db "VIDEO.LIB::print",0 -print dd 0 -endofimport dd 0 - -realstart: - push msg - call far [cs:print] ;Afficher le texte (Showstring0) - xor ax,ax - int 0x16 ;Attendre l'appuie sur une touche - retf ;retour far - -msg db 'Hello World !!',0 - diff --git a/contribs/ex-tasm.asm b/contribs/ex-tasm.asm deleted file mode 100644 index 2c0cc96..0000000 --- a/contribs/ex-tasm.asm +++ /dev/null @@ -1,31 +0,0 @@ -.model tiny ;model tiny (.com) -.486 ;Pour processeur 80486 -Smart ;Optimisations -.code ;Segment de code - -org 0h ;Point d'entré en 0h - -checks db "CE" ;signature de l'exe -major db 1 ;N° version -checksum dd 0 ;Checksum de l'exe -compressed db 0 ;a 1 si compressé par RLE -exports dw 0 ;importation de fonctions -imports dw imported ;exportation de fonctions -sections dw 0 ;sections des blocs mémoire -starting dw realstart - -imported: -db "VIDEO.LIB::print",0 -print dd 0 - -start: - push msg - call far [cs:print] ;Afficher le texte (Showstring0) - xor ax,ax - int 16h ;Attendre l'appuie sur une touche - db 0CBH ;retour far - -msg db 'Hello World !!',0 - -end start - diff --git a/final/makefile b/final/makefile new file mode 100644 index 0000000..c95f018 --- /dev/null +++ b/final/makefile @@ -0,0 +1,18 @@ +all: cos2000.img + +cos2000.img: + (dd if=/dev/zero of=cos2000.img count=2880 bs=512) + (mkfs.msdos -F 12 -n "COS2000" cos2000.img) + (fusefat cos2000.img ./mnt -o rw+) + (cp ../noyau/systeme.sys ./mnt/) + (cp ../noyau/systeme.ini ./mnt/) + (cp ../programs/*.ce ./mnt/) + (cp ../programs/*.lib ./mnt/) + (cp ../programs/*.rip ./mnt/) + (cp ../lib/*.lib ./mnt/) + (cp ../system/system.sys ./mnt/;sync) + (fusermount ./mnt -u) + (dd if=../boot/boot12.bin of=cos2000.img seek=0 count=1 conv=notrunc;sync) + +clean: + rm -f *.img diff --git a/include/fat.h b/include/fat.h index 61bcb41..8d01fdb 100644 --- a/include/fat.h +++ b/include/fat.h @@ -1,67 +1,72 @@ struc diskbuffer -size dw 12 -current dw 0FFFFh -chain dw 128 dup (0FFFFh) -ends diskbuffer +{ +.size dw 12 +.current dw 0FFFFh +.chain dw 128 dup (0FFFFh) +} struc dpt -steprate&headunload db 0DFh ;Vitesse de progression & mont‚e de la tˆte -dmaflag&headload db 002h ;Etat Dma et temps de descente de la tˆte -delaymotoroff db 025h ;Temps avant extinction moteur -bytepersector db 002h ;Taille des secteurs -sectorpertracks db 000h ;Nombre de secteur par piste -intersectgaplength db 01Bh ;Taille du GAP3 en lecture/‚criture -datalength db 0FFh ;Longueur du transfert de donn‚es -intersectgaplengthf db 054h ;Taille du GAP3 en formatage -formatbyte db 0F6h ;Octet de formatage -headsettlingtime db 000h ;Temps de repos des tˆtes -delaymotornormspeed db 008h ;Temps de mont‚e en vitesse du moteur -ends dpt +{ +.steprateheadunload db 0DFh ;Vitesse de progression & montee de la tete +.dmaflagheadload db 002h ;Etat Dma et temps de descente de la tete +.delaymotoroff db 025h ;Temps avant extinction moteur +.bytepersector db 002h ;Taille des secteurs +.sectorpertracks db 000h ;Nombre de secteur par piste +.intersectgaplength db 01Bh ;Taille du GAP3 en lecture/‚criture +.datalength db 0FFh ;Longueur du transfert de donn‚es +.intersectgaplengthf db 054h ;Taille du GAP3 en formatage +.formatbyte db 0F6h ;Octet de formatage +.headsettlingtime db 000h ;Temps de repos des tˆtes +.delaymotornormspeed db 008h ;Temps de mont‚e en vitesse du moteur +} struc entries -filename db 8 dup (0) -filext db 3 dup (0) -fileattr db 0 -filereserved db 0 -filetimecreams db 0 ;(*10 ms) -filetimecrea dw 0 -filedatecrea dw 0 -filedateacc dw 0 -filenotused dw 0 -filetime dw 0 -filedate dw 0 -filegroup dw 0 -filesize dd 0 -ends entries +{ +.filename db 8 dup (0) +.filext db 3 dup (0) +.fileattr db 0 +.filereserved db 0 +.filetimecreams db 0 ;(*10 ms) +.filetimecrea dw 0 +.filedatecrea dw 0 +.filedateacc dw 0 +.filenotused dw 0 +.filetime dw 0 +.filedate dw 0 +.filegroup dw 0 +.filesize dd 0 +} ;Pour recherches -struct find -files db 13 dup (0) ;le fichier -entryplace dw 0 ;En octet -adressdirectory dw 0 ;En cluster -firstsearch db 1 ;Premiere requete ? -result entries <> -ends find +struc find +{ +.files db 13 dup (0) ;le fichier +.entryplace dw 0 ;En octet +.adressdirectory dw 0 ;En cluster +.firstsearch db 1 ;Premiere requete ? +.result entries <> +} -struc bootinfo -vendor db 'COS2000A' ;Fabricant + n°série Formatage -sectorsize dw 512 ;octet/secteur -sectorspercluster db 1 ;secteur/cluster -reservedsectors dw 1 ;secteur reserv‚ -fatsperdrive db 2 ;nb de copie de la FAT -directorysize dw 224 ;taille rep racine -sectorsperdrive dw 2880 ;nb secteur du volume si < 32 még -mediadescriptor db 0F0h ;Descripteur de média -sectorsperfat dw 9 ;secteur/FAT -sectorspertrack dw 18 ;secteur/piste -headsperdrive dw 2 ;nb de tˆteb de lecture/écriture -hiddensectorsh dw 0 ;nombre de secteur cach‚s -hiddensectorsl dw 0 ; -sectorperdisk2 dd 0 ;Nombre secteur du volume si > 32 Mo+20h ; the number of sectors -bootdrive db 0 ;Lecteur de d‚marrage -reservedfornt db 0 ;NA -bootsign db 29h ;boot signature 29h -serialnumber dd 01020304h ;no de serie -drivename db 'COS2000 ' ;nom de volume -typeoffat db 'FAT16 ' ;FAT -ends bootinfo +struc bootinfo vendor,drivename,serialnumber +{ +.vendor db 'COS2000A' ;Fabricant + n°série Formatage +.sectorsize dw 512 ;octet/secteur +.sectorspercluster db 1 ;secteur/cluster +.reservedsectors dw 1 ;secteur reserv‚ +.fatsperdrive db 2 ;nb de copie de la FAT +.directorysize dw 224 ;taille rep racine +.sectorsperdrive dw 2880 ;nb secteur du volume si < 32 még +.mediadescriptor db 0F0h ;Descripteur de média +.sectorsperfat dw 9 ;secteur/FAT +.sectorspertrack dw 18 ;secteur/piste +.headsperdrive dw 2 ;nb de tˆteb de lecture/écriture +.hiddensectorsh dw 0 ;nombre de secteur cach‚s +.hiddensectorsl dw 0 ; +.sectorperdisk2 dd 0 ;Nombre secteur du volume si > 32 Mo+20h ; the number of sectors +.bootdrive db 0 ;Lecteur de d‚marrage +.reservedfornt db 0 ;NA +.bootsign db 29h ;boot signature 29h +.serialnumber dd 01020304h ;no de serie +.drivename db 'COS2000 ' ;nom de volume +.typeoffat db 'FAT12 ' ;FAT +} diff --git a/include/mem.h b/include/mem.h index 20d06a5..32979a3 100644 --- a/include/mem.h +++ b/include/mem.h @@ -1,132 +1,143 @@ struc regs -seip dd 0 -seax dd 0 -sebx dd 0 -secx dd 0 -sedx dd 0 -sesi dd 0 -sedi dd 0 -sebp dd 0 -sesp dd 0 -scs dw 0 -sds dw 0 -ses dw 0 -sfs dw 0 -sgs dw 0 -sss dw 0 -seflags dd 0 -;sst0 dt 0 -;sst1 dt 0 -;sst2 dt 0 -;sst3 dt 0 -;sst4 dt 0 -;sst5 dt 0 -;sst6 dt 0 -;sst7 dt 0 -ends regs +{ +.seip dd 0 +.seax dd 0 +.sebx dd 0 +.secx dd 0 +.sedx dd 0 +.sesi dd 0 +.sedi dd 0 +.sebp dd 0 +.sesp dd 0 +.scs dw 0 +.sds dw 0 +.ses dw 0 +.sfs dw 0 +.sgs dw 0 +.sss dw 0 +;.seflags dd 0 +;.sst0 dt 0 +;;sst1 dt 0 +;.sst2 dt 0 +;.sst3 dt 0 +;.sst4 dt 0 +;.sst5 dt 0 +;.sst6 dt 0 +;.sst7 dt 0 +} -struc tuple ;vecteur d'interruption -off dw 0 ;adresse -seg dw 0 ;segment -ends tuple +struc tuple +{ +.off dw 0 ;adresse +.seg dw 0 ;segment +} -union vector -data tuple <> -content dd 0 -ends +;union vector +;{ +;.data tuple 0,0 +;.content dd 0 +;} -struc ints ;bloc interruption -number db 0 ;numero de l'interruption -activated db 0 ;activé ou non -locked db 0 ;verrouillée -launchedlow dd 0 -launchedhigh dd 0 -calledlow dd 0 -calledhigh dd 0 -vector1 vector ? -vector2 vector ? -vector3 vector ? -vector4 vector ? -vector5 vector ? -vector6 vector ? -vector7 vector ? -vector8 vector ? -ends ints +struc ints ;bloc interruption +{ +.number db 0 ;numero de l'interruption +.activated db 0 ;activé ou non +.locked db 0 ;verrouillée +.launchedlow dd 0 +.launchedhigh dd 0 +.calledlow dd 0 +.calledhigh dd 0 +.vector1 vector ? +.vector2 vector ? +.vector3 vector ? +.vector4 vector ? +.vector5 vector ? +.vector6 vector ? +.vector7 vector ? +.vector8 vector ? +} struc mb ;Bloc de mémoire -check db "NH" ;signature du bloc de mémoire -isnotlast db 0 ;flag indiquant le dernier bloc -isresident db 0 ;flag indiquant que le bloc est resident -reference dw 0 ;pointeur vers le bloc parent -sizes dw 0 ;taille du bloc en paragraphe de 16 octet -names db 24 dup (0) ;nom du bloc -ends mb +{ +.check db "NH" ;signature du bloc de mémoire. +.isnotlast db 0 ;flag indiquant le dernier bloc +.isresident db 0 ;flag indiquant que le bloc est resident +.reference dw 0 ;pointeur vers le bloc parent +.sizes dw 0 ;taille du bloc en paragraphe de 16 octet +.names db 24 dup (0) ;nom du bloc +} struc exe ;Executable COS -checks db "CE" ;signature de l'exe -major db 1 ;N° version -checksum dd 0 ;Checksum de l'exe -compressed db 0 ;a 1 si compressé par RLE -exports dw 0 ;importation de fonctions -imports dw 0 ;exportation de fonctions -sections dw 0 ;sections des blocs mémoire -starting dw 15 -ends exe +{ +.checks db "CE" ;signature de l'exe +.major db 1 ;N° version +.checksum dd 0 ;Checksum de l'exe +.compressed db 0 ;a 1 si compressé par RLE +.exports dw 0 ;importation de fonctions +.imports dw 0 ;exportation de fonctions +.sections dw 0 ;sections des blocs mémoire +.starting dw 15 +} struc descriptor -limit_low dw 0 -base_low dw 0 -base_middle db 0 -dpltype db 0 -limit_high db 0 -base_high db 0 -ends descriptor - +{ +.limit_low dw 0 +.base_low dw 0 +.base_middle db 0 +.dpltype db 0 +.limit_high db 0 +.base_high db 0 +} free equ 0 ;Reference quand libre - - macro exporting - label exports -endm +{ + exports: +} macro importing - label imports -endm +{ + imports: +} macro noimporting - label imports +{ + imports: dd 0 -endm +} macro noexporting - label imports +{ + imports: dd 0 -endm +} macro ende +{ dd 0 -endm +} macro endi +{ dd 0 -endm +} -macro use lib:req,fonction:req +macro use lib*,fonction* +{ db "&lib&::&fonction&",0 -label &fonction& dword +fonction: + dd 0 dd 0 -endm + } -macro declare fonction:req +macro declare fonction* +{ db "&fonction&",0 - dw offset fonction -endm + dw fonction +} -macro heading versmaj:req,versmin:req,start:req -header exe <"CE",offset &versmaj&,offset &versmin&,0,offset exports,offset imports,0,offset &start&> - db "&fonction&",0 - dw offset fonction -endif -endm +macro heading versmaj*,versmin*,start* +{ +header exe "CE",versmaj,versmin,0,exports,imports,0,start +} diff --git a/install/MAKEFILE b/install/MAKEFILE deleted file mode 100644 index 3a8ee6a..0000000 --- a/install/MAKEFILE +++ /dev/null @@ -1,20 +0,0 @@ -asm= lzasm /z/t -lnk= elink - -all: setup.com - -setup.com: setup.obj - $(lnk) setup.obj setup.com /c - -setup.obj: - $(asm) setup.asm - -clean: - del *.obj - del *.exe - del *.bak - del *.lib - del *.com - del *.bin - del *.sys - del *.err \ No newline at end of file diff --git a/install/setup.asm b/install/setup.asm deleted file mode 100644 index e57404a..0000000 --- a/install/setup.asm +++ /dev/null @@ -1,164 +0,0 @@ -model tiny,stdcall -p486 -locals -jumps -codeseg -option procalign:byte - -org 0100h - -ent equ 32h - -jmp copycos - -message db 0Dh,0Ah,'COS 2000 V1.4Fr programme d''installation',0Dh,0AH,'Inserez une disquette formatee et appuyez sur entre...',0Dh,0AH,'Attention le contenu de celle ci peut etre altere !!!',0Dh,0AH,'$' -message2 db 0Dh,0AH,'Creation du secteur de demarrage...',0Dh,0Ah,'$' -message3 db 0Dh,0AH,'Copie des fichiers systeme...',0Dh,0Ah,'$' -errormsg db 0Dh,0AH,'Erreur d''installation, contactez moi a COS2000@MULTIMANIA.COM !',0Dh,0AH,'$' -ok db 0Dh,0AH,'COS2000 a ete correctement installe, veuillez redemarrer votre PC',0Dh,0AH,'$' -files db '*.*',0 -boot db 'boot.bin',0 -dat db 'data',0 -retu db 0Dh,0AH,'$' -dta db 43 dup (0) - -copycos: - mov ah,9 - mov dx,offset message - int 21h - xor ax,ax - int 16h - mov ah,4ah - mov bx,1000h - int 21h - jc error - mov ah,48h - mov bx,65536/16 - int 21h - jc error - mov fs,ax - mov ah,3Bh - mov dx,offset dat - int 21h - jc error - mov ah,1Ah - mov dx,offset dta - int 21h - jc error - mov ah,4eh - xor cx,cx - mov dx,offset files - int 21h - jc error - mov ah,09 - mov dx,offset message3 - int 21h -allfile: - mov [byte ptr offset dta+43],'$' - mov ah,9 - mov dx,offset dta+30 - int 21h - push dx - mov ah,09 - mov dx,offset retu - int 21h - pop dx - mov ax,3D00h - int 21h - jc error - mov bx,ax - mov ax,4202h - xor cx,cx - xor dx,dx - int 21h - jc error - cmp dx,0 - jne error - cmp ax,0 - je error - mov bp,ax - mov ax,4200h - xor cx,cx - xor dx,dx - int 21h - jc error - push fs - pop ds - mov ah,3fh - mov cx,0FFFFh - xor dx,dx - int 21h - push cs - pop ds - jc error - mov ah,3eh - int 21h - jc error - mov ah,3ch - push cs - pop es - mov di,offset dta+30-3 - mov [word ptr di],":a" - mov [byte ptr di+2],"\" - xor cx,cx - mov dx,di - int 21h - jc error - mov bx,ax - push fs - pop ds - xor dx,dx - mov ah,40h - mov cx,bp - int 21h - push cs - pop ds - jc error - mov ah,3eh - int 21h - jc error - mov ah,4fh - int 21h - jnc allfile - mov ah,09 - mov dx,offset message2 - int 21h - mov ax,3D00h - mov dx,offset boot - int 21h - jc error - push fs - pop ds - mov ah,3fh - mov cx,0FFFFh - xor dx,dx - int 21h - push cs - pop ds - jc error - mov ah,3eh - int 21h - jc error - push fs - pop es - mov ax,0301h - mov dx,0 - mov cx,0001h - xor bx,bx - int 13h - mov ah,09 - mov dx,offset ok - int 21h - xor ax,ax - int 16h - ret - - -error: - mov ah,09 - mov dx,offset errormsg - int 21h - xor ax,ax - int 16h - ret - diff --git a/install/setup.sh b/install/setup.sh deleted file mode 100755 index 916c579..0000000 Binary files a/install/setup.sh and /dev/null differ diff --git a/install/winNT gui/setup.bpr b/install/winNT gui/setup.bpr deleted file mode 100644 index 035bc7b..0000000 --- a/install/winNT gui/setup.bpr +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[Version Info] -IncludeVerInfo=0 -AutoIncBuild=0 -MajorVer=1 -MinorVer=0 -Release=0 -Build=0 -Debug=0 -PreRelease=0 -Special=0 -Private=0 -DLL=0 -Locale=1036 -CodePage=1252 - -[Version Info Keys] -CompanyName= -FileDescription= -FileVersion=1.0.0.0 -InternalName= -LegalCopyright= -LegalTrademarks= -OriginalFilename= -ProductName= -ProductVersion=1.0.0.0 -Comments= - -[Debugging] -DebugSourceDirs=$(BCB)\source\vcl - -[Parameters] -RunParams= -Launcher= -UseLauncher=0 -DebugCWD= -HostApplication= -RemoteHost= -RemotePath= -RemoteLauncher= -RemoteCWD= -RemoteDebug=0 - -[Compiler] -ShowInfoMsgs=0 -LinkDebugVcl=0 -LinkCGLIB=0 - -[CORBA] -AddServerUnit=1 -AddClientUnit=1 -PrecompiledHeaders=1 - -[Language] -ActiveLang= -ProjectLang= -RootDir= - - \ No newline at end of file diff --git a/install/winNT gui/setup.cpp b/install/winNT gui/setup.cpp deleted file mode 100644 index dec5b3e..0000000 --- a/install/winNT gui/setup.cpp +++ /dev/null @@ -1,33 +0,0 @@ -//--------------------------------------------------------------------------- - -#include -#pragma hdrstop -//--------------------------------------------------------------------------- -USEFORM("Unit1.cpp", Form1); -//--------------------------------------------------------------------------- -WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) -{ - try - { - Application->Initialize(); - Application->CreateForm(__classid(TForm1), &Form1); - Application->Run(); - } - catch (Exception &exception) - { - Application->ShowException(&exception); - } - catch (...) - { - try - { - throw Exception(""); - } - catch (Exception &exception) - { - Application->ShowException(&exception); - } - } - return 0; -} -//--------------------------------------------------------------------------- diff --git a/install/winNT gui/setup.res b/install/winNT gui/setup.res deleted file mode 100644 index 53d1acc..0000000 Binary files a/install/winNT gui/setup.res and /dev/null differ diff --git a/install/winNT gui/setup.tds b/install/winNT gui/setup.tds deleted file mode 100644 index d4db614..0000000 Binary files a/install/winNT gui/setup.tds and /dev/null differ diff --git a/install/winNT gui/unit1.cpp b/install/winNT gui/unit1.cpp deleted file mode 100644 index 2b3fc55..0000000 --- a/install/winNT gui/unit1.cpp +++ /dev/null @@ -1,166 +0,0 @@ -//--------------------------------------------------------------------------- - -#include -#include -#include -#include -#include -#pragma hdrstop - -#include "Unit1.h" -//--------------------------------------------------------------------------- -#pragma package(smart_init) -#pragma resource "*.dfm" -TForm1 *Form1; -HANDLE hDrive; -DISK_GEOMETRY dg_flop_geom; -AnsiString lecteur="b:"; -AnsiString device="\\\\.\\"+lecteur; -//--------------------------------------------------------------------------- -__fastcall TForm1::TForm1(TComponent* Owner) - : TForm(Owner) -{ -} -//--------------------------------------------------------------------------- -char * GetLastErrorString(void) -{ - LPVOID lpMsgBuf; - - FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, - NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - (LPTSTR) &lpMsgBuf, 0, NULL); - - return (char *)lpMsgBuf; -} -//--------------------------------------------------------------------------- -ShowMessages(AnsiString msg) -{ - Form1->Memo1->Lines->Add(msg); -} -//--------------------------------------------------------------------------- -void __fastcall TForm1::FormShow(TObject *Sender) -{ -DWORD dwNotUsed; -DWORD error=0; - - hDrive = CreateFile(device.c_str(), GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,NULL); - ShowMessages("Ouverture du peripherique "+lecteur); - if (hDrive == INVALID_HANDLE_VALUE) { - ShowMessages("Erreur : "+AnsiString(GetLastErrorString())); - error=1; - } - if(error!=1&&ShowMessages("Determination de la geometrie ")&&DeviceIoControl(hDrive, IOCTL_DISK_GET_DRIVE_GEOMETRY, NULL,0, &dg_flop_geom, sizeof(dg_flop_geom),&dwNotUsed, NULL) == FALSE) { - ShowMessages("Erreur : "+AnsiString(GetLastErrorString())); - error=1; - } - if(error!=1&&(dg_flop_geom.MediaType==FixedMedia||dg_flop_geom.MediaType==RemovableMedia||dg_flop_geom.MediaType==Unknown)) - { - ShowMessages("Erreur : Ceci n'est pas une disquette !"); - error=1; - } - if (error!=1&&ShowMessages("Positionnement sur le secteur 0")&&SetFilePointer(hDrive, 0, NULL, FILE_BEGIN) == -1) { - ShowMessages("Erreur : "+AnsiString(GetLastErrorString())); - error=1; - } - if (error!=1) - { - drive->Caption=lecteur.UpperCase(); - track->Caption=IntToStr(dg_flop_geom.Cylinders.LowPart); - sector->Caption=IntToStr(dg_flop_geom.SectorsPerTrack); - size->Caption=IntToStr(dg_flop_geom.BytesPerSector); - head->Caption=IntToStr(dg_flop_geom.TracksPerCylinder); - allsize->Caption=IntToStr(dg_flop_geom.BytesPerSector*dg_flop_geom.Cylinders.LowPart*dg_flop_geom.SectorsPerTrack*dg_flop_geom.TracksPerCylinder); - allsector->Caption=IntToStr(dg_flop_geom.Cylinders.LowPart*dg_flop_geom.SectorsPerTrack*dg_flop_geom.TracksPerCylinder); - } - else - { - CloseHandle(hDrive); - } -} -//--------------------------------------------------------------------------- -void __fastcall TForm1::Button1Click(TObject *Sender) -{ - if (hDrive == NULL||dg_flop_geom.TracksPerCylinder>2||dg_flop_geom.TracksPerCylinder==0) - - { - ShowMessages("Aucun support valide detecté !"); - } - else - { - int fdboot; - DWORD error=0; - DWORD dwBsWritten; - char * buffer; - AnsiString bootfile="data/boot.bin"; - ShowMessages("Allocation de mémoire "); - buffer = (char *)malloc(dg_flop_geom.BytesPerSector); - ShowMessages("Ouverture et installation du fichier de boot "+bootfile); - if ((fdboot = _rtl_open(bootfile.c_str(),O_RDONLY | O_BINARY)) == -1 ) - { - ShowMessages("Erreur : Fichier de boot introuvable"); - error=1; - } - if (error!=1&&_read(fdboot, buffer, dg_flop_geom.BytesPerSector)!= dg_flop_geom.BytesPerSector) - { - ShowMessages("Erreur : Fichier de boot de taille incorrecte !"); - error=1; - } - if (error!=1&&WriteFile(hDrive, buffer, dg_flop_geom.BytesPerSector, &dwBsWritten, NULL) == 0) - { - ShowMessages("Ecriture impossible sur le secteur de boot !"); - error=1; - } - _rtl_close(fdboot); - if (error!=1) - { - struct ffblk files; - int done; - int number=0; - ShowMessages("Détermination des fichiers a copier"); - done = findfirst("data/*.*",&files,0); - while (!done) - { - number++; - done = findnext(&files); - } - install->Max=number; - install->Min=0; - install->Position=0; - ShowMessages("Copie des fichiers de cos2000"); - done = findfirst("data/*.*",&files,0); - while (!done) - { - ShowMessages(AnsiString(files.ff_name).LowerCase()); - if (!CopyFile((AnsiString("data/")+AnsiString(files.ff_name)).c_str(),(lecteur+"\\"+AnsiString(files.ff_name)).c_str(),false)) - { - ShowMessages("Erreur : fichier impossible a copier"+AnsiString(GetLastErrorString())); - error=1; - break; - } - done = findnext(&files); - install->Position++; - } - if (!error) - { - ShowMessages("Installation terminée !"); - Button2->Visible=false; - Button1->Visible=false; - Button3->Visible=true; - } - else - ShowMessages("Installation echoué !"); - } - free(buffer); - } -} -//--------------------------------------------------------------------------- -void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) -{ - CloseHandle(hDrive); -} -//--------------------------------------------------------------------------- -void __fastcall TForm1::Button3Click(TObject *Sender) -{ -Close(); -} -//--------------------------------------------------------------------------- diff --git a/install/winNT gui/unit1.ddp b/install/winNT gui/unit1.ddp deleted file mode 100644 index cdc0ee8..0000000 Binary files a/install/winNT gui/unit1.ddp and /dev/null differ diff --git a/install/winNT gui/unit1.dfm b/install/winNT gui/unit1.dfm deleted file mode 100644 index b0445c3..0000000 --- a/install/winNT gui/unit1.dfm +++ /dev/null @@ -1,184 +0,0 @@ -object Form1: TForm1 - Left = 418 - Top = 273 - Width = 599 - Height = 371 - Caption = 'Installation de COS2000' - Color = clBtnFace - Font.Charset = DEFAULT_CHARSET - Font.Color = clWindowText - Font.Height = -11 - Font.Name = 'MS Sans Serif' - Font.Style = [] - OldCreateOrder = False - Position = poScreenCenter - OnClose = FormClose - OnShow = FormShow - PixelsPerInch = 96 - TextHeight = 13 - object Button1: TButton - Left = 288 - Top = 304 - Width = 75 - Height = 25 - Caption = 'installer...' - TabOrder = 0 - OnClick = Button1Click - end - object install: TProgressBar - Left = 16 - Top = 264 - Width = 553 - Height = 25 - Min = 0 - Max = 100 - TabOrder = 1 - end - object Button2: TButton - Left = 208 - Top = 304 - Width = 75 - Height = 25 - Caption = 'support' - TabOrder = 2 - OnClick = FormShow - end - object Memo1: TMemo - Left = 192 - Top = 24 - Width = 377 - Height = 225 - ReadOnly = True - TabOrder = 3 - end - object GroupBox1: TGroupBox - Left = 16 - Top = 120 - Width = 161 - Height = 129 - Caption = 'G'#233'om'#233'trie' - Font.Charset = DEFAULT_CHARSET - Font.Color = clWindowText - Font.Height = -11 - Font.Name = 'MS Sans Serif' - Font.Style = [] - ParentFont = False - TabOrder = 4 - object track: TLabel - Left = 96 - Top = 60 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - object Label4: TLabel - Left = 24 - Top = 60 - Width = 34 - Height = 13 - Caption = 'Pistes :' - end - object Label5: TLabel - Left = 24 - Top = 28 - Width = 48 - Height = 13 - Caption = 'Secteurs :' - end - object sector: TLabel - Left = 96 - Top = 28 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - object head: TLabel - Left = 96 - Top = 44 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - object Label6: TLabel - Left = 24 - Top = 44 - Width = 33 - Height = 13 - Caption = 'Tetes :' - end - object Label8: TLabel - Left = 24 - Top = 84 - Width = 69 - Height = 13 - Caption = 'Taille secteur :' - end - object size: TLabel - Left = 96 - Top = 84 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - end - object GroupBox2: TGroupBox - Left = 16 - Top = 16 - Width = 161 - Height = 97 - Caption = 'Support' - TabOrder = 5 - object Label1: TLabel - Left = 24 - Top = 24 - Width = 42 - Height = 13 - Caption = 'Lecteur :' - end - object drive: TLabel - Left = 88 - Top = 24 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - object Label2: TLabel - Left = 24 - Top = 40 - Width = 31 - Height = 13 - Caption = 'Taille :' - end - object allsize: TLabel - Left = 88 - Top = 40 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - object Label3: TLabel - Left = 24 - Top = 56 - Width = 58 - Height = 13 - Caption = 'N'#176'secteurs :' - end - object allsector: TLabel - Left = 88 - Top = 56 - Width = 31 - Height = 13 - Caption = 'Aucun' - end - end - object Button3: TButton - Left = 248 - Top = 304 - Width = 75 - Height = 25 - Caption = 'Quitter' - TabOrder = 6 - Visible = False - OnClick = Button3Click - end -end diff --git a/install/winNT gui/unit1.h b/install/winNT gui/unit1.h deleted file mode 100644 index 6d0d3a7..0000000 --- a/install/winNT gui/unit1.h +++ /dev/null @@ -1,47 +0,0 @@ -//--------------------------------------------------------------------------- - -#ifndef Unit1H -#define Unit1H -//--------------------------------------------------------------------------- -#include -#include -#include -#include -#include -//--------------------------------------------------------------------------- -class TForm1 : public TForm -{ -__published: // IDE-managed Components - TButton *Button1; - TProgressBar *install; - TButton *Button2; - TMemo *Memo1; - TGroupBox *GroupBox1; - TLabel *track; - TLabel *Label4; - TLabel *Label5; - TLabel *sector; - TLabel *head; - TLabel *Label6; - TLabel *Label8; - TLabel *size; - TGroupBox *GroupBox2; - TLabel *Label1; - TLabel *drive; - TLabel *Label2; - TLabel *allsize; - TLabel *Label3; - TLabel *allsector; - TButton *Button3; - void __fastcall FormShow(TObject *Sender); - void __fastcall Button1Click(TObject *Sender); - void __fastcall FormClose(TObject *Sender, TCloseAction &Action); - void __fastcall Button3Click(TObject *Sender); -private: // User declarations -public: // User declarations - __fastcall TForm1(TComponent* Owner); -}; -//--------------------------------------------------------------------------- -extern PACKAGE TForm1 *Form1; -//--------------------------------------------------------------------------- -#endif diff --git a/install/winNT/setup.bpf b/install/winNT/setup.bpf deleted file mode 100644 index 6967230..0000000 --- a/install/winNT/setup.bpf +++ /dev/null @@ -1,4 +0,0 @@ -This file is used by the project manager only and should be treated like the project file - - -main \ No newline at end of file diff --git a/install/winNT/setup.bpr b/install/winNT/setup.bpr deleted file mode 100644 index b67fc36..0000000 --- a/install/winNT/setup.bpr +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[Version Info] -IncludeVerInfo=0 -AutoIncBuild=0 -MajorVer=1 -MinorVer=0 -Release=0 -Build=0 -Debug=0 -PreRelease=0 -Special=0 -Private=0 -DLL=0 -Locale=1036 -CodePage=1252 - -[Version Info Keys] -CompanyName= -FileDescription= -FileVersion=1.0.0.0 -InternalName= -LegalCopyright= -LegalTrademarks= -OriginalFilename= -ProductName= -ProductVersion=1.0.0.0 -Comments= - -[Debugging] -DebugSourceDirs=$(BCB)\source\vcl - -[Parameters] -RunParams= -Launcher= -UseLauncher=0 -DebugCWD= -HostApplication= -RemoteHost= -RemotePath= -RemoteLauncher= -RemoteCWD= -RemoteDebug=0 - -[Compiler] -ShowInfoMsgs=0 -LinkDebugVcl=0 -LinkCGLIB=0 - -[CORBA] -AddServerUnit=1 -AddClientUnit=1 -PrecompiledHeaders=1 - -[Language] -ActiveLang= -ProjectLang= -RootDir= - - \ No newline at end of file diff --git a/install/winNT/setup.res b/install/winNT/setup.res deleted file mode 100644 index 53d1acc..0000000 Binary files a/install/winNT/setup.res and /dev/null differ diff --git a/install/winNT/setup.tds b/install/winNT/setup.tds deleted file mode 100644 index 5ae5c8e..0000000 Binary files a/install/winNT/setup.tds and /dev/null differ diff --git a/install/winNT/unit1.cpp b/install/winNT/unit1.cpp deleted file mode 100644 index 8448703..0000000 --- a/install/winNT/unit1.cpp +++ /dev/null @@ -1,135 +0,0 @@ -//--------------------------------------------------------------------------- -#include -#include -#include -#include -#include -#include -#include -#pragma hdrstop - -//--------------------------------------------------------------------------- -char * GetLastErrorString(void) -{ - LPVOID lpMsgBuf; - - FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, - NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - (LPTSTR) &lpMsgBuf, 0, NULL); - - return (char *)lpMsgBuf; -} - - -#pragma argsused -int main(int argc, char* argv[]) -{ -DWORD dwNotUsed; -DWORD error=0; -HANDLE hDrive; -DISK_GEOMETRY dg_flop_geom; -char lecteur[4]="a:\0"; -char device[7]="\\\\.\\a:\0"; -int fdboot; -DWORD dwBsWritten; -char * buffer; -char bootfile[14]="data/boot.bin\0"; -struct ffblk files; -int done; -int number=0; -char src[80]; -char dest[80]; - printf("Installation de COS2000\nInserez une disquette et appuyer sur une touche...\n"); - getchar(); - hDrive = CreateFile(device, GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,NULL); - printf("Ouverture du peripherique %s\n",lecteur); - if (hDrive == INVALID_HANDLE_VALUE) { - printf("Erreur : %s\n",GetLastErrorString()); - error=1; - } - if(error!=1&&printf("Determination de la geometrie \n")&&DeviceIoControl(hDrive, IOCTL_DISK_GET_DRIVE_GEOMETRY, NULL,0, &dg_flop_geom, sizeof(dg_flop_geom),&dwNotUsed, NULL) == FALSE) { - printf("Erreur : %s\n",GetLastErrorString()); - error=1; - } - if(error!=1&&(dg_flop_geom.MediaType==FixedMedia||dg_flop_geom.MediaType==RemovableMedia||dg_flop_geom.MediaType==Unknown)) - { - printf("Erreur : Ceci n'est pas une disquette !\n"); - error=1; - } - if (error!=1&&printf("Positionnement sur le secteur 0\n")&&SetFilePointer(hDrive, 0, NULL, FILE_BEGIN) == -1) { - printf("Erreur : %s\n",GetLastErrorString()); - error=1; - } - if (error!=1) - { - printf("Pistes :%u Secteurs:%u Tetes:%u Taille:%u\n",dg_flop_geom.Cylinders.LowPart,dg_flop_geom.SectorsPerTrack,dg_flop_geom.TracksPerCylinder,dg_flop_geom.BytesPerSector); - } - else - { - CloseHandle(hDrive); - } - if (hDrive == NULL||dg_flop_geom.TracksPerCylinder>2||dg_flop_geom.TracksPerCylinder==0) - { - printf("Aucun support valide detecte !"); - error=1; - } - if (error!=1) - { - printf("Allocation de memoire\n"); - buffer = (char *)malloc(dg_flop_geom.BytesPerSector); - printf("Ouverture et installation du fichier de boot %s\n",bootfile); - } - if (error!=1&&(fdboot = _rtl_open(bootfile,O_RDONLY | O_BINARY)) == -1 ) - { - printf("Erreur : Fichier de boot introuvable\n"); - error=1; - } - if (error!=1&&_read(fdboot, buffer, dg_flop_geom.BytesPerSector)!= dg_flop_geom.BytesPerSector) - { - printf("Erreur : Fichier de boot de taille incorrecte !\n"); - error=1; - } - if (error!=1&&WriteFile(hDrive, buffer, dg_flop_geom.BytesPerSector, &dwBsWritten, NULL) == 0) - { - printf("Ecriture impossible sur le secteur de boot !\n"); - error=1; - } - if (error!=1) - { - _rtl_close(fdboot); - printf("Determination des fichiers a copier\n\n"); - done = findfirst("data\\*.*",&files,0); - while (!done) - { - number++; - done = findnext(&files); - } - printf("Copie des fichiers de cos2000\n"); - done = findfirst("data\\*.*",&files,0); - while (!done) - { - printf("%s\n",files.ff_name); - sprintf(src, "data\\%s",files.ff_name); - sprintf(dest, "%s\\%s",lecteur,files.ff_name); - if (!CopyFile(src,dest,false)) - { - printf("Erreur : fichier impossible a copier %s\n",GetLastErrorString()); - error=1; - break; - } - done = findnext(&files); - } - if (!error) - { - printf("Installation terminee !\nVeuillez redemarrer votre PC afin de charger le systeme"); - } - else - { - printf("Installation echoué !"); - } - free(buffer); - } - getchar(); - return 0; -} -//--------------------------------------------------------------------------- diff --git a/lib/MAKEFILE b/lib/makefile similarity index 100% rename from lib/MAKEFILE rename to lib/makefile diff --git a/makefile b/makefile new file mode 100644 index 0000000..d733b1b --- /dev/null +++ b/makefile @@ -0,0 +1,47 @@ +all: boot/boot12.bin lib/3d.lib noyau/systeme.sys commande.ce + sync + +install: + (sudo apt-get install yasm qemu fusefat cgdb) + +clean: + make -C final clean + make -C lib clean + make -C noyau clean + make -C programs clean + sync + +backup: clean + (tar cf - . | gzip -f - > ../backup.tar.gz) + +copy: + make -C final + +test: all copy qemu + +view: + (hexdump -C ./final/cos2000.img|head -c10000) + +debug-boot: all copy qemu-debug + (sleep 2;cgdb -x ./debug/boot.txt) + +debug-loader: all copy qemu-debug + (sleep 2;cgdb -x ./debug/loader.txt) + +debug-system: all copy qemu-debug + (sleep 2;cgdb -x ./debug/system.txt) + +qemu-debug: + (qemu-system-i386 -m 1G -fda ./final/cos2000.img -s -S &) + +qemu: + (qemu-system-i386 -m 1G -fda ./final/cos2000.img -s) + +noyau/systeme.sys: + make -C noyau + +boot/boot12.bin: + make -C boot + +lib/3d.lib: + make -C lib diff --git a/noyau/MAKEFILE b/noyau/MAKEFILE deleted file mode 100644 index d14bef5..0000000 --- a/noyau/MAKEFILE +++ /dev/null @@ -1,38 +0,0 @@ -asm= lzasm /z/t -lnk= elink - -all: systeme.sys boot.bin - -systeme.sys: video.obj disque.obj systeme.obj - $(lnk) systeme.obj systeme.sys - -systeme.obj: ..\lib\detect.lib ..\lib\video.lib video.sys disque.sys - $(asm) systeme.asm - -disque.sys: - $(lnk) disque.obj disque.sys - -video.sys: - $(lnk) video.obj video.sys - -boot.bin: boot.obj - $(lnk) boot.obj boot.bin /bs - -video.obj: - $(asm) video.asm - -disque.obj: - $(asm) disque.asm - -boot.obj: - $(asm) boot.asm - -clean: - del *.obj - del *.exe - del *.bak - del *.lib - del *.com - del *.bin - del *.sys - del *.err \ No newline at end of file diff --git a/noyau/font/2_hebrew.fnt b/noyau/font/2_hebrew.fnt deleted file mode 100644 index 9e668d6..0000000 Binary files a/noyau/font/2_hebrew.fnt and /dev/null differ diff --git a/noyau/font/8x11snsf.fnt b/noyau/font/8x11snsf.fnt deleted file mode 100644 index d409f71..0000000 Binary files a/noyau/font/8x11snsf.fnt and /dev/null differ diff --git a/noyau/font/ad&d.fnt b/noyau/font/ad&d.fnt deleted file mode 100644 index c8008de..0000000 Binary files a/noyau/font/ad&d.fnt and /dev/null differ diff --git a/noyau/font/antique.fnt b/noyau/font/antique.fnt deleted file mode 100644 index fe1aa68..0000000 Binary files a/noyau/font/antique.fnt and /dev/null differ diff --git a/noyau/font/applicat.fnt b/noyau/font/applicat.fnt deleted file mode 100644 index b77b2dd..0000000 Binary files a/noyau/font/applicat.fnt and /dev/null differ diff --git a/noyau/font/backward.fnt b/noyau/font/backward.fnt deleted file mode 100644 index 2c971a7..0000000 Binary files a/noyau/font/backward.fnt and /dev/null differ diff --git a/noyau/font/bigserif.fnt b/noyau/font/bigserif.fnt deleted file mode 100644 index 55a358c..0000000 Binary files a/noyau/font/bigserif.fnt and /dev/null differ diff --git a/noyau/font/blcksnsf.fnt b/noyau/font/blcksnsf.fnt deleted file mode 100644 index 1e4e53e..0000000 Binary files a/noyau/font/blcksnsf.fnt and /dev/null differ diff --git a/noyau/font/block.fnt b/noyau/font/block.fnt deleted file mode 100644 index 0ba23fe..0000000 Binary files a/noyau/font/block.fnt and /dev/null differ diff --git a/noyau/font/bold.fnt b/noyau/font/bold.fnt deleted file mode 100644 index 1ccfa59..0000000 Binary files a/noyau/font/bold.fnt and /dev/null differ diff --git a/noyau/font/breeze.fnt b/noyau/font/breeze.fnt deleted file mode 100644 index 96ecb0d..0000000 Binary files a/noyau/font/breeze.fnt and /dev/null differ diff --git a/noyau/font/broadway.fnt b/noyau/font/broadway.fnt deleted file mode 100644 index 0c053eb..0000000 Binary files a/noyau/font/broadway.fnt and /dev/null differ diff --git a/noyau/font/comp.fnt b/noyau/font/comp.fnt deleted file mode 100644 index 6862665..0000000 Binary files a/noyau/font/comp.fnt and /dev/null differ diff --git a/noyau/font/computer.fnt b/noyau/font/computer.fnt deleted file mode 100644 index a763ae7..0000000 Binary files a/noyau/font/computer.fnt and /dev/null differ diff --git a/noyau/font/courier.fnt b/noyau/font/courier.fnt deleted file mode 100644 index dacd3a7..0000000 Binary files a/noyau/font/courier.fnt and /dev/null differ diff --git a/noyau/font/cyrillic.fnt b/noyau/font/cyrillic.fnt deleted file mode 100644 index 421fc97..0000000 Binary files a/noyau/font/cyrillic.fnt and /dev/null differ diff --git a/noyau/font/dblmtx14.fnt b/noyau/font/dblmtx14.fnt deleted file mode 100644 index 6a3a99b..0000000 Binary files a/noyau/font/dblmtx14.fnt and /dev/null differ diff --git a/noyau/font/dblmtx16.fnt b/noyau/font/dblmtx16.fnt deleted file mode 100644 index 112e6f9..0000000 Binary files a/noyau/font/dblmtx16.fnt and /dev/null differ diff --git a/noyau/font/finnish.fnt b/noyau/font/finnish.fnt deleted file mode 100644 index 8da1c96..0000000 Binary files a/noyau/font/finnish.fnt and /dev/null differ diff --git a/noyau/font/font1!!!.dat b/noyau/font/font1!!!.dat deleted file mode 100644 index 792f46e..0000000 Binary files a/noyau/font/font1!!!.dat and /dev/null differ diff --git a/noyau/font/font2!!!.dat b/noyau/font/font2!!!.dat deleted file mode 100644 index ea44254..0000000 Binary files a/noyau/font/font2!!!.dat and /dev/null differ diff --git a/noyau/font/font3!!!.dat b/noyau/font/font3!!!.dat deleted file mode 100644 index c07df6d..0000000 Binary files a/noyau/font/font3!!!.dat and /dev/null differ diff --git a/noyau/font/font4!!!.dat b/noyau/font/font4!!!.dat deleted file mode 100644 index 29d8980..0000000 Binary files a/noyau/font/font4!!!.dat and /dev/null differ diff --git a/noyau/font/frankfrt.fnt b/noyau/font/frankfrt.fnt deleted file mode 100644 index 6123f78..0000000 Binary files a/noyau/font/frankfrt.fnt and /dev/null differ diff --git a/noyau/font/fresno.fnt b/noyau/font/fresno.fnt deleted file mode 100644 index 842ab5c..0000000 Binary files a/noyau/font/fresno.fnt and /dev/null differ diff --git a/noyau/font/future.fnt b/noyau/font/future.fnt deleted file mode 100644 index 1fb73cd..0000000 Binary files a/noyau/font/future.fnt and /dev/null differ diff --git a/noyau/font/greek.fnt b/noyau/font/greek.fnt deleted file mode 100644 index 510a288..0000000 Binary files a/noyau/font/greek.fnt and /dev/null differ diff --git a/noyau/font/hebrew.fnt b/noyau/font/hebrew.fnt deleted file mode 100644 index 9e668d6..0000000 Binary files a/noyau/font/hebrew.fnt and /dev/null differ diff --git a/noyau/font/hollow.fnt b/noyau/font/hollow.fnt deleted file mode 100644 index 0a49678..0000000 Binary files a/noyau/font/hollow.fnt and /dev/null differ diff --git a/noyau/font/hylas.fnt b/noyau/font/hylas.fnt deleted file mode 100644 index fdfd940..0000000 Binary files a/noyau/font/hylas.fnt and /dev/null differ diff --git a/noyau/font/inverted.fnt b/noyau/font/inverted.fnt deleted file mode 100644 index 1ff13cd..0000000 Binary files a/noyau/font/inverted.fnt and /dev/null differ diff --git a/noyau/font/italic.fnt b/noyau/font/italic.fnt deleted file mode 100644 index 2ebc096..0000000 Binary files a/noyau/font/italic.fnt and /dev/null differ diff --git a/noyau/font/italics.fnt b/noyau/font/italics.fnt deleted file mode 100644 index ddb95d8..0000000 Binary files a/noyau/font/italics.fnt and /dev/null differ diff --git a/noyau/font/itt.fnt b/noyau/font/itt.fnt deleted file mode 100644 index 2992c0c..0000000 Binary files a/noyau/font/itt.fnt and /dev/null differ diff --git a/noyau/font/lcd.fnt b/noyau/font/lcd.fnt deleted file mode 100644 index aefe346..0000000 Binary files a/noyau/font/lcd.fnt and /dev/null differ diff --git a/noyau/font/mechanix.fnt b/noyau/font/mechanix.fnt deleted file mode 100644 index 3207764..0000000 Binary files a/noyau/font/mechanix.fnt and /dev/null differ diff --git a/noyau/font/medieval.fnt b/noyau/font/medieval.fnt deleted file mode 100644 index 680613a..0000000 Binary files a/noyau/font/medieval.fnt and /dev/null differ diff --git a/noyau/font/modern-1.fnt b/noyau/font/modern-1.fnt deleted file mode 100644 index 79f69dc..0000000 Binary files a/noyau/font/modern-1.fnt and /dev/null differ diff --git a/noyau/font/norway.fnt b/noyau/font/norway.fnt deleted file mode 100644 index 103b729..0000000 Binary files a/noyau/font/norway.fnt and /dev/null differ diff --git a/noyau/font/norway2.fnt b/noyau/font/norway2.fnt deleted file mode 100644 index 7c17bf6..0000000 Binary files a/noyau/font/norway2.fnt and /dev/null differ diff --git a/noyau/font/old8x8.fnt b/noyau/font/old8x8.fnt deleted file mode 100644 index 6d72f9c..0000000 Binary files a/noyau/font/old8x8.fnt and /dev/null differ diff --git a/noyau/font/oldeng.fnt b/noyau/font/oldeng.fnt deleted file mode 100644 index 14e12a6..0000000 Binary files a/noyau/font/oldeng.fnt and /dev/null differ diff --git a/noyau/font/roman.fnt b/noyau/font/roman.fnt deleted file mode 100644 index f7266c1..0000000 Binary files a/noyau/font/roman.fnt and /dev/null differ diff --git a/noyau/font/sanserif.fnt b/noyau/font/sanserif.fnt deleted file mode 100644 index 8392323..0000000 Binary files a/noyau/font/sanserif.fnt and /dev/null differ diff --git a/noyau/font/script.fnt b/noyau/font/script.fnt deleted file mode 100644 index 65b073f..0000000 Binary files a/noyau/font/script.fnt and /dev/null differ diff --git a/noyau/font/standard.fnt b/noyau/font/standard.fnt deleted file mode 100644 index 00e69f4..0000000 Binary files a/noyau/font/standard.fnt and /dev/null differ diff --git a/noyau/font/stretch.fnt b/noyau/font/stretch.fnt deleted file mode 100644 index e619be7..0000000 Binary files a/noyau/font/stretch.fnt and /dev/null differ diff --git a/noyau/font/thai.fnt b/noyau/font/thai.fnt deleted file mode 100644 index b275bd8..0000000 Binary files a/noyau/font/thai.fnt and /dev/null differ diff --git a/noyau/font/thin.fnt b/noyau/font/thin.fnt deleted file mode 100644 index 22061e5..0000000 Binary files a/noyau/font/thin.fnt and /dev/null differ diff --git a/noyau/makefile b/noyau/makefile new file mode 100644 index 0000000..cd30103 --- /dev/null +++ b/noyau/makefile @@ -0,0 +1,83 @@ +GCC=gcc -O0 -g -nostdinc -ffreestanding -fno-builtin -Wall -w -I ../include -m32 -fno-pie -no-pie -c -o +ASM=gcc -nostdinc -ffreestanding -fno-builtin -m32 -c -fno-pie -no-pie -I ../include -D__ASSEMBLY__ -c -o +LINK=ld -m elf_i386 -n +CONVERT=dos2unix +INDENT=indent -nhnl -l75 -ppi3 -ts8 -bls -nbc -di8 -nbad -nbap -nsob -i8 -bl -bli0 -ncdw -nce -cli8 -cbi0 -npcs -cs -saf -sai -saw -nprs -lp -npsl +REMOVE=rm -f +CHANGEPERM=chmod 644 +NM=nm +OBJCOPY=objcopy -O binary -R .note -R .comment -S +OBJDEBUG=objcopy --only-keep-debug +ZOFFSET=sed -n -e 's/^\([0-9a-fA-F]*\) [ABCDGRSTVW] \(startup_32\|startup_64\|efi32_stub_entry\|efi64_stub_entry\|efi_pe_entry\|input_data\|_end\|_ehead\|_text\|z_.*\)$$/\#define ZO_\2 0x\1/p' +VOFFSET=sed -n -e 's/^\([0-9a-fA-F]*\) [ABCDGRSTVW] \(_text\|__bss_start\|_end\)$$/\#define VO_\2 _AC(0x\1,UL)/p' +COMP=gzip -9 -f +BUILD=../tools/build +MKPIGGY=../tools/mkpiggy + +all: system.sys + +system.sys: piggy.o voffset.h zoffset.h realmode/setup.bin + $(BUILD) realmode/setup.bin system.bin zoffset.h system.sys + sync + +allpiggy.o: piggy.o decompress.o header.o + $(LINK) -T allpiggy piggy.o decompress.o header.o + +voffset.h: system + $(NM) system|$(VOFFSET)>voffset.h + +zoffset.h: piggy.o + $(NM) piggy.o|$(ZOFFSET)>zoffset.h + +togit: clean indent + +piggy.o: piggy.S + $(ASM) $@ $^ + +system: system.o system_asm.o ../lib/libs.o + $(LINK) -T system.ld system.o system_asm.o ../lib/libs.o + $(OBJDEBUG) system system.sym + $(NM) system > system.map + +system.bin: system + $(OBJCOPY) $^ $@ + +system.bin.gz: system.bin + cat $^|$(COMP) > $@ + +piggy.S: system.bin.gz + $(MKPIGGY) $^ > $@ + +realmode/setup.bin: + make -C realmode + +system.o: system.c + $(GCC) $@ $^ + +system_asm.o: system_asm.S + $(ASM) $@ $^ + +clean: + make -C realmode clean + $(REMOVE) system + $(REMOVE) piggy.S + $(REMOVE) *.o + $(REMOVE) *.tmp + $(REMOVE) *.sym + $(REMOVE) *.map + $(REMOVE) *.gz + $(REMOVE) *.h + $(REMOVE) *.out + $(REMOVE) *.bin + $(REMOVE) *.sys + $(REMOVE) *.s + $(REMOVE) *.c~ + sync + +indent: + make -C realmode indent + $(CHANGEPERM) *.c + $(CONVERT) *.c + $(INDENT) *.c + $(REMOVE) *.c~ + sync diff --git a/outils/CE explorer/icone.ico b/outils/CE explorer/icone.ico deleted file mode 100644 index 369777c..0000000 Binary files a/outils/CE explorer/icone.ico and /dev/null differ diff --git a/outils/CE explorer/imgs.bmp b/outils/CE explorer/imgs.bmp deleted file mode 100644 index 9896f7d..0000000 Binary files a/outils/CE explorer/imgs.bmp and /dev/null differ diff --git a/outils/CE explorer/project1.bpr b/outils/CE explorer/project1.bpr deleted file mode 100644 index 8011eea..0000000 --- a/outils/CE explorer/project1.bpr +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[Version Info] -IncludeVerInfo=1 -AutoIncBuild=1 -MajorVer=1 -MinorVer=0 -Release=0 -Build=0 -Debug=0 -PreRelease=0 -Special=0 -Private=0 -DLL=0 -Locale=1036 -CodePage=1252 - -[Version Info Keys] -CompanyName=COS2000 -FileDescription=Cos2000 lib explorer -FileVersion=1.0.0.0 -InternalName= -LegalCopyright= -LegalTrademarks= -OriginalFilename= -ProductName=Cos2000 lib explorer -ProductVersion=1.0.0.0 -Comments=FOR CE ONLY - -[Excluded Packages] -..\lib\DragDrop_B5.bpl=(untitled) -..\lib\Moje_B5.bpl=(untitled) -..\lib\DriveDir_B5.bpl=(untitled) -..\lib\tb2k_cb6.bpl=(untitled) -..\lib\tb2kdsgn_cb6.bpl=(untitled) -..\lib\tbx_cb6.bpl=(untitled) -..\lib\tbxdsgn_cb6.bpl=(untitled) -d:\cbuilder6\Bin\dclite60.bpl=Borland Integrated Translation Environment - -[HistoryLists\hlIncludePath] -Count=1 -Item0=D:\CBuilder6\Bin;C:\Documents and Settings\admin\Bureau\perso\cos\CE explorer;$(BCB)\include;$(BCB)\include\vcl - -[HistoryLists\hlLibraryPath] -Count=1 -Item0=D:\CBuilder6\Bin;C:\Documents and Settings\admin\Bureau\perso\cos\CE explorer;$(BCB)\Projects\Lib;$(BCB)\lib\obj;$(BCB)\lib - -[HistoryLists\hlDebugSourcePath] -Count=1 -Item0=$(BCB)\source\vcl - -[Debugging] -DebugSourceDirs=$(BCB)\source\vcl - -[Parameters] -RunParams= -Launcher= -UseLauncher=0 -DebugCWD= -HostApplication= -RemoteHost= -RemotePath= -RemoteLauncher= -RemoteCWD= -RemoteDebug=0 - -[Compiler] -ShowInfoMsgs=0 -LinkDebugVcl=0 -LinkCGLIB=0 - -[CORBA] -AddServerUnit=1 -AddClientUnit=1 -PrecompiledHeaders=1 - - \ No newline at end of file diff --git a/outils/CE explorer/project1.cpp b/outils/CE explorer/project1.cpp deleted file mode 100644 index b6c7655..0000000 --- a/outils/CE explorer/project1.cpp +++ /dev/null @@ -1,34 +0,0 @@ -//--------------------------------------------------------------------------- - -#include -#pragma hdrstop -//--------------------------------------------------------------------------- -USEFORM("Unit1.cpp", Form1); -//--------------------------------------------------------------------------- -WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) -{ - try - { - Application->Initialize(); - Application->Title = "CE explorer"; - Application->CreateForm(__classid(TForm1), &Form1); - Application->Run(); - } - catch (Exception &exception) - { - Application->ShowException(&exception); - } - catch (...) - { - try - { - throw Exception(""); - } - catch (Exception &exception) - { - Application->ShowException(&exception); - } - } - return 0; -} -//--------------------------------------------------------------------------- diff --git a/outils/CE explorer/project1.res b/outils/CE explorer/project1.res deleted file mode 100644 index e48ea54..0000000 Binary files a/outils/CE explorer/project1.res and /dev/null differ diff --git a/outils/CE explorer/project1.tds b/outils/CE explorer/project1.tds deleted file mode 100644 index 5a0a715..0000000 Binary files a/outils/CE explorer/project1.tds and /dev/null differ diff --git a/outils/CE explorer/unit1.cpp b/outils/CE explorer/unit1.cpp deleted file mode 100644 index 634595b..0000000 --- a/outils/CE explorer/unit1.cpp +++ /dev/null @@ -1,273 +0,0 @@ -//--------------------------------------------------------------------------- - -#include -#include -#include -#pragma hdrstop - -#include "Unit1.h" -//--------------------------------------------------------------------------- -#pragma package(smart_init) -#pragma resource "*.dfm" -TForm1 *Form1; -//--------------------------------------------------------------------------- -__fastcall TForm1::TForm1(TComponent* Owner) - : TForm(Owner) -{ -} -//--------------------------------------------------------------------------- -tree(AnsiString file,int offset,TTreeNode* rootnode) -{ -FILE* in; -#pragma option -a1 -struct CE { -char checks[2]; -unsigned char major; -unsigned int checksum; -unsigned char compressed; -unsigned short exports; -unsigned short imports; -unsigned short sections; -unsigned short starting; -} myce; -#pragma option -a - -long pointeur=0; - -if ((in = fopen(file.c_str(), "rb"))!= NULL) -{ -fseek(in, pointeur+offset, SEEK_SET); -fread(&myce, sizeof(myce), 1, in); -TTreeNode* currentnode; -TTreeNode* subcurrentnode; -TTreeNode* subsubcurrentnode; -if (offset==0) -{ -fseek(in, 0L, SEEK_END); -Form1->TreeView->Items->AddChild(rootnode,"Adresse réelle: 0x0000")->ImageIndex=31; -Form1->TreeView->Items->AddChild(rootnode,"Adresse : 0x0000")->ImageIndex=31; -} -currentnode=Form1->TreeView->Items->AddChild(rootnode,"Entête"); -currentnode->ImageIndex=10; -Form1->TreeView->Items->AddChild(currentnode,"Adresse réelle: 0x"+IntToHex((int)pointeur+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(currentnode,"Adresse : 0x"+IntToHex((int)pointeur,4))->ImageIndex=31; -if (AnsiString(myce.checks,2)!="CE") -{ -rootnode->ImageIndex=4; -Form1->TreeView->Items->AddChild(currentnode,"Type : ceci n'est pas un fichier CE")->ImageIndex=1; -} -else -{ -rootnode->ImageIndex=2; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Type : "+AnsiString(myce.checks,2)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)0+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)0,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0002")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Version : "+IntToStr(myce.major)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)2+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)2,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0001")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Checksum : 0x"+IntToHex((int)myce.checksum,8)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)3+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)3,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0004")->ImageIndex=31; -if (myce.compressed>=1) -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Fichier compressé avec RIP"); -else -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Fichier sans compression"); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)7+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)7,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0001")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Pointeur exportation : 0x"+IntToHex(myce.exports,4)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)8+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)8,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0002")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Pointeur Importation : 0x"+IntToHex(myce.imports,4)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)10+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)10,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0002")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Pointeur sections : 0x"+IntToHex(myce.sections,4)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)12+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)12,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0002")->ImageIndex=31; -subcurrentnode=Form1->TreeView->Items->AddChild(currentnode,"Point d'entrée : 0x"+IntToHex(myce.starting,4)); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex((int)14+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex((int)14,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille: 0x0002")->ImageIndex=31; -Form1->TreeView->Items->AddChild(currentnode,"Taille : 0x0010")->ImageIndex=31; - -char imported[30]; -AnsiString imports[30]={""}; -AnsiString exports[30]={""}; -AnsiString sections[30]={""}; -unsigned short iaddrs[30]={0}; -unsigned short eaddrs[30]={0}; -unsigned short saddrs[30]={0}; -unsigned short ssize[30]={0}; -AnsiString libraries[30]={""}; -AnsiString alib; -int i=0; -pointeur=myce.imports; -int nblib=0; -int nbimp=0; - -if (myce.imports!=0) -{ -currentnode=Form1->TreeView->Items->AddChild(rootnode,"Importations"); -currentnode->ImageIndex=14; -Form1->TreeView->Items->AddChild(currentnode,"Adresse réelle: 0x"+IntToHex((int)pointeur+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(currentnode,"Adresse : 0x"+IntToHex((int)pointeur,4))->ImageIndex=31; -do -{ -fseek(in, pointeur+offset, SEEK_SET); -fread(&imported, sizeof(imported), 1, in); -imports[i]=AnsiString((char*)&imported); -iaddrs[i]=pointeur; -pointeur+=imports[i].Length()+5; -alib=imports[i].SubString(0,imports[i].Pos(":")-1); -int j; -for(j=0;(jTreeView->Items->AddChild(currentnode,libraries[i]); -subcurrentnode->ImageIndex=13; -for(int j=0;jTreeView->Items->AddChild(subcurrentnode,imports[j].SubString(imports[j].Pos(":")+2,255)); -subsubcurrentnode->ImageIndex=3; -Form1->TreeView->Items->AddChild(subsubcurrentnode,"Adresse réelle: 0x"+IntToHex((int)iaddrs[j]+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subsubcurrentnode,"Adresse : 0x"+IntToHex((int)iaddrs[j],4))->ImageIndex=31; -} -} -} -currentnode->Text="importations ("+IntToStr(nbimp)+"/"+IntToStr(nblib)+")"; -Form1->TreeView->Items->AddChild(currentnode,"Taille : 0x"+IntToHex((int)pointeur-myce.imports,4))->ImageIndex=31; -} -else -{ -nbimp=0; -} - -i=0; -pointeur=myce.exports; -int nbexp=0; - -if (myce.exports!=0) -{ -currentnode=Form1->TreeView->Items->AddChild(rootnode,"Exportations"); -currentnode->ImageIndex=14; -Form1->TreeView->Items->AddChild(currentnode,"Adresse réelle: 0x"+IntToHex((int)pointeur+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(currentnode,"Adresse : 0x"+IntToHex((int)pointeur,4))->ImageIndex=31; -do -{ -fseek(in, pointeur+offset, SEEK_SET); -fread(&imported, sizeof(imported), 1, in); -exports[i]=AnsiString((char*)&imported); -pointeur+=exports[i].Length()+1; -fseek(in, pointeur+offset, SEEK_SET); -fread(&eaddrs[i],sizeof(eaddrs[i]),1,in); -pointeur+=2; -i++; -} while(exports[i-1]!=""); - -nbexp=i-1; - -for(int i=0;iTreeView->Items->AddChild(currentnode,exports[i]); -subcurrentnode->ImageIndex=3; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex(eaddrs[i]+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex(eaddrs[i],4))->ImageIndex=31; -} -currentnode->Text="exportations ("+IntToStr(nbexp)+")"; -Form1->TreeView->Items->AddChild(currentnode,"Taille : 0x"+IntToHex((int)pointeur-myce.exports,4))->ImageIndex=31; -} -else -{ -nbexp=0; -} - -pointeur=myce.sections; -i=0; -int nbsec=0; - -if (myce.sections!=0) -{ -currentnode=Form1->TreeView->Items->AddChild(rootnode,"Sections"); -currentnode->ImageIndex=12; -Form1->TreeView->Items->AddChild(currentnode,"Adresse réelle: 0x"+IntToHex((int)pointeur+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(currentnode,"Adresse : 0x"+IntToHex((int)pointeur,4))->ImageIndex=31; -do -{ -fseek(in, pointeur+offset, SEEK_SET); -fread(&saddrs[i],sizeof(saddrs[i]),1,in); -pointeur+=2; -fseek(in, pointeur+offset, SEEK_SET); -fread(&ssize[i],sizeof(ssize[i]),1,in); -pointeur+=2; -fseek(in, pointeur+offset, SEEK_SET); -fread(&imported, sizeof(imported), 1, in); -sections[i]=AnsiString((char*)&imported); -pointeur+=sections[i].Length()+1; -i++; -} while(ssize[i-1]!=0); -nbsec=i-1; -for(int i=0;iTreeView->Items->AddChild(currentnode,sections[i]); -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse réelle: 0x"+IntToHex(saddrs[i]+offset,4))->ImageIndex=31; -Form1->TreeView->Items->AddChild(subcurrentnode,"Adresse : 0x"+IntToHex(saddrs[i],4))->ImageIndex=31; -if (saddrs[i]!=0) tree(file,saddrs[i],subcurrentnode); -subcurrentnode->ImageIndex=2; -Form1->TreeView->Items->AddChild(subcurrentnode,"Taille : 0x"+IntToHex(ssize[i],4))->ImageIndex=31; -} -Form1->TreeView->Items->AddChild(currentnode,"Taille : 0x"+IntToHex((int)pointeur-myce.sections,4))->ImageIndex=31; -currentnode->Text="Sections ("+IntToStr(nbsec)+")"; -} -else -{ -nbsec=0; -} - -if (offset==0) -{ -fseek(in, 0L, SEEK_END); -int size = ftell(in); -Form1->TreeView->Items->AddChild(rootnode,"Taille : 0x"+IntToHex(size,4))->ImageIndex=31; -} -} -fclose(in); -} -} -//--------------------------------------------------------------------------- - -void __fastcall TForm1::Ouvrir1Click(TObject *Sender) -{ -if (OpenDialog->Execute()) -tree(OpenDialog->FileName,0,Form1->TreeView->Items->Add(Form1->TreeView->Items->GetFirstNode(),ExtractFileName(OpenDialog->FileName))); -TTreeNode* node=Form1->TreeView->Items->GetFirstNode(); -while(node!=NULL) -{ -node->SelectedIndex=node->ImageIndex; -node=node->GetNext(); -} -} - -//--------------------------------------------------------------------------- - -void __fastcall TForm1::Quitter1Click(TObject *Sender) -{ -Close(); -} -//--------------------------------------------------------------------------- - - diff --git a/outils/CE explorer/unit1.ddp b/outils/CE explorer/unit1.ddp deleted file mode 100644 index cdc0ee8..0000000 Binary files a/outils/CE explorer/unit1.ddp and /dev/null differ diff --git a/outils/CE explorer/unit1.dfm b/outils/CE explorer/unit1.dfm deleted file mode 100644 index 682f200..0000000 --- a/outils/CE explorer/unit1.dfm +++ /dev/null @@ -1,1434 +0,0 @@ -object Form1: TForm1 - Left = 293 - Top = 172 - Width = 688 - Height = 496 - Caption = 'CE explorer' - Color = clBtnFace - Font.Charset = DEFAULT_CHARSET - Font.Color = clWindowText - Font.Height = -11 - Font.Name = 'MS Sans Serif' - Font.Style = [] - Menu = MainMenu1 - OldCreateOrder = False - PixelsPerInch = 96 - TextHeight = 13 - object TreeView: TTreeView - Left = 0 - Top = 0 - Width = 504 - Height = 442 - Align = alClient - Images = ImageList - Indent = 29 - ReadOnly = True - TabOrder = 0 - end - object RichEdit1: TRichEdit - Left = 504 - Top = 0 - Width = 176 - Height = 442 - Align = alRight - ReadOnly = True - TabOrder = 1 - end - object MainMenu1: TMainMenu - Left = 216 - object Fichier1: TMenuItem - Caption = 'Fichier' - object Ouvrir1: TMenuItem - Caption = 'Ouvrir...' - OnClick = Ouvrir1Click - end - object N1: TMenuItem - Caption = '-' - end - object Quitter1: TMenuItem - Caption = 'Quitter' - OnClick = Quitter1Click - end - end - end - object OpenDialog: TOpenDialog - Left = 248 - end - object ImageList: TImageList - Height = 15 - Width = 26 - Left = 280 - Bitmap = { - 494C01012C00310004001A000F00FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 - 000000000000360000002800000068000000C30000000100100000000000709E - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000001000100000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000100010000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000000000000010001000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000000000000000000000000000000000001042 - 1042104210421042104210421042104210421042000000000000000000001000 - 1000000000000000000000000000000000001042186300000000000000000000 - 0000000000001042000000000000000000000000000000000000000000000000 - 0000000000001042186300000000000000000000000000000000104200000000 - 10001000100010001000000000000000000000000000000000001042007C0000 - 0000000000000000000000000000104200000000000000000000000000000000 - 00000000000000000000000000001042007C0000000000000000000000000000 - 0000104200000000100010001000100010000000000000000000000000000000 - 00001042FF7F1863000000000000000000000000000010420000000000000000 - 000000000000000000000000000000000000000000001042FF7F186300000000 - 0000000000000000000010420000000010001000000010001000000000000000 - 000000000000000000001042FF7F007C00000000000000000000000000001042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF7F007C00000000000000000000000000001042000000001000100000001000 - 1000000000000000E07F0000E07F0000000010421863FF7F1863000000000000 - 00000000000010420000000000000000000000000000000000000000E07F0000 - E07F0000000010421863FF7F1863000000000000000000000000104200000000 - 10001000000010001000000000000000E07F0000E07F000000001042007CFF7F - 007C000000000000000000000000104200000000000000000000000000000000 - 00000000E07F0000E07F000000001042007CFF7F007C00000000000000000000 - 00001042000000001000100000001000100000000000E07F0000E07F0000E07F - 00001042FF7F1863FF7F18630000000000000000000010420000000000000000 - 00000000000000000000E07F0000E07F0000E07F00001042FF7F1863FF7F1863 - 000000000000000000001042000000001000100000001000100000000000E07F - 0000E07F0000E07F00001042FF7F007CFF7F007C000000000000000000001042 - 000000000000000000000000000000000000E07F0000E07F0000E07F00001042 - FF7F007CFF7F007C000000000000000000001042000000001000100000001000 - 1000000000000000E07FE07FE07F0000000010421863FF7F1863FF7F18630000 - 00000000000010420000000000000000000000000000000000000000E07FE07F - E07F0000000010421863FF7F1863FF7F18630000000000000000104200000000 - 00000000000000000000000000000000E07FE07FE07F000000001042007CFF7F - 007CFF7F007C0000000000000000104200000000000000000000000000000000 - 00000000E07FE07FE07F000000001042007CFF7F007CFF7F007C000000000000 - 00001042000000000000000000000000000000000000E07F0000E07F0000E07F - 00001042FF7F1863FF7F1863FF7F186300000000000010420000000000000000 - 00000000000000000000E07F0000E07F0000E07F00001042FF7F1863FF7F1863 - FF7F18630000000000001042000000000000100010001000000000000000E07F - 0000E07F0000E07F00001042FF7F007CFF7F007CFF7F007C0000000000001042 - 000000000000000000000000000000000000E07F0000E07F0000E07F00001042 - FF7F007CFF7F007CFF7F007C0000000000001042000000000000100010001000 - 0000000000000000E07F0000E07F0000000010421863FF7F1863FF7F1863FF7F - 18630000000010420000000000000000000000000000000000000000E07F0000 - E07F0000000010421863FF7F1863FF7F1863FF7F186300000000104200000000 - 10001000000010001000000000000000E07F0000E07F000000001042007CFF7F - 007CFF7F007CFF7F007C00000000104200000000000000000000000000000000 - 00000000E07F0000E07F000000001042007CFF7F007CFF7F007CFF7F007C0000 - 0000104200000000100010000000100010000000000000000000000000000000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863000010420000000000000000 - 000000000000000000000000000000000000000000001042FF7F1863FF7F1863 - FF7F1863FF7F1863000010420000000010001000000010001000000000000000 - 000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007C00001042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF7F007CFF7F007CFF7F007CFF7F007C00001042000000001000100000001000 - 1000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 1000100010001000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000100010001000100000000000000000000000000000000000 - 00001042FF03FF03FF03FF03FF03FF03FF03FF03FF0310420000000000000000 - 000000000000000000000000000000000000000000001042FF03FF03FF03FF03 - FF03FF03FF03FF03FF0310420000000010001000000000000000000000000000 - 000000000000000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF031042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF03FF03FF03FF03FF03FF03FF03FF03FF031042000000001000100000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 0000100010001000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000000010001000100000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000100010000000000000000000000000000000000000001042104210421042 - 1042104210421042104210421042000000000000000010001000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000010001000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000001000 - 1000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000001000100000000000000000000000 - 0000000000001863186318631863186318631863186318631863186310420000 - 0000000000001000100000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000100010000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000000000000000100010000000000000000000000000000000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000010001000 - 1000100010000000000000000000000000000000000018631863FF7F1863FF7F - 186300000000FF7F186318631042000010001000100010001000000000000000 - 000000000000000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000010001000100010001000000000000000000000000000000000001042 - 007CFF7F007CFF7F007C00000000FF7F007C1042000000001000100010001000 - 1000000000000000000000000000000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000001000100000001000100000000000000000000000 - 0000000000001863FF7F1863FF7F1863FF7F000000001863FF7F186310420000 - 10001000000010001000000000000000000000000000000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000100010000000100010000000 - 00000000000000000000000000001042FF7F007CFF7F007CFF7F00000000007C - FF7F10420000000010001000000010001000000000000000E07F0000E07F0000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000010001000 - 000010001000000000000000E07F0000E07F0000000018631863FF7F1863FF7F - 186300000000FF7F186318631042000010001000000010001000000000000000 - E07F0000E07F000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000010001000000010001000000000000000E07F0000E07F000000001042 - 007CFF7F007CFF7F007C00000000FF7F007C1042000000001000100000001000 - 100000000000E07F0000E07F0000E07F00001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000001000100000001000100000000000E07F0000E07F - 0000E07F00001863FF7F1863000018630000000000001863FF7F186310420000 - 1000100000001000100000000000E07F0000E07F0000E07F00001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000100010000000100010000000 - 0000E07F0000E07F0000E07F00001042FF7F007C0000007C000000000000007C - FF7F10420000000010001000000010001000000000000000E07FE07FE07F0000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000000000000 - 000000000000000000000000E07FE07FE07F0000000018631863FF7F00000000 - 000000001863FF7F186318631042000000000000000000000000000000000000 - E07FE07FE07F000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000000000000000000000000000000000000E07FE07FE07F000000001042 - 007CFF7F0000000000000000007CFF7F007C1042000000000000000000000000 - 000000000000E07F0000E07F0000E07F00001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000000000100010001000000000000000E07F0000E07F - 0000E07F00001863FF7F18630000000000001863FF7F1863FF7F186310420000 - 0000100010001000000000000000E07F0000E07F0000E07F00001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000000010001000100000000000 - 0000E07F0000E07F0000E07F00001042FF7F007C000000000000007CFF7F007C - FF7F10420000000000001000100010000000000000000000E07F0000E07F0000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000010001000 - 000010001000000000000000E07F0000E07F0000000018631863FF7F00000000 - 000000001863FF7F186318631042000010001000000010001000000000000000 - E07F0000E07F000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000010001000000010001000000000000000E07F0000E07F000000001042 - 007CFF7F0000000000000000007CFF7F007C1042000000001000100000001000 - 1000000000000000000000000000000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000001000100000001000100000000000000000000000 - 0000000000001863FF7F1863FF7F1863FF7F1863FF7F1863FF7F186310420000 - 10001000000010001000000000000000000000000000000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000100010000000100010000000 - 00000000000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007C - FF7F104200000000100010000000100010000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000010001000 - 1000100000000000000000000000000000000000000018631863186318631863 - 1863186318631863186318631042000010001000100010000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000010001000100010000000000000000000000000000000000000001042 - 1042104210421042104210421042104210421042000000001000100010001000 - 0000000000000000000000000000000000001042FF03FF03FF03FF03FF03FF03 - FF03FF03FF031042000000001000100000000000000000000000000000000000 - 0000000000001863FF03FF7FFF03FF7FFF03FF7FFF03FF7FFF03186310420000 - 10001000000000000000000000000000000000000000000000001042FF03FF03 - FF03FF03FF03FF03FF03FF03FF03104200000000100010000000000000000000 - 00000000000000000000000000001042FF03FF03FF03FF03FF03FF03FF03FF03 - FF03104200000000100010000000000000000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000001000 - 1000100000000000000000000000000000000000000018631863186318631863 - 1863186318631863186318630000000000001000100010000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000001000100010000000000000000000000000000000000000001042 - 1042104210421042104210421042104210421042000000000000100010001000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000104210421042104210421042104210421042104210420000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000000000000000000000000000000000000018631863186318631863 - 1863186318631863186318631042000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000000000000000000000000000000000001042 - 1042104210421042104210421042104210421042000000000000000000000000 - 00000000000000000000000000000000000010421863FF7F1863FF7F1863FF7F - 1863FF7F18631042000000000000000000000000000000000000000000000000 - 00000000000018631863FF7F1863FF7F186300000000FF7F1863186310420000 - 00000000000000000000000000000000000000000000000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000000000000000000000000000 - 00000000000000000000000000001042007CFF7F007CFF7F007C00000000FF7F - 007C104200000000000000000000000000000000000000000000000000000000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000000000000 - 000000000000000000000000000000000000000000001863FF7F1863FF7F1863 - FF7F000000001863FF7F18631042000000000000000000000000000000000000 - 000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF7F007CFF7F007CFF7F00000000007CFF7F1042000000000000000000000000 - 0000000000000000E07F0000E07F0000000010421863FF7F1863FF7F1863FF7F - 1863FF7F186310420000000000000000000000000000000000000000E07F0000 - E07F0000000018631863FF7F1863FF7F186300000000FF7F1863186310420000 - 00000000000000000000000000000000E07F0000E07F000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000000000000000000000000000 - 00000000E07F0000E07F000000001042007CFF7F007CFF7F007C00000000FF7F - 007C1042000000000000000000000000000000000000E07F0000E07F0000E07F - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000000000000 - 00000000000000000000E07F0000E07F0000E07F00001863FF7F186300001863 - 0000000000001863FF7F1863104200000000000000000000000000000000E07F - 0000E07F0000E07F00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 000000000000000000000000000000000000E07F0000E07F0000E07F00001042 - FF7F007C0000007C000000000000007CFF7F1042000000000000000000000000 - 0000000000000000E07FE07FE07F0000000010421863FF7F1863FF7F1863FF7F - 1863FF7F186310420000000000000000000000000000000000000000E07FE07F - E07F0000000018631863FF7F00000000000000001863FF7F1863186310420000 - 00000000000000000000000000000000E07FE07FE07F000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000000000000000000000000000 - 00000000E07FE07FE07F000000001042007CFF7F0000000000000000007CFF7F - 007C1042000000000000000000000000000000000000E07F0000E07F0000E07F - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000000000000 - 00000000000000000000E07F0000E07F0000E07F00001863FF7F186300000000 - 00001863FF7F1863FF7F1863104200000000000000000000000000000000E07F - 0000E07F0000E07F00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 000000000000000000000000000000000000E07F0000E07F0000E07F00001042 - FF7F007C000000000000007CFF7F007CFF7F1042000000000000000000000000 - 0000000000000000E07F0000E07F0000000010421863FF7F1863FF7F1863FF7F - 1863FF7F186310420000000000000000000000000000000000000000E07F0000 - E07F0000000018631863FF7F00000000000000001863FF7F1863186310420000 - 00000000000000000000000000000000E07F0000E07F000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000000000000000000000000000 - 00000000E07F0000E07F000000001042007CFF7F0000000000000000007CFF7F - 007C104200000000000000000000000000000000000000000000000000000000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000000000000 - 000000000000000000000000000000000000000000001863FF7F1863FF7F1863 - FF7F1863FF7F1863FF7F18631042000000000000000000000000000000000000 - 000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042000000000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001863186318631863186318631863186318631863186310420000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000000000000000000000000000000000000000000000000000 - 00001042FF03FF03FF03FF03FF03FF03FF03FF03FF0310420000000000000000 - 000000000000000000000000000000000000000000001863FF03FF7FFF03FF7F - FF03FF7FFF03FF7FFF0318631042000000000000000000000000000000000000 - 000000000000000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF031042 - 0000000000000000000000000000000000000000000000000000000000001042 - FF03FF03FF03FF03FF03FF03FF03FF03FF031042000000000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001863186318631863186318631863186318631863186300000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000100010000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000010001000000000000000 - 0000000000000000000000000000000000000000E07FE07FE07FE07F00000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000007C007C007C007C00000000000000000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000001000100000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 0000000000001000100000000000000000000000000000000000000000000000 - E07FE07FE07F00000000E07FE07FE07F00000000000000000000000000000000 - 0000000000000000000000000000000000000000007C007C007C00000000007C - 007C007C000000000000000000000000000010421F001F001F001F001F000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000010001000 - 10001000100010421F001F001F001F001F00000000001042007CFF7F007CFF7F - 007C00000000FF7F007C10420000000010001000100010001000000000000000 - 0000000000000000000000000042E07FE07FE07FE07F00000000E07FE07FE07F - E07F000000000000000000000000000000000000000000000000000000000000 - 0040007C007C007C007C00000000007C007C007C007C00000000000000000000 - 00001042FF7FFF7F186318631863000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F104200000000100010000000100010001042FF7FFF7F18631863 - 1863000000001042FF7F007CFF7F007CFF7F00000000007CFF7F104200000000 - 100010000000100010000000000000000000000000000000000000000042E07F - E07FE07FE07FE07FE07FE07FE07FE07FE07F0000000000000000000000000000 - 000000000000000000000000000000000040007C007C007C007C007C007C007C - 007C007C007C0000000000000000000000001042FF7FFF7F1863186318630000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000010001000 - 0000100010001042FF7FFF7F186318631863000000001042007CFF7F007CFF7F - 007C00000000FF7F007C10420000000010001000000010001000000000000000 - E07F0000E07F000000000042E07FE07FE07FE07FE07F00000000E07FE07FE07F - E07FE07F00000000000000000000000000000000E07F0000E07F000000000040 - 007C007C007C007C007C00400040007C007C007C007C007C0000000000000000 - 000000001042FF7F186318630000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000001000100000001000100000001042FF7F18631863 - 0000000000001042FF7F007C0000007C000000000000007CFF7F104200000000 - 1000100000001000100000000000E07F0000E07F0000E07F00000042E07FE07F - E07FE07FE07F00000000E07FE07FE07FE07FE07F000000000000000000000000 - 0000E07F0000E07F0000E07F00000040007C007C007C007C007C00000000007C - 007C007C007C007C000000000000000000000000000010421863000000000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000000000000 - 000000000000000000001042186300000000000000001042007CFF7F00000000 - 00000000007CFF7F007C10420000000000000000000000000000000000000000 - E07FE07FE07F000000000042E07FE07FE07FE07FE07FE07F00000000E07FE07F - E07FE07F00000000000000000000000000000000E07FE07FE07F000000000040 - 007C007C007C007C007C00000000007C007C007C007C007C0000000000000000 - 0000000000001042186300000000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000000000100010001000000000000000104218630000 - 0000000000001042FF7F007C000000000000007CFF7F007CFF7F104200000000 - 0000100010001000000000000000E07F0000E07F0000E07F00000042E07FE07F - E07FE07FE07FE07FE07F00000000E07FE07FE07F000000000000000000000000 - 0000E07F0000E07F0000E07F00000040007C007C007C007C0040000000000040 - 007C007C007C007C000000000000000000000000104218631863186300000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000010001000 - 000010001000000010421863186318630000000000001042007CFF7F00000000 - 00000000007CFF7F007C10420000000010001000000010001000000000000000 - E07F0000E07F0000000000000042E07FE07F00000000E07FE07F00000000E07F - E07F000000000000000000000000000000000000E07F0000E07F000000000000 - 0040007C007C007C0040000000000040007C007C007C00000000000000000000 - 0000104218631863186318631863000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000001000100000001000100010421863186318631863 - 1863000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F104200000000 - 100010000000100010000000000000000000000000000000000000000042E07F - E07F000000000000000000000000E07FE07F0000000000000000000000000000 - 000000000000000000000000000000000040007C007C007C0040000000000040 - 007C007C007C0000000000000000000000001042FF7FFF7FFF7F186318630000 - 0000104210421042104210421042104210421042104210420000000010001000 - 1000100000001042FF7FFF7FFF7F186318630000000010421042104210421042 - 1042104210421042104210420000000010001000100010000000000000000000 - 00000000000000000000000000000042E07FE07F0000000000000000E07FE07F - 0000000000000000000000000000000000000000000000000000000000000000 - 00000040007C007C007C00000000007C007C007C000000000000000000000000 - 000010421F001F001F001F001F00000000001042FF03FF03FF03FF03FF03FF03 - FF03FF03FF031042000000001000100000000000000010421F001F001F001F00 - 1F00000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF03104200000000 - 1000100000000000000000000000000000000000000000000000000000000000 - 00420042E07FE07FE07FE07F0042004200000000000000000000000000000000 - 000000000000000000000000000000000000000000400040007C007C007C007C - 0040004000000000000000000000000000000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000001000 - 1000100000000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000001000100010000000000000000000 - 0000000000000000000000000000000000000000004200420042004200000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000004000400040004000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000100010000000 - 0000000000000000000000000000000010421042104210421042104210421042 - 1042104210420000000000000000100010000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000010001000000000000000000000000000000000001863 - 1863186318631863186318631863186318631863104200000000000000001000 - 100010421F001F001F001F001F00000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000000000000000000000000010421F001F001F001F00 - 1F00000000001042007CFF7F007CFF7F007C00000000FF7F007C104200000000 - 0000000000000000000010421F001F001F001F001F000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000100010001000100010001042 - 1F001F001F001F001F000000000018631863FF7F1863FF7F186300000000FF7F - 1863186310420000100010001000100010001042FF7FFF7F1863186318630000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000000000000 - 0000000000001042FF7FFF7F186318631863000000001042FF7F007CFF7F007C - FF7F00000000007CFF7F104200000000000000000000000000001042FF7FFF7F - 186318631863000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 00000000100010000000100010001042FF7FFF7F186318631863000000001863 - FF7F1863FF7F1863FF7F000000001863FF7F1863104200001000100000001000 - 10001042FF7FFF7F186318631863000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C104200000000000000000000000000001042FF7FFF7F18631863 - 1863000000001042007CFF7F007CFF7F007C00000000FF7F007C104200000000 - 000000000000000000001042FF7FFF7F1863186318630000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000100010000000100010001042 - FF7FFF7F1863186318630000000018631863FF7F1863FF7F186300000000FF7F - 18631863104200001000100000001000100000001042FF7F1863186300000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000000000000 - 00000000000000001042FF7F186318630000000000001042FF7F007C0000007C - 000000000000007CFF7F1042000000000000000000000000000000001042FF7F - 186318630000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 000000001000100000001000100000001042FF7F186318630000000000001863 - FF7F1863000018630000000000001863FF7F1863104200001000100000001000 - 1000000000001042186300000000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000000000000000000000000000000000104218630000 - 0000000000001042007CFF7F0000000000000000007CFF7F007C104200000000 - 000000000000000000000000000010421863000000000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000000000000000000000000000 - 000010421863000000000000000018631863FF7F00000000000000001863FF7F - 1863186310420000000000000000000000000000000010421863000000000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000000000000 - 000000000000000000001042186300000000000000001042FF7F007C00000000 - 0000007CFF7F007CFF7F10420000000000000000000000000000000000001042 - 186300000000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000000001000100010000000000000001042186300000000000000001863 - FF7F18630000000000001863FF7F1863FF7F1863104200000000100010001000 - 0000000010421863186318630000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000000000000000000000000000001042186318631863 - 0000000000001042007CFF7F0000000000000000007CFF7F007C104200000000 - 000000000000000000000000104218631863186300000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000100010000000100010000000 - 104218631863186300000000000018631863FF7F00000000000000001863FF7F - 1863186310420000100010000000100010001042186318631863186318630000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000000000000 - 000000000000104218631863186318631863000000001042FF7F007CFF7F007C - FF7F007CFF7F007CFF7F10420000000000000000000000000000104218631863 - 186318631863000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000010001000000010001000104218631863186318631863000000001863 - FF7F1863FF7F1863FF7F1863FF7F1863FF7F1863104200001000100000001000 - 10001042FF7FFF7FFF7F18631863000000001042104210421042104210421042 - 104210421042104200000000000000000000000000001042FF7FFF7FFF7F1863 - 1863000000001042104210421042104210421042104210421042104200000000 - 000000000000000000001042FF7FFF7FFF7F1863186300000000104210421042 - 1042104210421042104210421042104200000000100010001000100000001042 - FF7FFF7FFF7F1863186300000000186318631863186318631863186318631863 - 18631863104200001000100010001000000010421F001F001F001F001F000000 - 00001042FF03FF03FF03FF03FF03FF03FF03FF03FF0310420000000000000000 - 00000000000010421F001F001F001F001F00000000001042FF03FF03FF03FF03 - FF03FF03FF03FF03FF031042000000000000000000000000000010421F001F00 - 1F001F001F00000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF031042 - 000000001000100000000000000010421F001F001F001F001F00000000001863 - FF03FF7FFF03FF7FFF03FF7FFF03FF7FFF031863104200001000100000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000010001000100000000000 - 0000000000000000000000000000186318631863186318631863186318631863 - 1863186300000000000010001000100000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 000000000000000000000000E07FE07FE07FE07F000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 007C007C007C007C000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 1042104210421042104210421042104210421042104200000000000000000000 - 000010421F001F001F001F001F0000000000000000000000E07FE07FE07F0000 - 0000E07FE07FE07F000000000000000000000000000010421F001F001F001F00 - 1F0000000000000000000000007C007C007C00000000007C007C007C00000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000186318631863186318631863186318631863 - 1863186310420000000000000000000000001042FF7FFF7F1863186318630000 - 000000000042E07FE07FE07FE07F00000000E07FE07FE07FE07F000000000000 - 0000000000001042FF7FFF7F1863186318630000000000000040007C007C007C - 007C00000000007C007C007C007C00000000000000000000000010421F001F00 - 1F001F001F000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 000000000000000000000000000010421F001F001F001F001F00000000001863 - 1863FF7F1863FF7F186300000000FF7F18631863104200000000000000000000 - 00001042FF7FFF7F1863186318630000000000000042E07FE07FE07FE07FE07F - E07FE07FE07FE07FE07F0000000000000000000000001042FF7FFF7F18631863 - 18630000000000000040007C007C007C007C007C007C007C007C007C007C0000 - 000000000000000000001042FF7FFF7F186318631863000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000000000000000000000001042 - FF7FFF7F186318631863000000001863FF7F1863FF7F1863FF7F000000001863 - FF7F1863104200000000000000000000000000001042FF7F1863186300000000 - 00000042E07FE07FE07FE07FE07F00000000E07FE07FE07FE07FE07F00000000 - 00000000000000001042FF7F186318630000000000000040007C007C007C007C - 007C00400040007C007C007C007C007C000000000000000000001042FF7FFF7F - 1863186318630000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 00000000000000000000000000001042FF7FFF7F186318631863000000001863 - 1863FF7F1863FF7F186300000000FF7F18631863104200000000000000000000 - 0000000000001042186300000000000000000042E07FE07FE07FE07FE07F0000 - 0000E07FE07FE07FE07FE07F0000000000000000000000000000104218630000 - 0000000000000040007C007C007C007C007C00000000007C007C007C007C007C - 0000000000000000000000001042FF7F186318630000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000000000000000000000000000 - 1042FF7F186318630000000000001863FF7F1863000018630000000000001863 - FF7F186310420000000000000000000000000000000010421863000000000000 - 00000042E07FE07FE07FE07FE07FE07F00000000E07FE07FE07FE07F00000000 - 000000000000000000001042186300000000000000000040007C007C007C007C - 007C00000000007C007C007C007C007C00000000000000000000000000001042 - 1863000000000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000000000000000000000000000000001042186300000000000000001863 - 1863FF7F00000000000000001863FF7F18631863104200000000000000000000 - 0000000010421863186318630000000000000042E07FE07FE07FE07FE07FE07F - E07F00000000E07FE07FE07F0000000000000000000000001042186318631863 - 0000000000000040007C007C007C007C0040000000000040007C007C007C007C - 00000000000000000000000000001042186300000000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000000000000000000000000000 - 00001042186300000000000000001863FF7F18630000000000001863FF7F1863 - FF7F186310420000000000000000000000001042186318631863186318630000 - 000000000042E07FE07F00000000E07FE07F00000000E07FE07F000000000000 - 0000000000001042186318631863186318630000000000000040007C007C007C - 0040000000000040007C007C007C000000000000000000000000000010421863 - 1863186300000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000000000000000000000000000010421863186318630000000000001863 - 1863FF7F00000000000000001863FF7F18631863104200000000000000000000 - 00001042FF7FFF7FFF7F186318630000000000000042E07FE07F000000000000 - 000000000000E07FE07F0000000000000000000000001042FF7FFF7FFF7F1863 - 18630000000000000040007C007C007C0040000000000040007C007C007C0000 - 00000000000000000000104218631863186318631863000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000000000000000000000001042 - 18631863186318631863000000001863FF7F1863FF7F1863FF7F1863FF7F1863 - FF7F1863104200000000000000000000000010421F001F001F001F001F000000 - 0000000000000042E07FE07F0000000000000000E07FE07F0000000000000000 - 00000000000010421F001F001F001F001F0000000000000000000040007C007C - 007C00000000007C007C007C00000000000000000000000000001042FF7FFF7F - FF7F186318630000000010421042104210421042104210421042104210421042 - 00000000000000000000000000001042FF7FFF7FFF7F18631863000000001863 - 1863186318631863186318631863186318631863104200000000000000000000 - 00000000000000000000000000000000000000000000000000420042E07FE07F - E07FE07F00420042000000000000000000000000000000000000000000000000 - 00000000000000000000000000400040007C007C007C007C0040004000000000 - 0000000000000000000010421F001F001F001F001F00000000001042FF03FF03 - FF03FF03FF03FF03FF03FF03FF03104200000000000000000000000000001042 - 1F001F001F001F001F00000000001863FF03FF7FFF03FF7FFF03FF7FFF03FF7F - FF03186310420000000000000000000000000000000000000000000000000000 - 0000000000000000000000000042004200420042000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0040004000400040000000000000000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000000000000000000000000000000000001863 - 1863186318631863186318631863186318631863000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000001000100000000000000000000000 - 0000000000000000104210421042104210421042104210421042104210420000 - 0000000000001000100000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000100010000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000100010000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000100010000000000000000000000000000000000018631863186318631863 - 1863186318631863186318631042000000000000000010001000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000010001000000000000000000000000000000000001042 - 1042104210421042104210421042104210421042000000000000000000001000 - 10000000104200000000000000000000000010421863FF7F1863FF7F1863FF7F - 1863FF7F18631042000000001000100010001000100000001042000000000000 - 00000000000018631863FF7F1863FF7F186300000000FF7F1863186310420000 - 10001000100010001000000010420000000000000000000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000100010001000100010000000 - 10420000000000000000000000001042007CFF7F007CFF7F007C00000000FF7F - 007C104200000000100010001000100010000000000000000000000000000000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000010001000 - 000010001000000000000000000000000000000000001863FF7F1863FF7F1863 - FF7F000000001863FF7F18631042000010001000000010001000000000000000 - 000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 0000000010001000000010001000000000000000000000000000000000001042 - FF7F007CFF7F007CFF7F00000000007CFF7F1042000000001000100000001000 - 10000000000000000000000000000000000010421863FF7F1863FF7F1863FF7F - 1863FF7F18631042000000001000100000001000100000000000000000000000 - 00000000000018631863FF7F1863FF7F186300000000FF7F1863186310420000 - 10001000000010001000000000000000000000000000000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000100010000000100010000000 - 00000000000000000000000000001042007CFF7F007CFF7F007C00000000FF7F - 007C104200000000100010000000100010000000000000000000000000000000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000010001000 - 000010001000000000000000000000000000000000001863FF7F186300001863 - 0000000000001863FF7F18631042000010001000000010001000000000000000 - 000000000000000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 0000000010001000000010001000000000000000000000000000000000001042 - FF7F007C0000007C000000000000007CFF7F1042000000001000100000001000 - 10000000000000000000000000000000000010421863FF7F1863FF7F1863FF7F - 1863FF7F18631042000000000000000000000000000000000000000000000000 - 00000000000018631863FF7F00000000000000001863FF7F1863186310420000 - 00000000000000000000000000000000000000000000000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000000000000000000000000000 - 00000000000000000000000000001042007CFF7F0000000000000000007CFF7F - 007C104200000000000000000000000000001042104210421042104210420000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000000001000 - 100010000000104210421042104210421042000000001863FF7F186300000000 - 00001863FF7F1863FF7F18631042000000001000100010000000104210421042 - 104210421042000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 0000000000001000100010000000104210421042104210421042000000001042 - FF7F007C000000000000007CFF7F007CFF7F1042000000000000100010001000 - 00001042FF7FFF7FFF7FFF7F10420000000010421863FF7F1863FF7F1863FF7F - 1863FF7F1863104200000000100010000000100010001042FF7FFF7FFF7FFF7F - 10420000000018631863FF7F00000000000000001863FF7F1863186310420000 - 100010000000100010001042FF7FFF7FFF7FFF7F1042000000001042007CFF7F - 007CFF7F007CFF7F007CFF7F007C104200000000100010000000100010001042 - FF7FFF7FFF7FFF7F1042000000001042007CFF7F0000000000000000007CFF7F - 007C104200000000100010000000100010001042FF7FFF7FFF7FFF7F10420000 - 00001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F10420000000010001000 - 0000100010001042FF7FFF7FFF7FFF7F1042000000001863FF7F1863FF7F1863 - FF7F1863FF7F1863FF7F186310420000100010000000100010001042FF7FFF7F - FF7FFF7F1042000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042 - 00000000100010000000100010001042FF7FFF7FFF7FFF7F1042000000001042 - FF7F007CFF7F007CFF7F007CFF7F007CFF7F1042000000001000100000001000 - 1000104210421042104210421042000000001042104210421042104210421042 - 1042104210421042000000001000100010001000000010421042104210421042 - 1042000000001863186318631863186318631863186318631863186310420000 - 1000100010001000000010421042104210421042104200000000104210421042 - 1042104210421042104210421042104200000000100010001000100000001042 - 1042104210421042104200000000104210421042104210421042104210421042 - 1042104200000000100010001000100000001042FF03FF03FF03FF0310420000 - 00001042FF03FF03FF03FF03FF03FF03FF03FF03FF0310420000000010001000 - 0000000000001042FF03FF03FF03FF031042000000001863FF03FF7FFF03FF7F - FF03FF7FFF03FF7FFF03186310420000100010000000000000001042FF03FF03 - FF03FF031042000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF031042 - 00000000100010000000000000001042FF03FF03FF03FF031042000000001042 - FF03FF03FF03FF03FF03FF03FF03FF03FF031042000000001000100000000000 - 0000104210421042104210421042000000001042104210421042104210421042 - 1042104210421042000000000000100010001000000010421042104210421042 - 1042000000001863186318631863186318631863186318631863186300000000 - 0000100010001000000010421042104210421042104200000000104210421042 - 1042104210421042104210421042104200000000000010001000100000001042 - 1042104210421042104200000000104210421042104210421042104210421042 - 1042104200000000000010001000100000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000001042104210421042 - 1042104210421042104210421042000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001863186318631863186318631863186318631863186310420000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000104210421042104210421042104210421042 - 1042104200000000000000000000000000000000104200000000000000000000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000000000000 - 0000000000000000104200000000000000000000000018631863FF7F1863FF7F - 186300000000FF7F186318631042000000000000000000000000000010420000 - 000000000000000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000000000000000000000000000010420000000000000000000000001042 - 007CFF7F007CFF7F007C00000000FF7F007C1042000000000000000000000000 - 0000000000000000000000000000000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000000000000000000000000000000000000000000000 - 0000000000001863FF7F1863FF7F1863FF7F000000001863FF7F186310420000 - 00000000000000000000000000000000000000000000000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000000000000000000000000000 - 00000000000000000000000000001042FF7F007CFF7F007CFF7F00000000007C - FF7F104200000000000000000000000000000000000000000000000000000000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000000000000 - 0000000000000000000000000000000000000000000018631863FF7F1863FF7F - 186300000000FF7F186318631042000000000000000000000000000000000000 - 000000000000000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000000000000000000000000000000000000000000000000000000001042 - 007CFF7F007CFF7F007C00000000FF7F007C1042000000000000000000000000 - 0000000000000000000000000000000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000000000000000000000000000000000000000000000 - 0000000000001863FF7F1863000018630000000000001863FF7F186310420000 - 00000000000000000000000000000000000000000000000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000000000000000000000000000 - 00000000000000000000000000001042FF7F007C0000007C000000000000007C - FF7F104200000000000000000000000000000000000000000000000000000000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000000000000 - 0000000000000000000000000000000000000000000018631863FF7F00000000 - 000000001863FF7F186318631042000000000000000000000000000000000000 - 000000000000000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 0000000000000000000000000000000000000000000000000000000000001042 - 007CFF7F0000000000000000007CFF7F007C1042000000000000000000000000 - 0000104210421042104210421042000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F1042000000000000000000000000000010421042104210421042 - 1042000000001863FF7F18630000000000001863FF7F1863FF7F186310420000 - 00000000000000000000104210421042104210421042000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000000000000000000000001042 - 10421042104210421042000000001042FF7F007C000000000000007CFF7F007C - FF7F104200000000000000000000000000001042FF7FFF7FFF7FFF7F10420000 - 000010421863FF7F1863FF7F1863FF7F1863FF7F186310420000000000000000 - 0000000000001042FF7FFF7FFF7FFF7F10420000000018631863FF7F00000000 - 000000001863FF7F1863186310420000000000000000000000001042FF7FFF7F - FF7FFF7F1042000000001042007CFF7F007CFF7F007CFF7F007CFF7F007C1042 - 00000000000000000000000000001042FF7FFF7FFF7FFF7F1042000000001042 - 007CFF7F0000000000000000007CFF7F007C1042000000000000000000000000 - 00001042FF7FFF7FFF7FFF7F1042000000001042FF7F1863FF7F1863FF7F1863 - FF7F1863FF7F104200000000000000000000000000001042FF7FFF7FFF7FFF7F - 1042000000001863FF7F1863FF7F1863FF7F1863FF7F1863FF7F186310420000 - 000000000000000000001042FF7FFF7FFF7FFF7F1042000000001042FF7F007C - FF7F007CFF7F007CFF7F007CFF7F104200000000000000000000000000001042 - FF7FFF7FFF7FFF7F1042000000001042FF7F007CFF7F007CFF7F007CFF7F007C - FF7F104200000000000000000000000000001042104210421042104210420000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000001042104210421042104210420000000018631863186318631863 - 1863186318631863186318631042000000000000000000000000104210421042 - 1042104210420000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000104210421042104210421042000000001042 - 1042104210421042104210421042104210421042000000000000000000000000 - 00001042FF03FF03FF03FF031042000000001042FF03FF03FF03FF03FF03FF03 - FF03FF03FF03104200000000000000000000000000001042FF03FF03FF03FF03 - 1042000000001863FF03FF7FFF03FF7FFF03FF7FFF03FF7FFF03186310420000 - 000000000000000000001042FF03FF03FF03FF031042000000001042FF03FF03 - FF03FF03FF03FF03FF03FF03FF03104200000000000000000000000000001042 - FF03FF03FF03FF031042000000001042FF03FF03FF03FF03FF03FF03FF03FF03 - FF03104200000000000000000000000000001042104210421042104210420000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000001042104210421042104210420000000018631863186318631863 - 1863186318631863186318630000000000000000000000000000104210421042 - 1042104210420000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000104210421042104210421042000000001042 - 1042104210421042104210421042104210421042000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000001000100000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000001000100000000000000000000000000000000000000000000000 - 00000000E07FE07FE07FE07F0000000000000000000000000000000000000000 - 000000000000000000000000000000000000000000000000007C007C007C007C - 0000000000000000000000000000000000000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000100010000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000000000000010001000000000000000 - 00000000000000000000000000000000E07FE07FE07F00000000E07FE07FE07F - 0000000000000000000000000000000000000000000000000000000000000000 - 00000000007C007C007C00000000007C007C007C000000000000000000000000 - 0000000000000000000000000000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000001000100010001000100000000000000000000000 - 0000000000001042007CFF7F007CFF7F007C00000000FF7F007C104200000000 - 100010001000100010000000104200000000000000000000000000000042E07F - E07FE07FE07F00000000E07FE07FE07FE07F0000000000000000000000000000 - 104200000000000000000000000000000040007C007C007C007C00000000007C - 007C007C007C0000000000000000000000000000000000000000000000000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000010001000 - 000010001000000000000000000000000000000000001042FF7F007CFF7F007C - FF7F00000000007CFF7F10420000000010001000000010001000000000000000 - 0000000000000000000000000042E07FE07FE07FE07FE07FE07FE07FE07FE07F - E07F000000000000000000000000000000000000000000000000000000000000 - 0040007C007C007C007C007C007C007C007C007C007C00000000000000000000 - 0000000000000000000000000000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000001000100000001000100000000000000000000000 - 0000000000001042007CFF7F007CFF7F007C00000000FF7F007C104200000000 - 10001000000010001000000000000000000000000000000000000042E07FE07F - E07FE07FE07F00000000E07FE07FE07FE07FE07F000000000000000000000000 - 00000000000000000000000000000040007C007C007C007C007C00400040007C - 007C007C007C007C000000000000000000000000000000000000000000000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000010001000 - 000010001000000000000000000000000000000000001042FF7F007C0000007C - 000000000000007CFF7F10420000000010001000000010001000000000000000 - 000000000000000000000042E07FE07FE07FE07FE07F00000000E07FE07FE07F - E07FE07F00000000000000000000000000000000000000000000000000000040 - 007C007C007C007C007C00000000007C007C007C007C007C0000000000000000 - 0000000000000000000000000000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000000000000000000000000000000000000000000000 - 0000000000001042007CFF7F0000000000000000007CFF7F007C104200000000 - 00000000000000000000000000000000000000000000000000000042E07FE07F - E07FE07FE07FE07F00000000E07FE07FE07FE07F000000000000000000000000 - 00000000000000000000000000000040007C007C007C007C007C00000000007C - 007C007C007C007C000000000000000000000000000000000000000000000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000000001000 - 100010000000000000000000000000000000000000001042FF7F007C00000000 - 0000007CFF7F007CFF7F10420000000000001000100010000000104210421042 - 104210421042000000000042E07FE07FE07FE07FE07FE07FE07F00000000E07F - E07FE07F00000000000000000000104210421042104210421042000000000040 - 007C007C007C007C0040000000000040007C007C007C007C0000000000000000 - 0000000000000000000000000000000000001042007CFF7F007CFF7F007CFF7F - 007CFF7F007C1042000000001000100000001000100000000000000000000000 - 0000000000001042007CFF7F0000000000000000007CFF7F007C104200000000 - 100010000000100010001042FF7FFF7FFF7FFF7F10420000000000000042E07F - E07F00000000E07FE07F00000000E07FE07F0000000000000000000000001042 - FF7FFF7FFF7FFF7F10420000000000000040007C007C007C0040000000000040 - 007C007C007C0000000000000000000000000000000000000000000000000000 - 00001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F10420000000010001000 - 000010001000000000000000000000000000000000001042FF7F007CFF7F007C - FF7F007CFF7F007CFF7F104200000000100010000000100010001042FF7FFF7F - FF7FFF7F10420000000000000042E07FE07F000000000000000000000000E07F - E07F0000000000000000000000001042FF7FFF7FFF7FFF7F1042000000000000 - 0040007C007C007C0040000000000040007C007C007C00000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000001000100010001000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 1000100010001000000010421042104210421042104200000000000000000042 - E07FE07F0000000000000000E07FE07F00000000000000000000000000001042 - 1042104210421042104200000000000000000040007C007C007C00000000007C - 007C007C00000000000000000000000000000000000000000000000000000000 - 00001042FF03FF03FF03FF03FF03FF03FF03FF03FF0310420000000010001000 - 000000000000000000000000000000000000000000001042FF03FF03FF03FF03 - FF03FF03FF03FF03FF03104200000000100010000000000000001042FF03FF03 - FF03FF0310420000000000000000000000420042E07FE07FE07FE07F00420042 - 00000000000000000000000000001042FF03FF03FF03FF031042000000000000 - 0000000000400040007C007C007C007C00400040000000000000000000000000 - 0000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000100010001000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 0000100010001000000010421042104210421042104200000000000000000000 - 0000000000420042004200420000000000000000000000000000000000001042 - 1042104210421042104200000000000000000000000000000040004000400040 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000010001000000000000000000000000000000000000000 - 1042104210421042104210421042104210421042104200000000000000001000 - 1000000000000000000000000000000000001042104210421042104210421042 - 1042104210421042000000000000000000000000000000000000000000000000 - 0000000000001042104210421042104210421042104210421042104200000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000100010000000 - 0000000000000000000000000000186318631863186318631863186318631863 - 1863186310420000000000000000100010000000000000000000000000000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000000000000 - 000000000000000000000000000000000000000000001042007CFF7F007CFF7F - 007C00000000FF7F007C10420000000000000000000000000000000000000000 - 0000000000000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000010001000100010001000000000000000000000000000000000001863 - 1863FF7F1863FF7F186300000000FF7F18631863104200001000100010001000 - 1000000000000000000000000000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000000000000000000000000000000000000000000000 - 0000000000001042FF7F007CFF7F007CFF7F00000000007CFF7F104200000000 - 00000000000000000000000000000000000000000000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000100010000000100010000000 - 00000000000000000000000000001863FF7F1863FF7F1863FF7F000000001863 - FF7F186310420000100010000000100010000000000000000000000000000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000000000000 - 000000000000000000000000000000000000000000001042007CFF7F007CFF7F - 007C00000000FF7F007C10420000000000000000000000000000000000000000 - 0000000000000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000010001000000010001000000000000000000000000000000000001863 - 1863FF7F1863FF7F186300000000FF7F18631863104200001000100000001000 - 1000000000000000000000000000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000000000000000000000000000000000000000000000 - 0000000000001042FF7F007C0000007C000000000000007CFF7F104200000000 - 00000000000000000000000000000000000000000000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000100010000000100010000000 - 00000000000000000000000000001863FF7F1863000018630000000000001863 - FF7F186310420000100010000000100010000000000000000000000000000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000000000000 - 000000000000000000000000000000000000000000001042007CFF7F00000000 - 00000000007CFF7F007C10420000000000000000000000000000000000000000 - 0000000000000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000000000000000000000000000000000000000000000000000000001863 - 1863FF7F00000000000000001863FF7F18631863104200000000000000000000 - 0000000000000000000000000000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000000000000000000000000000000000000000000000 - 0000000000001042FF7F007C000000000000007CFF7F007CFF7F104200000000 - 00000000000000000000000000000000000000000000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000000010001000100000000000 - 00000000000000000000000000001863FF7F18630000000000001863FF7F1863 - FF7F186310420000000010001000100000000000000000000000000000000000 - 00001042007CFF7F007CFF7F007CFF7F007CFF7F007C10420000000000000000 - 000000000000000000000000000000000000000000001042007CFF7F00000000 - 00000000007CFF7F007C10420000000000000000000000000000000000000000 - 0000000000000000000010421863FF7F1863FF7F1863FF7F1863FF7F18631042 - 0000000010001000000010001000000000000000000000000000000000001863 - 1863FF7F00000000000000001863FF7F18631863104200001000100000001000 - 1000000000000000000000000000000000001042FF7F007CFF7F007CFF7F007C - FF7F007CFF7F1042000000000000000000000000000000000000000000000000 - 0000000000001042FF7F007CFF7F007CFF7F007CFF7F007CFF7F104200000000 - 00000000000000000000000000000000000000000000000000001042FF7F1863 - FF7F1863FF7F1863FF7F1863FF7F104200000000100010000000100010000000 - 00000000000000000000000000001863FF7F1863FF7F1863FF7F1863FF7F1863 - FF7F186310420000100010000000100010000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000010001000100010000000000000000000000000000000000000001863 - 1863186318631863186318631863186318631863104200001000100010001000 - 0000000000000000000000000000000000001042FF03FF03FF03FF03FF03FF03 - FF03FF03FF031042000000000000000000000000000000000000000000000000 - 0000000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF03104200000000 - 00000000000000000000000000000000000000000000000000001042FF03FF03 - FF03FF03FF03FF03FF03FF03FF03104200000000100010000000000000000000 - 00000000000000000000000000001863FF03FF7FFF03FF7FFF03FF7FFF03FF7F - FF03186310420000100010000000000000000000000000000000000000000000 - 0000104210421042104210421042104210421042104210420000000000000000 - 0000000000000000000000000000000000000000000010421042104210421042 - 1042104210421042104210420000000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000001000100010000000000000000000000000000000000000001863 - 1863186318631863186318631863186318631863000000000000100010001000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 00000000000000000000000000000000000000000000000000000000E07FE07F - E07FE07F00000000000000000000000000000000000000000000000000000000 - 00000000000000000000000000000000007C007C007C007C0000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000010421042104210421042104210421042 - 1042104210420000000000000000000000000000000000000000000000000000 - 0000000000000000E07FE07FE07F00000000E07FE07FE07F0000000000000000 - 00000000000000000000000000000000000000000000000000000000007C007C - 007C00000000007C007C007C0000000000000000000000000000000000000000 - 0000000000000000000010421042104210421042104210421042104210421042 - 0000000000000000000000000000000000000000000000000000000000001863 - 1863186318631863186318631863186318631863104200000000000000000000 - 00000000000000000000000000000000000000000042E07FE07FE07FE07F0000 - 0000E07FE07FE07FE07F00000000000000000000000000000000000000000000 - 00000000000000000040007C007C007C007C00000000007C007C007C007C0000 - 000000000000000000000000000000000000000000000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000000000000000000000000000 - 000000000000000000000000000018631863FF7F1863FF7F186300000000FF7F - 1863186310420000000000000000000000000000000000000000000000000000 - 000000000042E07FE07FE07FE07FE07FE07FE07FE07FE07FE07F000000000000 - 0000000000000000000000000000000000000000000000000040007C007C007C - 007C007C007C007C007C007C007C000000000000000000000000000000000000 - 000000000000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000000000000000000000000000000000000000000000000000000001863 - FF7F1863FF7F1863FF7F000000001863FF7F1863104200000000000000000000 - 0000000000000000000000000000000000000042E07FE07FE07FE07FE07F0000 - 0000E07FE07FE07FE07FE07F0000000000000000000000000000000000000000 - 0000000000000040007C007C007C007C007C00400040007C007C007C007C007C - 000000000000000000000000000000000000000000000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000000000000000000000000000 - 000000000000000000000000000018631863FF7F1863FF7F186300000000FF7F - 1863186310420000000000000000000000000000000000000000000000000000 - 00000042E07FE07FE07FE07FE07F00000000E07FE07FE07FE07FE07F00000000 - 000000000000000000000000000000000000000000000040007C007C007C007C - 007C00000000007C007C007C007C007C00000000000000000000000000000000 - 000000000000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000000000000000000000000000000000000000000000000000000001863 - FF7F1863000018630000000000001863FF7F1863104200000000000000000000 - 0000000000000000000000000000000000000042E07FE07FE07FE07FE07FE07F - 00000000E07FE07FE07FE07F0000000000000000000000000000000000000000 - 0000000000000040007C007C007C007C007C00000000007C007C007C007C007C - 000000000000000000000000000000000000000000000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000000000000000000000000000 - 000000000000000000000000000018631863FF7F00000000000000001863FF7F - 1863186310420000000000000000000000000000000000000000000000000000 - 00000042E07FE07FE07FE07FE07FE07FE07F00000000E07FE07FE07F00000000 - 000000000000000000000000000000000000000000000040007C007C007C007C - 0040000000000040007C007C007C007C00000000000000000000000000000000 - 000000000000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000000000000000000000000000000000000000000000000000000001863 - FF7F18630000000000001863FF7F1863FF7F1863104200000000000000000000 - 00000000000000000000000000000000000000000042E07FE07F00000000E07F - E07F00000000E07FE07F00000000000000000000000000000000000000000000 - 00000000000000000040007C007C007C0040000000000040007C007C007C0000 - 000000000000000000000000000000000000000000000000000010421863FF7F - 1863FF7F1863FF7F1863FF7F1863104200000000000000000000000000000000 - 000000000000000000000000000018631863FF7F00000000000000001863FF7F - 1863186310420000000000000000000000000000000000000000000000000000 - 000000000042E07FE07F000000000000000000000000E07FE07F000000000000 - 0000000000000000000000000000000000000000000000000040007C007C007C - 0040000000000040007C007C007C000000000000000000000000000000000000 - 000000000000000000001042FF7F1863FF7F1863FF7F1863FF7F1863FF7F1042 - 0000000000000000000000000000000000000000000000000000000000001863 - FF7F1863FF7F1863FF7F1863FF7F1863FF7F1863104200000000000000000000 - 000000000000000000000000000000000000000000000042E07FE07F00000000 - 00000000E07FE07F000000000000000000000000000000000000000000000000 - 000000000000000000000040007C007C007C00000000007C007C007C00000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000186318631863186318631863186318631863 - 1863186310420000000000000000000000000000000000000000000000000000 - 000000000000000000420042E07FE07FE07FE07F004200420000000000000000 - 0000000000000000000000000000000000000000000000000000000000400040 - 007C007C007C007C004000400000000000000000000000000000000000000000 - 000000000000000000001042FF03FF03FF03FF03FF03FF03FF03FF03FF031042 - 0000000000000000000000000000000000000000000000000000000000001863 - FF03FF7FFF03FF7FFF03FF7FFF03FF7FFF031863104200000000000000000000 - 0000000000000000000000000000000000000000000000000000000000420042 - 0042004200000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000400040004000400000000000000000 - 0000000000000000000000000000000000000000000000000000104210421042 - 1042104210421042104210421042104200000000000000000000000000000000 - 0000000000000000000000000000186318631863186318631863186318631863 - 1863186300000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000424D3E000000000000003E0000002800000068000000C300000001000100 - 00000000300C00000000000000000000000000000000000000000000FFFFFF00 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - 0000000000000000000000000000000000000000000000000000000000000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000F7800FFDE003CF7800FFDE003C000000 - FF000FFFC003CFF000FFFC003C000000F7000FFDC0020F7000FFDC0020000000 - BE000FEF80024BE000FEF80024000000C1000FF040024C1000FF040024000000 - C1000FF040024C1000FF04002400000041000FD04003F41000FD04003F000000 - C1000FF040031C1000FF040031000000C1000FF040024C1000FF040024000000 - BE000FEF80024BE000FEF80024000000F7000FFDC0021F7000FFDC0021000000 - FF000FFFC0027FF000FFFC0027000000F7001FFDC0071F7001FFDC0071000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - F7800F3DE003CF7800F3DE003C000000FF000F3FC003CFF000F3FC003C000000 - F700083DC0020F700083DC0020000000BE00092F80024BE00092F80024000000 - C100093040024C100093040024000000C100093040024C100093040024000000 - 41000FD04003F41000FD04003F000000C1000C7040031C1000C7040031000000 - C100093040024C100093040024000000BE00092F80024BE00092F80024000000 - F700087DC0021F700087DC0021000000FF0009FFC0027FF0009FFC0027000000 - F7001C7DC0071F7001C7DC0071000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000F7800FFDE003FF7800FFDE003F000000 - FF000FFFC003FFF000FFFC003F000000F7000FFDC003FF7000FFDC003F000000 - BE000FEF8003FBE000FEF8003F000000C1000FF04003FC1000FF04003F000000 - C1000FF04003FC1000FF04003F00000041000FD04003F41000FD04003F000000 - C1000FF04003FC1000FF04003F000000C1000FF04003FC1000FF04003F000000 - BE000FEF8003FBE000FEF8003F000000F7000FFDC003FF7000FFDC003F000000 - FF000FFFC003FFF000FFFC003F000000F7001FFDC007FF7001FFDC007F000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFF87FFFFE1FF000000 - FF800F3FE003CF7E01FFDF807F00000001000F004003CFFC00FFFF003F000000 - 0100080040020F78007FDE001F0000000100090040024BE8007EFA001F000000 - 0100090040024C10003F04000F00000083000920C0024C10003F04000F000000 - C7000FF1C003F410003D04000F000000C7000C71C0031C10003F04000F000000 - 83000920C0024C18007F06001F0000000100090040024BE8007EFA001F000000 - 0100084040021F7C00FFDF003F000000010009C040027FFE01FFFF807F000000 - 01001C4040071F7F87FFDFE1FF000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FF800FFFE003FFF800F3FE003C000000 - 01000FC04003F01000F004003C00000001000FC04003F0100080040020000000 - 01000FC04003F010009004002400000001000FC04003F0100090040024000000 - 83000FE0C003F83000920C0024000000C7000FF1C003FC7000FF1C003F000000 - C7000FF1C003FC7000C71C003100000083000FE0C003F83000920C0024000000 - 01000FC04003F010009004002400000001000FC04003F0100084040021000000 - 01000FC04003F010009C04002700000001001FC04007F01001C4040071000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFF87FFFFE1FFFFFFFFFFFFFFF000000 - 01E01FC07807FFF800FFFE003F00000001C00FC07003F01000FC04003F000000 - 018007C06001F01000FC04003F000000018007C06001F01000FC04003F000000 - 830003E0C000F01000FC04003F000000C70003F1C000F83000FE0C003F000000 - C70003F1C000FC7000FF1C003F000000830003E0C000FC7000FF1C003F000000 - 018007C06001F83000FE0C003F000000018007C06001F01000FC04003F000000 - 01C00FC07003F01000FC04003F00000001E01FC07807F01000FC04003F000000 - FFF87FFFFE1FF01001FC04007F000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FB800F3EE003CFB800F3EE003C000000 - F9000F3E4003CF9000F3E4003C00000080000820000208000082000020000000 - B900092E40024B900092E40024000000BB00092EC0024BB00092EC0024000000 - DF000937C0024DF000937C002400000081000FE04003F81000FE04003F000000 - 01000C404003101000C404003100000001000900400240100090040024000000 - 0100090040024010009004002400000001000840400210100084040021000000 - 010009C040027010009C04002700000003001C40C007103001C40C0071000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FB800FFEE003FFB800FFEE003F000000F9000FFE4003FF9000FFE4003F000000 - 80000FE00003F80000FE00003F000000B9000FEE4003FB9000FEE4003F000000 - BB000FEEC003FBB000FEEC003F000000DF000FF7C003FDF000FF7C003F000000 - 81000FE04003F81000FE04003F00000001000FC04003F01000FC04003F000000 - 01000FC04003F01000FC04003F00000001000FC04003F01000FC04003F000000 - 01000FC04003F01000FC04003F00000001000FC04003F01000FC04003F000000 - 03001FC0C007F03001FC0C007F000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FFFFFFFFFFFFFFFF87FFFFE1FF000000FF800F3FE003CFBE01FFEF807F000000 - FF000F3FC003CF9C00FFE7003F000000FF00083FC0020808007E02001F000000 - FF00093FC0024B98007EE6001F000000FF00093FC0024BB0003EEC000F000000 - FF00093FC0024DF0003F7C000F000000FF000FFFC003F810003E04000F000000 - FF000C7FC0031010003C04000F000000FF00093FC0024018007C06001F000000 - FF00093FC0024018007C06001F000000FF00087FC002101C00FC07003F000000 - FF0009FFC002701E01FC07807F000000FF001C7FC007103F87FC0FE1FF000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FF800FFFE003FFF800F3FE003C000000FF000FFFC003FFF000F3FC003C000000 - FF000FFFC003FFF00083FC0020000000FF000FFFC003FFF00093FC0024000000 - FF000FFFC003FFF00093FC0024000000FF000FFFC003FFF00093FC0024000000 - FF000FFFC003FFF000FFFC003F000000FF000FFFC003FFF000C7FC0031000000 - FF000FFFC003FFF00093FC0024000000FF000FFFC003FFF00093FC0024000000 - FF000FFFC003FFF00087FC0021000000FF000FFFC003FFF0009FFC0027000000 - FF001FFFC007FFF001C7FC0071000000FFFFFFFFFFFFFFFFFFFFFFFFFF000000 - FFF87FFFFE1FFFFFFFFFFFFFFF000000FFE01FFFF807FFF800FFFE003F000000 - FFC00FFFF003FFF000FFFC003F000000FF8007FFE001FFF000FFFC003F000000 - FF8007FFE001FFF000FFFC003F000000FF0003FFC000FFF000FFFC003F000000 - FF0003FFC000FFF000FFFC003F000000FF0003FFC000FFF000FFFC003F000000 - FF0003FFC000FFF000FFFC003F000000FF8007FFE001FFF000FFFC003F000000 - FF8007FFE001FFF000FFFC003F000000FFC00FFFF003FFF000FFFC003F000000 - FFE01FFFF807FFF000FFFC003F000000FFF87FFFFE1FFFF001FFFC007F000000 - FFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000000000 - 000000000000} - end -end diff --git a/outils/CE explorer/unit1.h b/outils/CE explorer/unit1.h deleted file mode 100644 index bf02fa7..0000000 --- a/outils/CE explorer/unit1.h +++ /dev/null @@ -1,37 +0,0 @@ -//--------------------------------------------------------------------------- - -#ifndef Unit1H -#define Unit1H -//--------------------------------------------------------------------------- -#include -#include -#include -#include -#include -#include -#include -#include -//--------------------------------------------------------------------------- -class TForm1 : public TForm -{ -__published: // IDE-managed Components - TMainMenu *MainMenu1; - TMenuItem *Fichier1; - TMenuItem *Ouvrir1; - TOpenDialog *OpenDialog; - TTreeView *TreeView; - TImageList *ImageList; - TMenuItem *N1; - TMenuItem *Quitter1; - TRichEdit *RichEdit1; - void __fastcall Ouvrir1Click(TObject *Sender); - void __fastcall Quitter1Click(TObject *Sender); -private: // User declarations -public: // User declarations - __fastcall TForm1(TComponent* Owner); -}; -//--------------------------------------------------------------------------- -extern PACKAGE TForm1 *Form1; -//--------------------------------------------------------------------------- -#endif - \ No newline at end of file diff --git a/outils/compression/rip.asm b/outils/compression/rip.asm deleted file mode 100644 index acefad7..0000000 --- a/outils/compression/rip.asm +++ /dev/null @@ -1,108 +0,0 @@ -net segment - -org 0100h -assume cs:net,ds:net - -start: -jmp deb -taille dw 0 -signe db 'rip' -signe2 db 64 dup (0) -p1 db '@' -p2 db '@' -min db 4 -deb: -mov BL,DS:[0080h] -xor BH,BH -or BX,BX -mov byte ptr [0081h+BX],00h -mov AX,3D02h -mov DX,0082H -int 21h -mov bx,ax -mov ah,3fh -mov cx,0ffffh -mov dx,offset data -int 21h -mov taille,ax -mov ah,3eh -int 21h -mov si,82h -mov di,offset signe2 -mov cx,64 -rep movsb -mov di,offset signe2 -mov cx,64 -mov al,2eh -repne scasb -push di -mov si,di -mov di,offset data -add di,taille -mov cx,3 -rep movsb -mov ax,di -pop di -mov cx,3 -mov si,offset signe -rep movsb -mov di,ax -mov cx,taille -mov si,offset data -mov dx,1 -boucle: -lodsb -cmp al,[si] -jne pas -inc dl -loop boucle -jmp fin -pas: -cmp dl,min -jb suite -cmp dl,1 -jne go -suite: -mov bx,cx -mov cx,dx -rep stosb -mov cx,bx -mov dl,1 -loop boucle -jmp fin -go: -mov ah,al -mov al,p1 -stosb -mov al,dl -stosb -mov al,ah -stosb -mov al,p2 -stosb -mov dl,1 -loop boucle -fin: -mov ah,3ch -mov cx,0 -mov dx,offset signe2 -int 21h -mov bx,ax -mov ah,40h -mov cx,di -sub cx,offset data -sub cx,taille -mov dx,offset data -add dx,taille -int 21h -mov ah,3eh -int 21h -mov ah,41h -mov dx,82h -int 21h -ret -data db 0 -net ends -end start - -net \ No newline at end of file diff --git a/outils/compression/unrip.asm b/outils/compression/unrip.asm deleted file mode 100644 index 02d1f64..0000000 --- a/outils/compression/unrip.asm +++ /dev/null @@ -1,88 +0,0 @@ -net segment - -org 0100h -assume cs:net,ds:net - -start: -jmp deb -taille dw 0 -signe2 db 64 dup (0) -p1 db '@' -p2 db '@' -deb: -mov BL,DS:[0080h] -xor BH,BH -or BX,BX -mov byte ptr [0081h+BX],00h -mov AX,3D02h -mov DX,0082H -int 21h -mov bx,ax -mov ah,3fh -mov cx,0ffffh -mov dx,offset data -int 21h -mov taille,ax -mov ah,3eh -int 21h -mov si,82h -mov di,offset signe2 -mov cx,64 -rep movsb -mov di,offset signe2 -mov cx,64 -mov al,2eh -repne scasb -mov si,offset data -mov cx,3 -rep movsb -mov cx,taille -mov di,offset data -add di,taille -mov dx,1 -boucle: -lodsb -cmp al,p1 -je pas -suite: -stosb -loop boucle -jmp fin -pas: -mov al,p2 -cmp [si+2],al -jne suite -lodsb -mov bx,cx -mov cl,al -xor ch,ch -lodsb -rep stosb -mov cx,bx -sub cx,3 -inc si -loop boucle -fin: -mov ah,3ch -mov cx,0 -mov dx,offset signe2 -int 21h -mov bx,ax -mov ah,40h -mov cx,di -sub cx,offset data -sub cx,taille -mov dx,offset data -add dx,taille -int 21h -mov ah,3eh -int 21h -mov ah,41h -mov dx,82h -int 21h -ret -data db 0 -net ends -end start - -net \ No newline at end of file diff --git a/commande/commande.asm b/programs/commande.asm similarity index 100% rename from commande/commande.asm rename to programs/commande.asm diff --git a/programs/MAKEFILE b/programs/makefile similarity index 100% rename from programs/MAKEFILE rename to programs/makefile