(Yardım) Asm Girdiğimde Hata Veriyor.

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 42

Admin

Knight Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
45,967
arkadaslar fazla asm bilgim yok fakat yardımlarınızı bekliyorum. Mesala ben launcher girmesi için bi kod giriyorum fkat hata alıyorum kodlar bunlar. sağ tıklıyorum assemble diyorum.



Kod:
006D7E54 ; MsgBox başlığı 006DD235 ; MsgBox içeriği 0064C173 0F8E 90650500  JLE 006A276F 0064C181 0F8D 82650500  JGE 006A276F 006A276F        8B4CE4 34       MOV ECX,DWORD PTR SS:[ESP+34] 006A2773        6A 40           PUSH 40 006A2775        68 547E6D00   PUSH OFFSET 006D7E54                                      ; ASCII "Knight Online" 006A277A        68 35D26D00   PUSH OFFSET 006DD235                       006A277F        51              PUSH ECX 006A2780        FF15 38336A00       CALL DWORD PTR DS:[006A3338]  006A2786        6A FF           PUSH -1 006A2788        E8 1A20FDFF   CALL 006747A7 006A278D        0F94C2          SETE DL 006A2790        ^ E9 E29BFAFF   JMP 0064C377 006A2795        0049 74         ADD BYTE PTR DS:[ECX+74],CL 006A2798        65:6D           INS DWORD PTR ES:[EDI],DX               ; Superfluous segment override prefix 006A279A        5C              POP ESP 006A279B        5C              POP ESP 006A279C        5F              POP EDI 006A279D        72 6F           JB SHORT 006A280E 006A279F        67:5F           POP EDI 006A27A1        73 68           JNB SHORT 006A280B 006A27A3        6965 6C 642E6 IMUL ESP,DWORD PTR SS:[EBP+6C],78642E64 006A27AA        74 00           JE SHORT 006A27AC 006A27AC        6A 0A           PUSH 0A 006A27AE        8D4C24 18       LEA ECX,[ESP+18] 006A27B2        6A 04           PUSH 4 006A27B4        8D5424 2C       LEA EDX,[ESP+2C] 006A27B8        51              PUSH ECX 006A27B9        ^ E9 1C4CF6FF   JMP 006073DA 006A27BE        60              PUSHAD 006A27BF        33D2            XOR EDX,EDX 006A27C1        F7F9            IDIV ECX 006A27C3        6BC0 64         IMUL EAX,EAX,64 006A27C6        6BC0 53         IMUL EAX,EAX,53 006A27C9        61              POPAD 006A27CA        ^ 0F8C DC9EEAFF JL 0054C6AC 006A27D0        ^ E9 B99EEAFF   JMP 0054C68E 006A27D5        90              NOP 006DD235        50 6C 65 61 73 65 20 45 78 65 63 75 74 65 20 4B 6E 69 67 68 74 20 4F 6E 6C 69 6E 65 20 76 69 61 20 4C 61 75 6E 63 68 65 72 20 21 ;ASCII"Please Execute Knight Online via Launcher !",0

Knight Online ASM Girdiğimde Hata Alıyorum - Yardım

Knight Online özel sunucularında (pserver) geliştirme yaparken_asm komutları veya assembly (ASM) kodları yazarken hatalarla karşılaşmak oldukça yaygın olabilir.Bu tür hatalar genellikle derleyici ayarları, kaynak kodun eski veya eksik olması, derleme ortamının yanlış yapılandırılması gibi nedenlerden kaynaklanabilir.[/BR]

Hatanın Temel Nedenleri
ASM kodları doğrudan CPU komutlarına dönüştüğü için, sistemdeki küçük bir değişiklik bile ciddi hatalara yol açabilir.Özellikle KO geliştirme ortamında ASM girmek isteyenlerin dikkat etmesi gereken bazı önemli hususlar vardır:

1. Kaynak Kod Uyumu: ASM kodunuzun çalıştığı sistemle uyumlu olduğundan emin olun. Özellikle Knight Online emulator geliştirme süreçlerinde kullanılan USKO, ROFD gibi sistemler farklı ASM komut setlerine sahip olabilir.
2. Derleyici Ayarları: Derleme sırasında kullanılan compiler ayarları ASM kodlarının doğru derlenmesini etkileyebilir. Örneğin, inline assembly kullanıyorsanız, derleyicinizin bunu desteklediğinden emin olun.
3. Adresleme Hataları: ASM kodlarında doğrudan belleğe erişim yapılır. Yanlış bir adresleme hatası programın çökmesine sebep olabilir.

Ortak ASM Hata Türleri ve Çözümleri
1. 'Illegal Instruction' Hatası: Bu hata genellikle CPU'nun desteklemediği bir komut kullanıldığında oluşur. Kullanmakta olduğunuz ASM komutunun işlemciniz tarafından desteklenip desteklenmediğini kontrol edin.

2. 'Access Violation' veya 'Segmentation Fault': Bu hata, ASM kodunun korunan bir bellek bölgesine erişmeye çalışmasından kaynaklanabilir. Bellek adreslemelerini dikkatlice kontrol edin.

3. Inline Assembly Syntax Hataları: C++ ile entegre edilmiş ASM kodlarında syntax hataları olabilir. GCC ve MSVC farklı inline assembly sözdizimi kullanır. Doğru derleyiciye göre yazım yapın.

ASM Kodlama İçin Tavsiyeler
Knight Online geliştirme sürecinde ASM kodlamaya başlamadan önce aşağıdaki adımları izlemeniz önerilir:

- ASM kodunuzu küçük parçalarda test edin.
- Debug modda derleme yaparak hata noktalarını daha net belirleyin.
- Kaynak kodun ASM bölümüne dikkatlice göz atın, güncel mi kontrol edin.
- ASM kodunuzun çalışacağı sistem mimarisini (x86, x64) bilin ve buna göre yazım yapın.

Kaynak Kod ve Geliştirme Araçları
Knight Online özel sunucu geliştirme sürecinde ASM kodlamaya başlamadan önce doğru kaynak kodları temin etmeniz önemlidir. KnightLobby üzerinden ASM tabanlı geliştirme için gerekli olan emulator, server files ve diğer destekleyici kaynaklara ulaşabilirsiniz.

ASM kodlama ile ilgili gelişmiş örnekler için:
- Knight Online client edit süreçlerinde ASM kullanımı
- Macro bot ASM entegrasyonları
- Filter ve guard sistemlerine ASM ile müdahaleler

Sonuç
ASM kodlama, Knight Online geliştirme sürecinde güçlü bir araçtır ancak dikkatli kullanım gerektirir. Hatalarla karşılaşıldığında öncelikle sistem uyumu, derleyici ayarları ve kodun doğru yazımı üzerinde durulmalıdır. ASM hatalarını çözmek için debug araçlarını ve memory dump analizlerini kullanmak da oldukça faydalıdır.


Help - Getting Error When Entering ASM in Knight Online

When developing on Knight Online private servers, encountering errors while entering ASM commands or writing assembly code can be quite common.Such errors often arise from compiler settings, outdated or incomplete source code, or misconfigured build environments.

Main Causes of Errors
Since ASM codes are directly converted into CPU instructions, even a minor change in the system can cause serious errors.There are several important points to consider for those who wish to enter ASM in the KO development environment:

1. Source Code Compatibility: Ensure your ASM code is compatible with the system it runs on. Systems like USKO, ROFD used in Knight Online emulator developments may have different ASM command sets.
2. Compiler Settings: Compiler settings used during compilation can affect how ASM codes are properly compiled. For example, if you are using inline assembly, ensure your compiler supports it.
3. Addressing Errors: ASM codes allow direct access to memory. Incorrect addressing may cause the program to crash.

Common ASM Error Types and Solutions
1. 'Illegal Instruction' Error: This error usually occurs when a command not supported by the CPU is used. Verify that the ASM command you are using is supported by your processor.

2. 'Access Violation' or 'Segmentation Fault': This error may result from ASM code attempting to access a protected memory area. Carefully check memory addressing.

3. Inline Assembly Syntax Errors: In ASM code integrated with C++, syntax errors may occur. GCC and MSVC use different inline assembly syntax. Write according to the correct compiler.

Recommendations for ASM Coding
Before starting ASM coding in the Knight Online development process, it is recommended to follow these steps:

- Test your ASM code in small parts.
- Perform debug-mode compilation to identify error points more clearly.
- Carefully review the ASM section of your source code, check if it is up-to-date.
- Know the system architecture (x86, x64) your ASM code will run on and write accordingly.

Source Code and Development Tools
Before starting ASM coding in the Knight Online private server development process, obtaining the correct source code is essential. You can access necessary emulators, server files, and other supporting resources for ASM-based development via KnightLobby.

For advanced examples related to ASM coding:
- ASM usage in Knight Online client editing processes
- ASM integration for macro bots
- ASM interventions on filter and guard systems

Conclusion
ASM coding is a powerful tool in the Knight Online development process but requires careful usage. When encountering errors, focus primarily on system compatibility, compiler settings, and correct code writing. Using debug tools and memory dump analysis can also be very helpful in resolving ASM errors.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Benzer konular

Geri
Üst Alt