اطلاعیه

Collapse
No announcement yet.

اصلاح یک سورس برنامه با C

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    اصلاح یک سورس برنامه با C

    سلام
    دوستان من می خواستم این سورس که به زبان C نوشته شده است البته فکر می کنم با Codvision نباشه چون من خودم کمی با کدویژن کار کردم .
    حالا از دوستانی که C کار کردن می خوام که این سورس رو یک نگاه بندازن این یک پازل با lcd گرافیکی است فایل پروتیوس هم ضمیمه شده می خوام قسمتی که می نویسه دانشگاه شمسی پور حذف بشه و سورس دوباره کامپایل بشه و فایل hex دوباره ساخته بشه.
    راستش حذف کردن اون قسمت خودمم می تونم حذف کنم ولی کامپایل نمیشه کرد.
    حالا دوستان هر کس تونست اصلاح کنه همینجا پلود کنه و توضیح بده مشکل چیه؟؟؟

    ممنون
    فایل های پیوست شده

    #2
    پاسخ : اصلاح یک سورس برنامه با C

    بنظرمیاد پروژه winavr باشه
    ادیـت: پروژه AVRStudio هست و کافیه خطوط زیر حذف بشن:

    glcd_drawImage_P(shamsipour_bmp,0,0,128,8);
    while(bottons() == NONE)
    rnd(0,0);

    فایل هگز:

    :100000000C94AA020C94C7020C94C7020C94C70269
    :100010000C94C7020C94C7020C94C7020C94C7023C
    :100020000C94C7020C94C7020C94C7020C94C7022C
    :100030000C94C7020C94C7020C94C7020C94C7021C
    :100040000C94C7020C94C7020C94C7020C94C7020C
    :100050000C94C70200FEFEFEFE7E1EEE1E7EFEFE1D
    :10006000FEFEFE0000FEFEFEFEBEFE1E0EFEFEFEBC
    :10007000FEFEFE0000FEFEFEFEFEFEDEEE1EBEFEEC
    :10008000FEFEFE0000FEFEFEFEFEDE6E9EFEFEFE9C
    :10009000FEFEFE0000FEFEFEFEFEFEFE0E0EFEFE5C
    :1000A000FEFEFE0000FEFEFEFEFE0EEEEEEEFEFE8C
    :1000B000FEFEFE0000FEFEFEFEFE7E9EEEDEFEFE6C
    :1000C000FEFEFE0000FEFEFEFEFEEEEE6E8EEEFE7C
    :1000D000FEFEFE00007F7F7F7F7E7877787E7F7FC9
    :1000E0007F7F7F00007F7F7F7F7F7F70707F7F7F3C
    :1000F0007F7F7F00007F7F7F7F7F777576777F7F31
    :100100007F7F7F00007F7F7F7F7F7B77787D7F7F12
    :100110007F7F7F00007F7F7F7F7D7D7D70707D7F13
    :100120007F7F7F00007F7F7F7F7F7B77787D7F7FF2
    :100130007F7F7F00007F7F7F7F7F7E7877787D7FE6
    :100140007F7F7F00007F7F7F7F7F7F77707F7F7FD4
    :100150007F7F7F0000FEFEFEFEFE9E6E9EFEFEFE88
    :10016000FEFEFE0000FEFEFEFEBE1EEE1E7EFEFE3B
    :10017000FEFEFE0000FEBEFE1E0EFEFE7E1EEE1EFB
    :100180007EFEFE0000FEFEBEFE1E0EFEFEBEFE1E3B
    :100190000EFEFE0000FEBEFE1E0EFEFEFEDEEE1E8B
    :1001A000BEFEFE0000FEFEBEFE1E0EFEFEFEDE6E6B
    :1001B0009EFEFE0000FEBEFE1E0EFEFEFEFEFE0EBB
    :1001C0000EFEFE0000FEBEFE1E0EFEFEFE0EEEEE5B
    :1001D000EEFEFE00007F7F7F7F7D7877787D7F7FDA
    :1001E0007F7F7F00007F7F7F7F7F7B77797E7F7F30
    :1001F0007F7F7F00007F7F7F70707F7F7E78777842
    :100200007E7F7F00007F7F7F7F70707F7F7F7F702A
    :10021000707F7F00007F7F7F70707F7F777576773C
    :100220007F7F7F00007F7F7F7F70707F7F7F7B7706
    :10023000787D7F00007F7F7F70707F7F7D7D7D7008
    :10024000707D7F00007F7F7F70707F7F7F7B7778FE
    :100250007D7F7F0000FEBEFE1E0EFEFE7E9EEEDE59
    :10026000FEFEFE0000FEFEBEFE1E0EFEFEEEEE6E6A
    :100270008EEEFE0000FEBEFE1E0EFEFEFE9E6E9E7A
    :10028000FEFEFE0000FEFEBEFE1E0EFEFEBE1EEECA
    :100290001E7EFE0000FEFEDEEE1EBEFE7E1EEE1E7A
    :1002A0007EFEFE0000FEFEFEFEDEEE1EBEFEBEFE7A
    :1002B0001E0EFE0000FEFEFEDEEE1EBEFEFEDEEEAA
    :1002C0001EBEFE0000FEFEDEEE1EBEFEFEDE6E9ECA
    :1002D000FEFEFE00007F7F7F70707F7F7E787778E4
    :1002E0007D7F7F00007F7F7F7F70707F7F7F777053
    :1002F0007F7F7F00007F7F7F70707F7F7D78777842
    :100300007D7F7F00007F7F7F7F70707F7F7F7B7727
    :10031000797E7F00007F777576777F7F7E7877782C
    :100320007E7F7F00007F7F7F777576777F7F7F7FFF
    :1003300070707F00007F7F777576777F7F77757627
    :10034000777F7F00007F777576777F7F7F7B7778F9
    :100350007D7F7F0000FEFEDEEE1EBEFEFEFEFE0E78
    :100360000EFEFE0000FEFEFEDEEE1EBEFEFE0EEEE9
    :10037000EEEEFE0000FEFEFEDEEE1EBEFE7E9EEEF9
    :10038000DEFEFE0000FEFEDEEE1EBEFEEEEE6E8E19
    :10039000EEFEFE0000FEFEFEDEEE1EBEFEFE9E6EC9
    :1003A0009EFEFE0000FEFEDEEE1EBEFEBE1EEE1E29
    :1003B0007EFEFE0000FEFEDE6E9EFEFE7E1EEE1E39
    :1003C0007EFEFE0000FEFEFEDE6E9EFEFEBEFE1EF9
    :1003D0000EFEFE00007F777576777F7F7D7D7D70D6
    :1003E000707D7F00007F7F777576777F7F7F7B775B
    :1003F000787D7F00007F7F777576777F7F7E787747
    :10040000787D7F00007F777576777F7F7F77707F3D
    :100410007F7F7F00007F7F777576777F7F7D78771E
    :10042000787D7F00007F777576777F7F7F7B777918
    :100430007E7F7F00007F7F7B77787D7F7E787778F7
    :100440007E7F7F00007F7F7F7B77787D7F7F7F70DF
    :10045000707F7F0004AD64655595C843293D08E869
    :10046000B3DD7F5ADFAC00D8E9B7F37AEDE206F0EE
    :100470008CAEAFD39D13CCB42CCB60B52387D024E6
    :100480009F27B25970D76AC34BB977728E1A141668
    :10049000C9B1A422C530DE33821078C7CA6D0D44BD
    :1004A0000A895C01BDF6A05D96932F9A3C9CD9FD0C
    :1004B00086CD5840B8813B7E6E1B7C362A2042CFC9
    :1004C0008F7346EB5B63BEFC48A9752E5E03BBD2FF
    :1004D0008053A234524DD6F825C06FBA1217C4F11A
    :1004E000E594B06B074F69A7FA1E3E904147611132
    :1004F0000B186667EEE68B37A39BD1FE38195FECCD
    :10050000BFD57B4E98E449C10EE17D4568EFDCC65E
    :10051000D4A5FBF5A6A115CEF7F99E62DB28AA3A71
    :100520003997F4A8BC562DDA853F8851E09276358C
    :10053000E3574C4A83841C8D213132C28AB679E755
    :100540000F746C2BEA91711D26F202051FAB500C43
    :100550005499090011241FBECFE5D4E0DEBFCDBF02
    :1005600010E0A0E6B0E0ECEBFBE002C005900D92DD
    :10057000A236B107D9F710E0A2E6B0E001C01D92A3
    :10058000A63AB107E1F70E9428040C94DC050C940C
    :100590000000AC016F3141F4E6E8F0E0119280E038
    :1005A000E63AF807D9F70895862F869586958695B9
    :1005B000282F30E094E0220F331F9A95E1F76770FF
    :1005C000260F311D84E0220F331F8A95E1F7240F97
    :1005D000351F46E850E011C0F901E80FF91FE4911A
    :1005E000ED93019680319105B9F7405F5F4F80E050
    :1005F000463A580731F020583F4FDA0180E090E04A
    :10060000EBCF0895282FE0916200EF5FE093620046
    :10061000861711F480E00895F0E0EC5AFB4FE49166
    :1006200070E0681B71098E2F90E00E948605820F92
    :100630000895C89908C080916100882361F11092E3
    :10064000610080E00895CA9906C080916100813000
    :1006500011F181E01DC0C99906C08091610082300E
    :10066000D1F082E015C0CB9906C080916100833043
    :1006700091F083E00DC0CC9902C084E00895CD993B
    :1006800002C085E00895CE9902C086E0089587E013
    :1006900080936100089587E0089586E890E060E027
    :1006A00070E040E250E00E94C50584E690E060E220
    :1006B00070E040E250E00E94C50580E490E0609167
    :1006C00060000E94CF0508950F93482F682F70E0B7
    :1006D0006770707034E0660F771F3A95E1F74695C2
    :1006E0004695469550E0440F551F86E890E020E17E
    :1006F00002E00E94D0040F910895CF93DF93C0E0F1
    :10070000D0E0FE01EC59FF4F80918400909185006C
    :1007100060810E94C9028C2F0E9464032196C0321E
    :10072000D10579F7DF91CF91089586E890E060E0F8
    :1007300070E040E250E00E94AD0584E690E060E2A7
    :1007400070E040E250E00E94AD0580E490E00E943D
    :10075000BD05809360000E947D030895E0916000D4
    :100760003E2F37709E2F969596959695813039F04D
    :10077000813048F0823079F0833081F408C09923C9
    :1007800039F191500BC0933018F59F5F07C03323A8
    :10079000F9F0315003C03730D9F03F5F892F90E036
    :1007A00043E0880F991F4A95E1F7DC01A30FB11DC3
    :1007B000F0E0EC59FF4FAC59BF4F2C9120832FE153
    :1007C0002C93380F309360000E947D0381E00895E0
    :1007D00080E00895FF920F931F9380E090E0FC016A
    :1007E000EC59FF4F8083019680329105C1F70E943A
    :1007F0007D0320E040E45CE9CA010197F1F72F5F37
    :10080000283CD1F7FF240AE080E064E00E94020364
    :10081000182F882319F4013079F413C0813019F4AA
    :10082000002351F40EC0823019F4033029F409C0BA
    :10083000833039F4023029F0812F0E94AE03F39403
    :10084000012F8FEFF81601F71F910F91FF90089578
    :100850000F931F93CF93DF9388EE93E020E931E06D
    :10086000F9013197F1F70197D9F78FEF8BBB0FE1C2
    :10087000C4E5D0E0009360000E94C004D0938500DE
    :10088000C09384000E94EA030E941903182F843049
    :1008900018F40E94AE0311C0863039F40E9495030B
    :1008A0000E9419038730E1F708C0853031F40E94B7
    :1008B0004D030E9419038730E1F780E060E00E9459
    :1008C00002031430B9F2E0CF9FEF91BB82BBC09816
    :1008D000C19888E08A95F1F7C29A000000000000F4
    :1008E000000000000000000000000000C29888E046
    :1008F0008A95F1F708959FEF91BB90916300982737
    :1009000092BBC09AC19888E08A95F1F7C29A00001C
    :1009100000000000000000000000000000000000D7
    :10092000C29888E08A95F1F7089511BA8FEF82BBDB
    :10093000C19AC09AC29A00000000000000000000A6
    :100940000000000000000000C29880B308950F93DB
    :100950001F93C39AC49A00E0802F886B0E9464049E
    :1009600080E40E94640410E080E00E947B041F5F2A
    :100970001034D1F70F5F083079F71F910F91089568
    :1009800087B38F6187BB8FEF81BBC39AC49A8FE314
    :100990000E94640480EC0E9464040E94A7040895ED
    :1009A0008F929F92BF92CF92DF92EF92FF920F931E
    :1009B0001F93CF93DF934C01B62ED42EE42EFF2449
    :1009C000E00EF11C8FE3C82EC62280E4C82AC62F91
    :1009D000D0E0C20FD11D2DC0C39AC49880EC0E94F4
    :1009E00064048C2D0E9464041D2D1770186B812FD8
    :1009F0000E9464040B2D17C0C39B0FC0003468F025
    :100A0000C49AC39880EC0E946404802F8F73806422
    :100A10000E946404812F0E946404F40181914F01BB
    :100A20000E947B040F5F802F90E08C179D0721F7B9
    :100A3000D3948D2D90E08E159F0571F6DF91CF91A7
    :100A40001F910F91FF90EF90DF90CF90BF909F90FC
    :100A50008F9008959F92AF92BF92CF92DF92EF92C4
    :100A6000FF920F931F93CF93DF936C01962EB42EBA
    :100A7000E42EFF24E00EF11C9FE3A92EA62280E4C1
    :100A8000A82AC62FD0E0C20FD11D2FC0C39AC49888
    :100A900080EC0E9464048A2D0E9464041B2D177050
    :100AA000186B812F0E946404092D19C0C39B0FC0CD
    :100AB000003468F0C49AC39880EC0E946404802FCC
    :100AC0008F7380640E946404812F0E946404F60185
    :100AD00084910E947B040894C11CD11C0F5F802F5D
    :100AE00090E08C179D0711F7B3948B2D90E08E1535
    :100AF0009F0561F6DF91CF911F910F91FF90EF90CD
    :100B0000DF90CF90BF90AF909F90089597FB092EF4
    :100B100007260AD077FD04D00CD006D000201AF4A6
    :100B2000709561957F4F0895F6F7909581959F4F49
    :100B30000895AA1BBB1B51E107C0AA1FBB1FA61724
    :100B4000B70710F0A61BB70B881F991F5A95A9F776
    :100B500080959095BC01CD010895DC01CB01FC018D
    :100B6000E199FECF06C0FFBBEEBBE09A31960DB215
    :100B70000D9241505040B8F70895E199FECF9FBBC8
    :100B80008EBBE09A99278DB30895DC01CB0103C099
    :100B90002D910E94D00541505040D0F70895262F46
    :100BA000E199FECF9FBB8EBB2DBB0FB6F894E29AA6
    :0C0BB000E19A0FBE01960895F894FFCF63
    :020BBC001F0513
    :00000001FF
    {خلاف قوانین - امضا ویرایش شد}

    دیدگاه


      #3
      پاسخ : اصلاح یک سورس برنامه با C

      سورس برای کامپایلر avr-gcc است.
      برای کامپایل آن به دایرکتوری default رفته و با استفاده از دستور make میتوانید پروژه را کامپایل کنید.

      مجوز انتشار این سورس مشخص نیست، من فقط برای آزمایش پروژه را دوباره کامپایل و ضمیمه کردم.


      hamid@hamid-laptop:~/Desktop/Pic_Puzzle/default$ make clean
      rm -rfv Pic_Puzzle.o KS0108.o Pic_Puzzle.elf dep/* Pic_Puzzle.hex Pic_Puzzle.eep Pic_Puzzle.lss Pic_Puzzle.map
      removed `Pic_Puzzle.o'
      removed `KS0108.o'
      removed `Pic_Puzzle.elf'
      removed `Pic_Puzzle.hex'
      removed `Pic_Puzzle.eep'
      removed `Pic_Puzzle.lss'
      removed `Pic_Puzzle.map'
      hamid@hamid-laptop:~/Desktop/Pic_Puzzle/default$ make
      avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT Pic_Puzzle.o -c ../Pic_Puzzle.c
      avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT KS0108.o -c ../KS0108.c
      avr-gcc -mmcu=atmega16 -Wl,-Map=Pic_Puzzle.map Pic_Puzzle.o KS0108.o -o Pic_Puzzle.elf
      avr-objcopy -O ihex -R .eeprom Pic_Puzzle.elf Pic_Puzzle.hex
      avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex Pic_Puzzle.elf Pic_Puzzle.eep || exit 0
      avr-objdump -h -S Pic_Puzzle.elf > Pic_Puzzle.lss

      AVR Memory Usage
      ----------------
      Device: atmega16

      Program: 4964 bytes (30.3% Full)
      (.text + .data + .bootloader)

      Data: 70 bytes (6.8% Full)
      (.data + .bss + .noinit)

      فایل های پیوست شده
      چگونه هوشمندانه بپرسیم

      دیدگاه


        #4
        پاسخ : اصلاح یک سورس برنامه با C

        نوشته اصلی توسط حمید رستمی
        سورس برای کامپایلر avr-gcc است.
        برای کامپایل آن به دایرکتوری default رفته و با استفاده از دستور make میتوانید پروژه را کامپایل کنید.

        مجوز انتشار این سورس مشخص نیست، من فقط برای آزمایش پروژه را دوباره کامپایل و ضمیمه کردم.


        hamid@hamid-laptop:~/Desktop/Pic_Puzzle/default$ make clean
        rm -rfv Pic_Puzzle.o KS0108.o Pic_Puzzle.elf dep/* Pic_Puzzle.hex Pic_Puzzle.eep Pic_Puzzle.lss Pic_Puzzle.map
        removed `Pic_Puzzle.o'
        removed `KS0108.o'
        removed `Pic_Puzzle.elf'
        removed `Pic_Puzzle.hex'
        removed `Pic_Puzzle.eep'
        removed `Pic_Puzzle.lss'
        removed `Pic_Puzzle.map'
        hamid@hamid-laptop:~/Desktop/Pic_Puzzle/default$ make
        avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT Pic_Puzzle.o -c ../Pic_Puzzle.c
        avr-gcc -mmcu=atmega16 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT KS0108.o -c ../KS0108.c
        avr-gcc -mmcu=atmega16 -Wl,-Map=Pic_Puzzle.map Pic_Puzzle.o KS0108.o -o Pic_Puzzle.elf
        avr-objcopy -O ihex -R .eeprom Pic_Puzzle.elf Pic_Puzzle.hex
        avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex Pic_Puzzle.elf Pic_Puzzle.eep || exit 0
        avr-objdump -h -S Pic_Puzzle.elf > Pic_Puzzle.lss

        AVR Memory Usage
        ----------------
        Device: atmega16

        Program: 4964 bytes (30.3% Full)
        (.text + .data + .bootloader)

        Data: 70 bytes (6.8% Full)
        (.data + .bss + .noinit)
        سلام
        حمید جان من پروژه را از اینترنت گرفتم پس مشکلی از نظر انتشار نداره.
        ببنین حمید جان پروژه opensourc رو تو اینترنت می زارن که هر کس خواست استفاده کنه.این پروژه رو برای خودم نمی خوام یکی از دوستام پروژه پایان ترمش بهم داد تا همین قسمت رو بردارم گفتم بده ببینم چی کار میشه کرد حالا خطش رو تونستم پیدا کنم ولی نتونستم کامپایلش کنم اگر ممکنه اصلاح کن و کامپایل کردی دوباره پلودش کن؟؟

        ممنون

        دیدگاه


          #5
          پاسخ : اصلاح یک سورس برنامه با C

          نوشته اصلی توسط علی حیاتی
          سلام
          حمید جان من پروژه را از اینترنت گرفتم پس مشکلی از نظر انتشار نداره.
          ببنین حمید جان پروژه opensourc رو تو اینترنت می زارن که هر کس خواست استفاده کنه.این پروژه رو برای خودم نمی خوام یکی از دوستام پروژه پایان ترمش بهم داد تا همین قسمت رو بردارم گفتم بده ببینم چی کار میشه کرد حالا خطش رو تونستم پیدا کنم ولی نتونستم کامپایلش کنم اگر ممکنه اصلاح کن و کامپایل کردی دوباره پلودش کن؟؟

          ممنون
          درسته ، اگر پروژه متن باز باشه و نویسنده اجازهٔ ویرایش و انتشار دوبارهٔ اونو داده باشه مشکلی نیست.
          چون معمولا بعضی افراد فقط برای مطالعه ، کد اونارو هم منتشر میآ‌کنن.
          چون در هیچ کجای این پروژه دقیقا نحوهٔ استفاده ذکر نشده ، بهترین راه این هست که با نویسنده ارتباط برقرار کرد و از آن کسب اجازه نمود.
          و با توجه به اینکه شما هم فرمودید این پروژه از اینترنت دانلود شده و اگر از مکانی رسمی مثل وبلاگ خود نویسنده دانلود شده باشه میتوان براحتی با یک ایمیل از نویسندهٔ کد در این مورد سوال کرد.

          البته تا اونجایی که من اطلاع دارم در تمام مجورهای انتشار پروژهآ‌های متن باز (که بالاترین سطح آزادی مربوط به اجازه نامهٔ گنو یا GPL میشه ) حق نویسندهٔ اصلی محفوظه و اگر کدی ویرایش بشه نباید نام نویسندهٔ اصلی از کد برداشته و پنهان بشه.

          با توجه به اینکه این یک پروژه برای پایان ترم است، احتمالا استفاده کننده مایل نباشه نام نویسندهٔ اصلی رو ذکر کنه. فکر نکنم در هیچ مجوز انتشاری این مسئله قابل قبول باشه.
          بهترین راه برقراری ارتباط با نویسنده و کسب اجازه از آن است.
          چگونه هوشمندانه بپرسیم

          دیدگاه

          لطفا صبر کنید...
          X