Skip to content

Bug in main.asm when a char is encrypted to ('\b' or '\f' or '\r') #39

@MostafaAmin0

Description

@MostafaAmin0

BUG in main.asm

main.asm have a bug: When a char is encrypted to ('\b' or '\f' or '\r') , the output is displayed in a wrong way (sometimes it deletes some chars or overwrites the console).
I think this happens because of the way the console displays characters.

Failed test case:
input: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec consectetur purus vel maximus eleifend. Proin metus lectus, dictum molestie pretium eget, facilisis ut massa. Quisque eu placerat purus. Maecenas aliquet, ipsum a gravida tincidunt, mi quam finibus turpis, vitae molestie enim tortor eget lacus. Donec ex quam, porttitor nec orci at, auctor dignissim ipsum. Mauris a justo eu tortor efficitur viverra in sit amet diam.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec consectetur purus vel maximus eleifend. Proin metus lectus, dictum molestie pretium eget, facilisis ut massa. Quisque eu placerat purus. Maecenas aliquet, ipsum a gravida tincidunt, mi quam finibus turpis, vitae molestie enim tortor eget lacus. Donec ex quam, porttitor nec orci at, auctor dignissim ipsum. Mauris a justo eu tortor efficitur viverra in sit amet diam.
Enter Key 1: 7
Enter Key 2: 8
Enter Key 3: 9
Enter Key 4: 0

-------------------------------------------------------------------------------------------------------------------------

Program Output:

    :└░·Jء�r├MY=f┬C▄jسا3.ث$╧¶►→0ع╕ضçJ╩>‼س╓↓§≡═û]§■ً│ؤHر▒�┴ï▲أw`╛╩⌂┌â2^«]X┴T"Ke☻B♂SOH☼vèx▄)}↑

Iجق♫╦2ج≈
╢∙%ج≡║╙┤o¶ul,*ç)q�☻5ô!P┐°╪P↕ي┐è◄h"vم┘|%ء♀╗↕nك┐]│╩┼5�qvzز~ôtûC'�ب)ôآ~VVwّآî▲☻ٍR»Cù6├ْزكُgضuٍ a↓m2ك1 │5▀8 Mُ╝ⁿ╟▄ش‼X∙UTصJ╖♫XK╔ev─F╒rèSظoق┐▐ë*ذBهH╫.└♀w^¤.≡gي┘↑─ط�L■ôl♥eز▲ف╨ T~Zû}La�شtم◄▌ّ♠ٍ╨ء╥─c↓►£≡ضَ2|.▓c▼╠☻<كQ┼Kنx�;]╛√g�aىê@ّ$√╓f�S♠ْⁿ╕&)ذéié▒û�ëe«zX▓ئvûM3قgء ╪╡ٌّLkZ≈5îtàHتUCGénOⁿغم�ï■_BْCt┼?sû.♀ل K^ëّ║║2♥z#%%(┌{�غ╪Xؤ╢"°إ▲V╪à>│┌e¶≡Jة╗�¤l┘╤Tاf→ـ9(Ny♥س▀4Y▒�H♫9ٍ▄◄ôW╢╝¤fym╨♣م"V▓إï┬`♦┴╡╔╠I|

-------------------------------------------------------------------------------------------------------------------------

Expected Output:

Encrypted: ë�♫ٌذë╩ص{gR■eh╓B╓Dذ╝û¶Y┬↔ٌ¤╙┴p╓Aّْس─╨ⁿI�Lqج↓╛╣C≡ⁿed//Q≡ثGy╜خ╒"ⁿل☻âV╣ئ8-eq£ë└▄z)▼╨�°oيؤ↕H:UtpTج·1tب ∙3V╞⌂4'�zإ╕كaٌ!ب☼ت↓ن║ï║ت #╒ï'⌂{I╠ف$�┴Fë╛♦Déِبµçت╣ç6é║▄┘ï√ض/=,.ث█↕�e▓╤♂HXٍ╟R♠"ë2+─ ëٍ┐▄mة4بç╩╚pK|♠Qâds$�
╢╡╦K╘╛▀n↔ّ╫H╕╬♥█╧ا♫K|W╫╟&<o5Iِ]ـ)�"µ&°qG┘⌂§│ء╤nِ8}▌Hْفl║Q♫ ^▀■oF▀╗╨°WSإoَ╧|ش≈ⁿusت∙▲pظ.╬iê→ظَ�Vع Oْ╛ر▐]ـ═7£خw:z·9z═
=û♣Z↔┬┴'ش∙Jâ&♠6Zل�sه▒7�§6
╣↓²A☺♂@W├NyW@p┴A╬▐xL╜fd▓}eإe&¤├َ▬Kمىذg▬StD╦Aلj∟sPô♦█}+خ?ٌُ┐0☺^xث}═D♥┌╣وٌ�╦Aلj∟sPô♫╜ذ█▒ُ▬أRضWî^↓#WBً;cu/ةX`╝r╓╔م^و║|Q╗o╗B▼→♀╙╔
▒vùٌ╖ّ)╖ⁿô=َâ╣-&♀û|YF ibث_بgW²=Q▌� v3lSLد▬q↨╤
TW55Y╤ءw
L�╬ةر☺ؤ♥{@]è◄G╘طK╟╝�\ëH╠>╟·☺»Cⁿ/zٍ"b▒╛∙╫╚û^♥ّx»1╣ظ]┼⌂ء'|╕o�}╞^ا3└m�╒قء>X╩╤0ف▒h╗n°+O>ï♀\N│ِ\àx♣( ►}ج]╗→╘ù?C╙■fذw☻╞ïش�╒▼║àر!Jإص �C}:1�╩«┼9KطدôôحPلG╜=ن∟s=╧ـصِ K�♣╕♣<أ║ï♫►*?→Eغ;VxqQ♦F_ab�:Rخ♦↨àaeخ╨▄ن<)a»ZbL┤ح╚▐╕vaty'\ض$↨ى╚ّZ╛ُ'{╜╜b┤♦│ٍXً:م╞إQ║cé4╥╡↕
╪UBq£╬M+Rk�ه9َ√J♂╞►q~.E╓:D^�lةoُ╢█n*=^╪ل■vَè�£f↔éع>G»≈ي9

Decrypted: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec consectetur purus vel maximus eleifend. Proin metus lectus, dictum molestie pretium eget, facilisis ut massa. Quisque eu placerat purus. Maecenas aliquet, ipsum a gravida tincidunt, mi quam finibus turpis, vitae molestie enim tortor eget lacus. Donec ex quam, porttitor nec orci at, auctor dignissim ipsum. Mauris a justo eu tortor efficitur viverra in sit amet diam.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec consectetur purus vel maximus eleifend. Proin metus lectus, dictum molestie pretium eget, facilisis ut massa. Quisque eu placerat purus. Maecenas aliquet, ipsum a gravida tincidunt, mi quam finibus turpis, vitae molestie enim tortor eget lacus. Donec ex quam, porttitor nec orci at, auctor dignissim ipsum. Mauris a justo eu tortor efficitur viverra in sit amet diam.

Metadata

Metadata

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions