рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдВрддрд░рд┐рдХреНрд╖ рдЖрдХреНрд░рдордгрдХрд╛рд░рд┐рдпреЛрдВ
1 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рдореЗрдВ рдлрд┐рдЯ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдм рд╡реЗ рдПрдХ рдмреВрдЯ рд╕реЗрдХреНрдЯрд░ (512 рдмрд╛рдЗрдЯреНрд╕) рдореЗрдВ рдлрд┐рдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓реЗрдЦрдХ рдСрд╕реНрдХрд░ рдЯреЛрд▓реЗрдбреЛ рд╣реИрдВ, рдЬреЛ IOCCC рдХреЗ рдкрд╛рдВрдЪ рдмрд╛рд░ рд╡рд┐рдЬреЗрддрд╛ (
рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп Obfuscated C Code Contest ) рдФрд░ JS1K рдХреЗ рдирд┐рдпрдорд┐рдд рд╕рджрд╕реНрдп рд╣реИрдВ
, рдЬрд┐рдиреНрд╣реЗрдВ рд╢рддрд░рдВрдЬ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
, рдЬреЛ рдХреЗрд╡рд▓ 392 рдлреАрдЯ
рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рддреЗ рд╣реИрдВ ред
рдЦреЗрд▓ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб Github рдкрд░ рднрдВрдбрд╛рд░ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
github.com/nanochess/InvadersрдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ nasm (рдиреЗрдЯрд╡рд╛рдЗрдб рдЕрд╕реЗрдВрдмрд▓рд░) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬрд┐рд╕реЗ
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЦреЗрд▓ рдХреЛ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
nasm -f bin invaders.asm -Dcom_file=1 -o invaders.com
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдЕрднреА рднреА рдЕрдЯрд╛рд░реА 2600 рд░реИрдо рдХреЗ рдкреВрд░реЗ рдЖрдХрд╛рд░ рд╕реЗ 4 рдЧреБрдирд╛ рдмрдбрд╝рд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдкрдиреЗ рдХрд╛рд░рддреВрд╕ рдкрд░ рдлрд┐рдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ 2 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ рдореЗрдореЛрд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдореЗрдВ
PUSHA/POPA
рдХреЛрдбрд╛рдВрддрд░рдХ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрд╕реЗрд╕рд░ 80186 рдФрд░ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдореВрд▓ рдЕрдВрддрд░рд┐рдХреНрд╖ рдЖрдХреНрд░рдордгрдХрд╛рд░рд┐рдпреЛрдВ рдХреЛ 1980 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдпрд╣ рд╕реНрд▓реЙрдЯ рдорд╢реАрдиреЛрдВ рд╕реЗ рдЕрдЯрд╛рд░реА 2600 рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдкрд╣рд▓реЗ рдЖрд░реНрдХреЗрдб рдореЗрдВ рд╕реЗ рдПрдХ рдмрди рдЧрдпрд╛ред рдЧреЗрдо рдПрдХ рдмреЗрд╕реНрдЯрд╕реЗрд▓рд░ рдмрди рдЧрдпрд╛, рдЬрд┐рд╕рд╕реЗ рдХрдВрд╕реЛрд▓ рдХреА рдмрд┐рдХреНрд░реА 4 рдЧреБрдирд╛ рдмрдврд╝ рдЧрдИред рдореВрд▓ рдЦреЗрд▓, рдЬреЛ рдЕрдкрдиреЗ рд▓реЗрдЦрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░ 1978 рдореЗрдВ рдЖрд░реНрдХреЗрдб рдорд╢реАрдиреЛрдВ рдкрд░ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдмрджрд▓реЗ рдореЗрдВ рдПрдХ рдФрд░ рдЕрдЯрд╛рд░реА рдЦреЗрд▓ - рдмреНрд░реЗрдХрдЖрдЙрдЯ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдерд╛ред
рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдЧреЗрдо рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред