Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

За какво става PIC24FJ64GA00X ?
http://mcu-bg.com/mcu_site/viewtopic.php?f=22&t=15124
Страница 1 от 1

Автор:  kombainer [ Вто Мар 07, 2017 9:11 pm ]
Заглавие:  За какво става PIC24FJ64GA00X ?

Ето някои отговори на заглавието на темата:
1. - за забавление: https://www.youtube.com/watch?v=VO1zJaLHck8
2. - за още забавление :) https://www.youtube.com/watch?v=oqYIBmBJgUc
3. - за нещо полезно, например VDI-калкулатор за металдетектор: https://www.youtube.com/watch?v=RM_3OMl8NG4

Автор:  kombainer [ Сря Мар 08, 2017 12:20 pm ]
Заглавие:  Re: За какво става PIC24FJ64GA00X ?

Ето кода на постановката с двата дисплея...
Код:
'****************************************************************
'*  Name    : PIC24F_plus2LCD.BAS                               *
'*  Author  : Myself                                            *
'*  Notice  : Copyright (c) 2014 Free                           *
'*          : All Rights Reserved                               *
'*  Date    : 09.05.2015 г.                                     *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
Device = 24FJ64GA004

Config CONFIG2  IOL1WAY_OFF, COE_OFF, IESO_OFF, FNOSC_PRI,_
                FCKSM_CSECME, OSCIOFNC_OFF, POSCMOD_HS
Config CONFIG1  JTAGEN_OFF, GCP_OFF, BKBUG_OFF, COE_OFF, ICS_PGx1,_
                FWDTEN_OFF, WINDIS_OFF, FWPSA_PR128, WDTPOST_PS256

Declare Xtal = 20
Declare LCD_Type Alpha
Declare LCD_DTPin PORTB.12
Declare LCD_ENPin PORTC.5
Declare LCD_RSPin PORTC.6
Declare LCD_Interface 4
Declare LCD_Lines 4
Declare LCD_CommandUs 2000
Declare LCD_DataUs 50
Declare Adin_Tad = cFRC      ' RC oscillator chosen
Declare Adin_Stime = 10      ' Allow 10us sample time
'Declare All_Digital = True

'NOKIA 3310 LCD MODULE PINOUT
'1 vcc
'2 sclk
'3 sda
'4 d/!c
'5 !cs
'6 gnd
'7 Vout
'8 !rst
Symbol LCD_DC = LATB.7
Symbol LCD_CS = LATB.8
Symbol LCD_SDA = LATB.6
Symbol LCD_RST = LATB.9
Symbol LCD_CLK = LATB.5
Symbol LCD_Mode_Invert = %00001101
Symbol LCD_Mode_Normal = %00001100

'EA DOGL128-6 LCD MODULE PINOUT
'36 SI
'37 SCL
'38 A0
'39 RESET
'40 CS
'26,33 VSS
'34,35 VDD
Symbol LCD_SI = LATC.5
Symbol LCD_SCL = LATC.4
Symbol LCD2_CS = LATC.3
Symbol RES_LCD2 = LATA.9
Symbol LCD_A0 = LATA.4

Dim   true        As 1
Dim   false       As 0
Dim   normal      As 1
Dim   invert      As 0
Dim   black       As 1
Dim   white       As 2
Dim   myword1     As SWord
Dim   myword2     As SWord
Dim   jb          As Byte
Dim   jw1         As Word
Dim   jw2         As Word
Dim   LCD_Row     As Byte
Dim   Page        As Byte
Dim   LCD_Col     As Byte
Dim   AD_done     As Bit
Dim   LED         As Bit = 1

Dim i As Word
Dim j As Word
Dim k As Byte
Dim mycount As Byte
Dim PosX As Byte
Dim PosY As Byte
Dim TempVar1 As Word
Dim FontCache[6] As Byte
Dim LCDStr[21] As Byte
Dim LCD_Data As Byte
Dim LCD_Offset_1 As Byte
Dim LCD_Offset_2 As Byte
Dim Char_Mode As Byte
Dim Pixel_X As Byte
Dim Pixel_Y As Byte
Dim Addr_ofImage As Word
Dim Offset As Word
Dim Data As Byte
Dim Pixel_Value As Bit
Dim Colour As Byte
Dim Mode As Bit
Dim LCD_Buffer[816] As Byte
Dim Display_Buffer[1024] As Byte
Dim test_byte As Byte
Dim test_word As Word
Dim test_bit As Bit
Dim random_word As Word
Dim inc_x As Bit
Dim inc_y As Bit
Dim corner1_x As Byte
Dim corner1_y As Byte
Dim corner2_x As Byte
Dim corner2_y As Byte
Dim dir_1x As Bit
Dim dir_1y As Bit
Dim dir_2x As Bit
Dim dir_2y As Bit
Dim corner1_x1 As Byte
Dim corner1_y1 As Byte
Dim corner2_x1 As Byte
Dim corner2_y1 As Byte
Dim dir_1x1 As Bit
Dim dir_1y1 As Bit
Dim dir_2x1 As Bit
Dim dir_2y1 As Bit
Dim Bar_place As Byte
Dim Bar_long As Byte

GoTo main

Isr T1Interrupt
  If LED = 1 Then
    Dec test_word
  EndIf
  Toggle PORTB.2
  LCD_Draw_Bar(mycount & %00001111, mycount & %00011111)
  Display_Bar((mycount+3) & %00001111,(mycount+7) & %00011111)
'  LED = ~LED
  AD1CON1.2 = 1              ' enable A/D Sample Auto-Start
  IFS0.3 = 0                 ' clear Timer1 int. flag
EndIsr

'**********************************************************

Proc LCD_Pixel_Plot(X_ As Byte, Y_ As Byte)
  Dim LCD_Bank As Byte
  Dim LCD_RAM_Data As Byte
  Dim Offset As Word
  LCD_Bank = Y_ >> 3
  LCD_RAM_Data = 1  << (Y_ & %00000111)
  Offset = LCD_Bank * 102 + X_
  LCD_Buffer[Offset] = LCD_Buffer[Offset] | LCD_RAM_Data
EndProc

Proc LCD_Pixel_Clear(X_ As Byte, Y_ As Byte)
  Dim LCD_Bank As Byte
  Dim LCD_RAM_Data As Byte
  Dim Offset As Word
  LCD_Bank = Y_ >> 3
  LCD_RAM_Data = 1  << (Y_ & %00000111)
  LCD_RAM_Data = ~ LCD_RAM_Data
  Offset = LCD_Bank * 102 + X_
  LCD_Buffer[Offset] = LCD_Buffer[Offset] & LCD_RAM_Data
EndProc

Proc LCD_Pixel_Invert(X_ As Byte, Y_ As Byte)
  Dim LCD_Bank As Byte
  Dim LCD_RAM_Data As Byte
  Dim Offset As Word
  LCD_Bank = Y_ >> 3
  LCD_RAM_Data = 1  << (Y_ & %00000111)
  Offset = LCD_Bank * 102 + X_
  LCD_Buffer[Offset] = LCD_Buffer[Offset] ^ LCD_RAM_Data
EndProc

Proc LCD_Buffer_Clear()
  Dim Offset As Word
  For Offset = 0 To 815
    LCD_Buffer[Offset] = 0
  Next
EndProc

Proc LCD_Refresh()
  Dim Offset As Word
  Dim Data As Byte
  Dim jk As Byte
  LCD_Command($40)   ' Y = 0
  LCD_Command($80)   ' X = 0
  LCD_CLK = 0
  LCD_CS = 0
  LCD_DC = 1
  For Offset = 0 To 815
    Data = LCD_Buffer[Offset]
    For jk = 0 To 7
      LCD_SDA = Data.0
      LCD_CLK = 1
      Ror Data
      LCD_CLK = 0
    Next
  Next
  LCD_CS = 1
EndProc

Proc LCD_Command(Command As Byte)
  LCD_DC = 0
  LCD_CS = 0
  SHOut LCD_SDA,LCD_CLK,MsbFirst,[Command]
  LCD_CS = 1
EndProc

Proc LCD_Init()' Siemens A70  102x64 pix.
  LCD_RES()
  LCD_Command($21)      'LCD EXTENDED COMMANDS
  LCD_Command($C5)      'SET LCD Vop (CONTRAST)
  LCD_Command($14)      'LCD BIAS MODE
  LCD_Command($0B)
  LCD_Command($05)      'SET TEMP COEFFICENT
  LCD_Command($20)      'LCD STANDARD COMMANDS
  LCD_Command($11)
  LCD_Command($0C)      'LCD IN NORMAL MODE
EndProc

'************************************************************

Proc Display_Init()' EA DOGL128-6  128x64 pix.
  RES_LCD2 = 0
  DelayMS 2
  RES_LCD2 = 1
  LCD2_CS = 0
  LCD_A0 = 0
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$40]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$A1]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$C0,$A6]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$A2]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$2F]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$F8,$00]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$27,$81,$10]  'Contrast
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$AC,$00]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$AF]
  SHOut LCD_SI,LCD_SCL,MsbFirst,[$E0]    'col address inc +1
  LCD2_CS = 1
EndProc

Proc Display_Clear()
  Dim Offset As Word
  LCD2_CS = 0
  For Offset = 0 To 1024
    Display_Buffer[Offset] = 0
  Next
  LCD2_CS = 1
EndProc

Proc Display_Refresh()
  Dim Page As Byte
  Dim Column As Byte
  Dim Data As Byte
  Dim Offset As Word = 0
  Dim jk As Byte
  LCD2_CS = 0
  For Page = 0 To 7
    Data = %10110000 | Page  ' Page number set
    LCD_A0 = 0
    SHOut LCD_SI,LCD_SCL,MsbFirst,[Data,$10,$00] 'GOTO Page start
    LCD_A0 = 1
    For Column = 0 To 127
      Data = Display_Buffer[Offset]
      For jk = 0 To 7
        LCD_SI = Data.7
        LCD_SCL = 1
        Rol Data
        LCD_SCL = 0
      Next
'      SHOut LCD_SI,LCD_SCL,MsbFirst,[Data]
      Inc Offset
    Next
  Next
  LCD2_CS = 1
EndProc

Proc Display_Pixel(X_ As Byte, Y_ As Byte, Colour As Byte)
  Dim Page As Byte
  Dim LCD_RAM_Data As Byte
  Dim Offset As Word
  Page = Y_ >> 3
  Data = 1  << (Y_ & %00000111)
  Offset = Page * 128 + X_
  Select Case Colour
    Case 0              'clear pixel
      Data = ~ Data
      Display_Buffer[Offset] = Display_Buffer[Offset] & Data
    Case 1              'set pixel
      Display_Buffer[Offset] = Display_Buffer[Offset] | Data
    Case 2              'invert pixsl
      Display_Buffer[Offset] = Display_Buffer[Offset] ^ Data
  EndSelect
EndProc

Proc Display_Rectangle(X_1 As Byte, Y_1 As Byte, X_2 As Byte, Y_2 As Byte, Colour As Byte)
  Dim X_Offset As Byte
  Dim Y_Offset As Byte
  If X_2 < X_1 Then
    Swap X_1, X_2
  EndIf
  If Y_2 < Y_1 Then
    Swap Y_1, Y_2
  EndIf
  For X_Offset = X_1 To X_2
    For Y_Offset = Y_1 To Y_2
      Display_Pixel(X_Offset, Y_Offset, Colour)
    Next
  Next
EndProc

Proc Display_Number(Number As Byte, LCD_Page As Byte, LCD_Column As Byte, Colour As Bit)
  Dim Number_Address As Word
  Dim Buffer_Address As Word
  Dim X_Offset As Byte
  Dim Y_Offset As Byte
  Number_Address = AddressOf(Large_Numbers) + Number * 96
  For Y_Offset = 0 To 3
    Buffer_Address = (LCD_Page + Y_Offset) * 128 + LCD_Column
    For X_Offset = 0 To 23
      Data = cPtr8(Number_Address++)
      If Mode=0 Then Data = ~Data
      Display_Buffer[Buffer_Address] = Data
      Inc Buffer_Address
    Next
  Next 
EndProc

Proc Display_Bar(place As Byte, long As Byte)   ' place range 0...15
  Dim X_start As Byte                           ' long range 0...31
  Dim X_offset As Byte
  Dim Y_offset As Byte
  X_start = place * 8
  For Y_offset = 32 To 63
    For X_offset = X_start To X_start + 7
      Display_Pixel(X_Offset, Y_Offset,0)
      If Y_offset >= (64-long) Then
        Display_Pixel(X_Offset, Y_Offset,1)
      EndIf
    Next
  Next
EndProc

'************************************************************

Proc LCD_RES()
  LCD_DC = 0
  LCD_CS = 0
  LCD_RST = 0
  DelayMS 10
  LCD_RST = 1
  LCD_CS = 1
EndProc

Proc LCD_PlotImage(Addr_ofImage As Word, Mode As Bit)
  Dim Data As Byte
  Dim Offset As Word = 0
  While Offset < 816
    Data = cPtr8(Addr_ofImage++)
    If Mode=0 Then Data = ~Data
    LCD_Buffer[Offset] = Data
    Inc Offset
  Wend
EndProc

Proc LCD_PlotDigit(Digit As Byte, LCD_Row As Byte, LCD_Col As Byte, Mode As Bit)
  Dim Digit_Address As Word
  Dim Buffer_Address As Word
  Dim X_Offset As Byte
  Dim Y_Offset As Byte
  Digit_Address = AddressOf(Large_Digits) + Digit * 96
  For Y_Offset = 0 To 3
    Buffer_Address = (LCD_Row + Y_Offset) * 102 + LCD_Col
    For X_Offset = 0 To 23
      Data = cPtr8(Digit_Address++)
      If Mode=0 Then Data = ~Data
      LCD_Buffer[Buffer_Address] = Data
      Inc Buffer_Address
    Next
  Next 
EndProc

Proc LCD_Rectangle(X_start As Byte, Y_start As Byte, X_end As Byte, Y_end As Byte, Colour As Byte)
  Dim X_Offset As Byte
  Dim Y_Offset As Byte
  If X_end < X_start Then
    Swap X_start, X_end
  EndIf
  If Y_end < Y_start Then
    Swap Y_start, Y_end
  EndIf
  If Colour = 0 Then
    For X_Offset = X_start To X_end
      For Y_Offset = Y_start To Y_end
        LCD_Pixel_Invert(X_Offset, Y_Offset)
      Next
    Next
  ElseIf Colour = 1 Then
    For X_Offset = X_start To X_end
      For Y_Offset = Y_start To Y_end
        LCD_Pixel_Plot(X_Offset, Y_Offset)
      Next
    Next
  ElseIf Colour = 2 Then
    For X_Offset = X_start To X_end
      For Y_Offset = Y_start To Y_end
        LCD_Pixel_Clear(X_Offset, Y_Offset)
      Next
    Next
  EndIf
EndProc

Proc LCD_Draw_Bar(place As Byte, long As Byte)  ' place range 0...16
  Dim X_start As Byte                           ' long range 0...31
  Dim X_offset As Byte
  Dim Y_offset As Byte
  X_start = place * 6
  For Y_offset = 0 To 31
    For X_offset = X_start To X_start + 5
      LCD_Pixel_Clear(X_Offset, Y_Offset)
      If Y_offset <= long Then
        LCD_Pixel_Plot(X_Offset, Y_Offset)
      EndIf
    Next
  Next
EndProc

'**********************************************************

main:

AD1PCFG = %0111111111111111  ' All_Digital
LATA = 0
TRISA = %1111110111101110
LATB =  %0000000000000100
TRISB = %1111110000011000
LATC = 0
TRISC = %1111111111000111
T1CON = %0000000000110000    ' postscaler 1:256
'T1CON = %0000000000100000    ' postscaler 1:64
PR1 = 19531                  ' ~500 ms period at 20 MHz
'PR1 = 31250                  ' ~500 ms period at 8 MHz
TMR1 = 0                     ' clear Timer1
IEC0.3 = 1                   ' enable Timer1 interrupt
IPC0 = %0111010001000100     ' set Timer1 higest int. priority level (7)
T1CON.15 = 1                 ' start Timer1

'**********************************************************

test_byte = 0
test_word = 3333
Mode = normal
test_bit = 0
corner1_x = 9
corner1_y = 2
corner2_x = 41
corner2_y = 22
dir_1x = 1
dir_2x = 1
dir_1y = 1
dir_2y = 1
corner1_x1 = 0
corner1_y1 = 0
corner2_x1 = 32
corner2_y1 = 20
dir_1x = 1
dir_2x = 1
dir_1y = 1
dir_2y = 1
mycount = 0

Display_Init()
LCD2_CS = 1
Display_Clear()
Display_Refresh()

LCD_CS = 1
LCD_Init()
LCD_Buffer_Clear()
LCD_Refresh()       ' Refresh the Buffer twise!!!
LCD_Refresh()
LCD_Buffer_Clear()
LCD_Refresh()

While
 
  LCD_PlotDigit(Dig test_word, 3, 4, 4, Mode)
  LCD_PlotDigit(Dig test_word, 2, 4, 28, Mode)
  LCD_PlotDigit(Dig test_word, 1, 4, 52, Mode)
  LCD_PlotDigit(Dig test_word, 0, 4, 76, Mode)

  Display_Number(Dig test_word, 3, 0, 16, Mode)
  Display_Number(Dig test_word, 2, 0, 40, Mode)
  Display_Number(Dig test_word, 1, 0, 64, Mode)
  Display_Number(Dig test_word, 0, 0, 88, Mode)
 
  LCD_Rectangle(corner1_x,corner1_y,corner2_x,corner2_y,invert)
  Display_Rectangle(corner1_x1,corner1_y1,corner2_x1,corner2_y1,2)
 
  LCD_Refresh()
'  lata.0 = 1
  Display_Refresh()
'  LATA.0 = 0
  DelayMS 20
  Inc mycount
 
  LCD_Rectangle(corner1_x,corner1_y,corner2_x,corner2_y,white)
  Display_Rectangle(corner1_x1,corner1_y1,corner2_x1,corner2_y1,0)
 
  ' "Flying" rectangle on small display
  ' Corner 1
  If dir_1x = 1 Then
    If corner1_x < 101 Then
      Inc corner1_x
    Else
      dir_1x = 0 : dir_2x = 0
    EndIf
  Else
    If corner1_x > 0 Then
      Dec corner1_x
    Else
      dir_1x = 1 : dir_2x = 1
    EndIf
  EndIf
  If dir_1y = 1 Then
    If corner1_y < 63 Then
      Inc corner1_y
    Else
      dir_1y = 0 : dir_2y = 0
    EndIf
  Else
    If corner1_y > 0 Then
      Dec corner1_y
    Else
      dir_1y = 1 : dir_2y = 1
    EndIf
  EndIf
  ' Corner 2
  If dir_2x = 1 Then
    If corner2_x < 101 Then
      Inc corner2_x
    Else
      dir_2x = 0 : dir_1x = 0
    EndIf
  Else
    If corner2_x > 0 Then
      Dec corner2_x
    Else
      dir_2x = 1 : dir_1x = 1
    EndIf
  EndIf
  If dir_2y = 1 Then
    If corner2_y < 63 Then
      Inc corner2_y
    Else
      dir_2y = 0 : dir_1y = 0
    EndIf
  Else
    If corner2_y > 0 Then
      Dec corner2_y
    Else
      dir_2y = 1 : dir_1y = 1
    EndIf
  EndIf

  ' "Flying" rectangle on large display
  ' Corner 1
  If dir_1x1 = 1 Then
    If corner1_x1 < 127 Then
      Inc corner1_x1
    Else
      dir_1x1 = 0 : dir_2x1 = 0
    EndIf
  Else
    If corner1_x1 > 0 Then
      Dec corner1_x1
    Else
      dir_1x1 = 1 : dir_2x1 = 1
    EndIf
  EndIf
  If dir_1y1 = 1 Then
    If corner1_y1 < 63 Then
      Inc corner1_y1
    Else
      dir_1y1 = 0 : dir_2y1 = 0
    EndIf
  Else
    If corner1_y1 > 0 Then
      Dec corner1_y1
    Else
      dir_1y1 = 1 : dir_2y1 = 1
    EndIf
  EndIf
  ' Corner 2
  If dir_2x1 = 1 Then
    If corner2_x1 < 127 Then
      Inc corner2_x1
    Else
      dir_2x1 = 0 : dir_1x1 = 0
    EndIf
  Else
    If corner2_x1 > 0 Then
      Dec corner2_x1
    Else
      dir_2x1 = 1 : dir_1x1 = 1
    EndIf
  EndIf
  If dir_2y1 = 1 Then
    If corner2_y1 < 63 Then
      Inc corner2_y1
    Else
      dir_2y1 = 0 : dir_1y1 = 0
    EndIf
  Else
    If corner2_y1 > 0 Then
      Dec corner2_y1
    Else
      dir_2y1 = 1 : dir_1y1 = 1
    EndIf
  EndIf

Wend
Stop



'***************************************************************

'Siemens_A70_logo
Dim logo As Code = As Byte $00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$60,$60,$E0,$E0,$60,$60,$00,$00,$00,$60,$60,$E0,$E0,_
$E0,$60,$60,$00,$00,$00,$00,$00,$E0,$E0,$80,$00,$00,$00,$00,$00,_
$00,$00,$00,$80,$C0,$E0,$60,$60,$E0,$C0,$80,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$0F,$3E,$F6,_
$C6,$86,$E6,$FE,$3F,$07,$01,$00,$00,$00,$00,$00,$00,$00,$00,$07,_
$3F,$FC,$E0,$00,$00,$00,$00,$00,$FE,$FF,$83,$00,$00,$00,$00,$83,_
$FF,$FE,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$06,$06,$06,$07,$07,$07,$01,$00,$00,$00,$00,$00,$00,_
$0E,$0E,$0C,$0C,$0C,$0C,$0C,$0D,$0F,$0F,$00,$00,$00,$00,$00,$03,_
$07,$0E,$0C,$0C,$0E,$07,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$0F,$8F,$C6,$C3,$C3,$C3,$C3,$E7,$7E,$3C,$00,$00,$00,$00,_
$03,$03,$03,$03,$FF,$FF,$03,$03,$03,$03,$00,$00,$00,$F8,$FC,$BE,_
$37,$33,$33,$33,$33,$33,$B7,$F6,$F4,$00,$03,$FF,$FF,$03,$00,$00,_
$FF,$FF,$03,$00,$00,$FF,$FF,$03,$00,$F8,$FC,$BE,$37,$33,$33,$33,_
$33,$33,$B7,$F6,$F4,$00,$00,$03,$FF,$FF,$03,$00,$00,$00,$00,$03,_
$FF,$FF,$03,$00,$00,$00,$CF,$EF,$66,$33,$33,$33,$33,$37,$BE,$9C,_
$00,$00,$00,$00,$00,$00,$00,$00,$0F,$1F,$39,$30,$30,$30,$30,$18,_
$3C,$3C,$00,$00,$00,$00,$00,$00,$06,$06,$67,$67,$00,$00,$00,$00,_
$00,$00,$00,$00,$01,$03,$07,$06,$06,$06,$06,$07,$03,$01,$00,$00,_
$06,$07,$07,$03,$07,$07,$07,$03,$07,$07,$07,$03,$01,$00,$00,$00,_
$01,$03,$07,$06,$06,$06,$06,$07,$03,$01,$00,$00,$00,$06,$07,$07,_
$03,$06,$06,$06,$06,$07,$03,$01,$00,$00,$00,$00,$01,$03,$07,$06,_
$06,$06,$06,$03,$07,$07,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00

'Large digits, Maritsa_36(24x32), normal position
Dim Large_Numbers As Code = As Byte $00,_
'0
$C0,$F0,$FC,$FE,$7E,$1F,$0F,$0F,$0F,$0F,$0F,$1F,$3E,$FE,$FC,_
$F8,$E0,$80,$00,$00,$00,$00,$00,$FE,$FF,$FF,$FF,$03,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$07,$FF,$FF,$FF,$FC,$00,$00,$00,$00,_
$1F,$FF,$FF,$FF,$F0,$80,$00,$00,$00,$00,$00,$00,$00,$00,$C0,$F8,_
$FF,$FF,$7F,$0F,$00,$00,$00,$00,$00,$00,$03,$0F,$1F,$1F,$3E,$3C,_
$3C,$3C,$3C,$3C,$3E,$1F,$1F,$0F,$07,$01,$00,$00,$00,$00,$00,$00,_
'1
$00,$00,$00,$78,$78,$3C,$3C,$1E,$1E,$FF,$FF,$FF,$FF,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3C,$3C,$3C,$3C,$3C,$3C,_
$3C,$3F,$3F,$3F,$3F,$3C,$3C,$3C,$3C,$3C,$3C,$3C,$00,$00,$00,$00,_
'2
$00,$E0,$F0,$F8,$FC,$7E,$3E,$1F,$0F,$0F,$0F,$0F,$0F,$1F,$3E,$7E,_
$FC,$F8,$F0,$C0,$00,$00,$00,$00,$00,$01,$01,$01,$01,$00,$00,$00,_
$00,$00,$00,$00,$80,$C0,$E0,$F0,$FF,$FF,$7F,$1F,$00,$00,$00,$00,_
$00,$00,$00,$80,$C0,$E0,$F0,$F8,$F8,$7C,$7E,$3F,$1F,$0F,$07,$03,_
$81,$80,$80,$80,$00,$00,$00,$00,$3C,$3E,$3F,$3F,$3F,$3F,$3F,$3D,_
$3C,$3C,$3C,$3C,$3C,$3C,$3C,$3C,$3F,$3F,$3F,$3F,$00,$00,$00,$00,_
'3
$00,$60,$78,$7C,$7E,$3E,$1F,$0F,$0F,$0F,$0F,$0F,$0F,$1F,$3E,$FE,_
$FC,$F8,$E0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$F0,_
$F0,$F0,$F0,$F0,$F8,$FC,$FE,$FF,$DF,$8F,$03,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$03,$87,_
$FF,$FF,$FF,$FC,$00,$00,$00,$00,$07,$0F,$1F,$1F,$3E,$3E,$3C,$3C,_
$3C,$3C,$3C,$3C,$3E,$3E,$1F,$1F,$0F,$0F,$07,$01,$00,$00,$00,$00,_
'4
$00,$00,$00,$00,$00,$00,$00,$00,$80,$E0,$F0,$FC,$FE,$FF,$FF,$FF,_
$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$C0,$E0,$F8,$FC,$7F,_
$3F,$0F,$07,$01,$00,$FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,_
$7C,$7E,$7F,$7F,$7F,$7B,$79,$78,$78,$78,$78,$78,$78,$FF,$FF,$FF,_
$FF,$78,$78,$78,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$3C,$3C,$3C,$3C,$3F,$3F,$3F,$3F,$3C,$3C,$3C,$00,$00,$00,$00,_
'5
$00,$FF,$FF,$FF,$FF,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,_
$0F,$0F,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$7F,$3C,$3E,$1E,_
$1E,$1E,$1E,$1E,$3E,$3E,$7C,$FC,$F8,$F0,$E0,$80,$00,$00,$00,$00,_
$80,$81,$81,$80,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$C1,_
$FF,$FF,$FF,$FF,$00,$00,$00,$00,$01,$03,$07,$0F,$1F,$1F,$3E,$3C,_
$3C,$3C,$3C,$3C,$3E,$1E,$1F,$0F,$07,$07,$03,$00,$00,$00,$00,$00,_
'6
$00,$00,$80,$C0,$E0,$F0,$F8,$FC,$7C,$3E,$1E,$1F,$0F,$0F,$0F,$0F,_
$0F,$0F,$0F,$00,$00,$00,$00,$00,$F8,$FE,$FF,$FF,$FF,$E7,$E1,$F0,_
$F0,$F0,$F0,$F0,$F0,$F0,$E0,$E0,$C0,$80,$00,$00,$00,$00,$00,$00,_
$FF,$FF,$FF,$FF,$C7,$03,$01,$01,$00,$00,$00,$00,$00,$01,$03,$87,_
$FF,$FF,$FF,$FC,$00,$00,$00,$00,$00,$03,$07,$0F,$1F,$1F,$3E,$3C,_
$3C,$3C,$3C,$3C,$3C,$3E,$1F,$1F,$0F,$07,$03,$00,$00,$00,$00,$00,_
'7
$00,$FF,$FF,$FF,$FF,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,_
$CF,$FF,$FF,$FF,$3F,$0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$E0,$F8,$FF,$FF,$3F,$07,$01,$00,$00,$00,$00,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$E0,$FC,$FF,$FF,$1F,$07,_
$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
$0E,$0F,$0F,$0F,$03,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
'8
$00,$C0,$F0,$F8,$FC,$7E,$3E,$1F,$0F,$0F,$0F,$0F,$0F,$1F,$3E,$FE,_
$FC,$F8,$E0,$00,$00,$00,$00,$00,$00,$07,$1F,$BF,$FF,$FC,$F8,$F0,_
$E0,$E0,$E0,$E0,$F0,$F8,$FC,$FF,$BF,$1F,$07,$00,$00,$00,$00,$00,_
$F8,$FE,$FF,$FF,$8F,$07,$03,$01,$01,$01,$01,$01,$01,$03,$07,$8F,_
$FF,$FF,$FE,$F8,$00,$00,$00,$00,$00,$03,$07,$0F,$1F,$1F,$3E,$3C,_
$3C,$3C,$3C,$3C,$3C,$3E,$1F,$1F,$0F,$07,$03,$00,$00,$00,$00,$00,_
'9
$C0,$F0,$F8,$FC,$7E,$3E,$1F,$0F,$0F,$0F,$0F,$0F,$0F,$1F,$3E,$FE,_
$FC,$F8,$F0,$C0,$00,$00,$00,$00,$0F,$3F,$7F,$FF,$F8,$F0,$E0,$C0,_
$C0,$C0,$C0,$C0,$E0,$E0,$F0,$F8,$FF,$FF,$FF,$FF,$00,$00,$00,$00,_
$00,$00,$00,$00,$01,$01,$03,$03,$03,$03,$03,$83,$C3,$E1,$F9,$FF,_
$FF,$7F,$1F,$07,$00,$00,$00,$00,$00,$3C,$3C,$3C,$3C,$3C,$3C,$3C,_
$3E,$1E,$1F,$0F,$0F,$07,$03,$01,$00,$00,$00,$00,$00,$00,$00,$00

Large_Digits:   ' Maritsa_36(24x32)
'0
CData $00,$00,$C0,$F0,$F8,$F8,$7C,$3C,$3C,$3C,$3C,$3C,$7C,$F8,$F8,$F0,
CData $E0,$80,$00,$00,$00,$00,$00,$00,$F8,$FF,$FF,$FF,$0F,$01,$00,$00,
CData $00,$00,$00,$00,$00,$00,$03,$1F,$FF,$FF,$FE,$F0,$00,$00,$00,$00,
CData $7F,$FF,$FF,$FF,$C0,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$E0,
CData $FF,$FF,$FF,$3F,$00,$00,$00,$00,$00,$03,$0F,$3F,$7F,$7E,$F8,$F0,
CData $F0,$F0,$F0,$F0,$F8,$7C,$7F,$3F,$1F,$07,$01,$00,$00,$00,$00,$00
'1
CData $00,$3C,$3C,$3C,$3C,$3C,$3C,$3C,$FC,$FC,$FC,$FC,$3C,$3C,$3C,$3C,
CData $3C,$3C,$3C,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
CData $FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$00,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$1E,$1E,$3C,$3C,$78,$78,
CData $FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
'2
CData $3C,$7C,$FC,$FC,$FC,$FC,$FC,$BC,$3C,$3C,$3C,$3C,$3C,$3C,$3C,$3C,
CData $FC,$FC,$FC,$FC,$00,$00,$00,$00,$00,$00,$00,$01,$03,$07,$0F,$1F,
CData $1F,$3E,$7E,$FC,$F8,$F0,$E0,$C0,$81,$01,$01,$01,$00,$00,$00,$00,
CData $00,$80,$80,$80,$80,$00,$00,$00,$00,$00,$00,$00,$01,$03,$07,$0F,
CData $FF,$FF,$FE,$F8,$00,$00,$00,$00,$00,$07,$0F,$1F,$3F,$7E,$7C,$F8,
CData $F0,$F0,$F0,$F0,$F0,$F8,$7C,$7E,$3F,$1F,$0F,$03,$00,$00,$00,$00
'3
CData $E0,$F0,$F8,$F8,$7C,$7C,$3C,$3C,$3C,$3C,$3C,$3C,$7C,$7C,$F8,$F8,
CData $F0,$F0,$E0,$80,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
CData $00,$00,$00,$00,$80,$80,$C0,$E1,$FF,$FF,$FF,$3F,$00,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$0F,$0F,$0F,$0F,$0F,$1F,$3F,$7F,$FF,
CData $FB,$F1,$C0,$00,$00,$00,$00,$00,$00,$06,$1E,$3E,$7E,$7C,$F8,$F0,
CData $F0,$F0,$F0,$F0,$F0,$F8,$7C,$7F,$3F,$1F,$07,$00,$00,$00,$00,$00
'4
CData $00,$00,$00,$00,$00,$00,$00,$3C,$3C,$3C,$3C,$3C,$3C,$FC,$FC,$FC,
CData $FC,$3C,$3C,$3C,$00,$00,$00,$00,$3E,$7E,$FE,$FE,$FE,$DE,$9E,$1E,
CData $1E,$1E,$1E,$1E,$1E,$FF,$FF,$FF,$FF,$1E,$1E,$1E,$00,$00,$00,$00,
CData $00,$00,$00,$03,$07,$1F,$3F,$FE,$FC,$F0,$E0,$80,$00,$FF,$FF,$FF,
CData $FF,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
CData $01,$07,$0F,$3F,$7F,$FF,$FF,$FF,$FF,$00,$00,$00,$00,$00,$00,$00
'5
CData $80,$C0,$E0,$F0,$F8,$78,$7C,$3C,$3C,$3C,$3C,$3C,$7C,$78,$F8,$F0,
CData $E0,$E0,$C0,$00,$00,$00,$00,$00,$01,$81,$81,$01,$00,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$83,$FF,$FF,$FF,$FF,$00,$00,$00,$00,
CData $00,$FF,$FF,$FF,$FE,$3C,$7C,$78,$78,$78,$78,$78,$7C,$7C,$3E,$3F,
CData $1F,$0F,$07,$01,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$F0,$F0,$F0,
CData $F0,$F0,$F0,$F0,$F0,$F0,$F0,$F0,$F0,$F0,$00,$00,$00,$00,$00,$00
'6
CData $00,$C0,$E0,$F0,$F8,$F8,$7C,$3C,$3C,$3C,$3C,$3C,$3C,$7C,$F8,$F8,
CData $F0,$E0,$C0,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$E3,$C0,$80,$80,
CData $00,$00,$00,$00,$00,$80,$C0,$E1,$FF,$FF,$FF,$3F,$00,$00,$00,$00,
CData $1F,$7F,$FF,$FF,$FF,$E7,$87,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$07,$07,
CData $03,$01,$00,$00,$00,$00,$00,$00,$00,$00,$01,$03,$07,$0F,$1F,$3F,
CData $3E,$7C,$78,$F8,$F0,$F0,$F0,$F0,$F0,$F0,$F0,$00,$00,$00,$00,$00
'7
CData $00,$00,$00,$00,$00,$00,$00,$00,$70,$F0,$F0,$F0,$C0,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,
CData $00,$01,$07,$3F,$FF,$FF,$F8,$E0,$00,$00,$00,$00,$00,$00,$00,$00,
CData $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$07,$1F,$FF,
CData $FF,$FC,$E0,$80,$00,$00,$00,$00,$00,$FF,$FF,$FF,$FF,$F0,$F0,$F0,
CData $F0,$F0,$F0,$F0,$F0,$F0,$F0,$F0,$F3,$FF,$FF,$FF,$FC,$F0,$00,$00
'8
CData $00,$C0,$E0,$F0,$F8,$F8,$7C,$3C,$3C,$3C,$3C,$3C,$3C,$7C,$F8,$F8,
CData $F0,$E0,$C0,$00,$00,$00,$00,$00,$1F,$7F,$FF,$FF,$F1,$E0,$C0,$80,
CData $80,$80,$80,$80,$80,$C0,$E0,$F1,$FF,$FF,$7F,$1F,$00,$00,$00,$00,
CData $00,$E0,$F8,$FD,$FF,$3F,$1F,$0F,$07,$07,$07,$07,$0F,$1F,$3F,$FF,
CData $FD,$F8,$E0,$00,$00,$00,$00,$00,$00,$03,$0F,$1F,$3F,$7E,$7C,$F8,
CData $F0,$F0,$F0,$F0,$F0,$F8,$7C,$7F,$3F,$1F,$07,$00,$00,$00,$00,$00
'9
CData $00,$3C,$3C,$3C,$3C,$3C,$3C,$3C,$7C,$78,$F8,$F0,$F0,$E0,$C0,$80,
CData $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$80,$80,$C0,$C0,
CData $C0,$C0,$C0,$C1,$C3,$87,$9F,$FF,$FF,$FE,$F8,$E0,$00,$00,$00,$00,
CData $F0,$FC,$FE,$FF,$1F,$0F,$07,$03,$03,$03,$03,$03,$07,$07,$0F,$1F,
CData $FF,$FF,$FF,$FF,$00,$00,$00,$00,$03,$0F,$1F,$3F,$7E,$7C,$F8,$F0,
CData $F0,$F0,$F0,$F0,$F0,$F8,$7C,$7F,$3F,$1F,$0F,$03,$00,$00,$00,$00

End



Прикачени файлове:
Flying_Rectangles.txt [26.72 KiB]
316 пъти

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/