20ȸ °ÁÂÀÔ´Ï´Ù.
<COMPARE>
¸íɾî : COMPARE
±â ´É : <Range>¿¡ ÀÇÇؼ ÁöÁ¤µÈ ±â¾ï ÀåÄ¡ÀÇ ÀϺκÐÀ»
<Address>¿¡¼ºÎÅÍ ½ÃÀ۵Ǵ °°Àº Å©±âÀÇ ºÎºÐ°ú
ºñ±³ÇÑ´Ù.
¹® ¹ý : C <Range> <Address>
µÎ ºÎºÐÀÌ °°À¸¸é ¾Æ¹«°Íµµ Ç¥½ÃµÇÁö ¾Ê°í, Ʋ¸®´Â ºÎºÐÀÌ ÀÖÀ»
°æ¿ì´Â ¾Æ¡¿Í °°Àº Çü½ÄÀ¸Î ³»¿ëÀ» º¸¿©ÁØ´Ù.
<Address1> <Byte1> <Byte2> <Address2>
¿¹: ¾Æ¡ÀÇ µÎ ¸íɾî´Â °°Àº °á°ú¸¦ º¸À̴µ¥ µÑ ´Ù 100¿¡¼
1FF±îÁöÀÇ ±â¾ïÀåÄ¡»óÀÇ ºí°°ú 300¿¡¼ 3FF±îÁöÀÇ ºí°À»
ºñ±³Ç϶ó´Â ¸íɾîÀÌ´Ù.
C100, 1FF 300 or C100L100 300
<DUMP>
¸íɾî : DUMP
±â ´É : <Range>¿¡ ÀÇÇؼ ÁöÁ¤µÈ ±â¾ïÀåÄ¡»óÀÇ Æ‾Á¤ ºÎºÐÀÇ
³»¿ëÀ» Ç¥½ÃÇÑ´Ù.
¹® ¹ý : D <Range>
<Range>°¡ ÁÖ¾îÁ® ÀÖÀ¸¸é ±× ºÎºÐÀÇ ³»¿ëÀÌ Ç¥½ÃµÇ°í, ÁÖ¾îÁ® ÀÖÁö
¾ÊÀ¸¸é ÀÌ Àü¿¡ DUMP ¸íɾ ÀÇÇؼ Ç¥½ÃµÇ¾ú´ø °÷ ´ÙÀ½ (ds:100)
¿¡¼ºÎÅÍ 128byte°¡ Ç¥ »ç¿ëÀÚ ½ºÅà Æ÷ÀÎÅÍ´Â ÀÌ ¸íɾîÀÇ
󸮸¦ À§ÇØ Àû¾îµµ 6byte¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ°Ô µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù.
ÀÌ GO ¸íɾî´Â iret ¸íÉÀ» ½á¼ Å×½ºÆ®ÇÏ´Â ÇÁαץÀ¸Î jumpÇÏ°Ô
µÈ´Ù. »ç¿ëÀÚ ½ºÅà Æ÷ÀÎÅÍ°¡ Á¤ÇØÁö°í »ç¿ëÀÚ Çù±×, ÄÚµå ¼¼±×¸ÕÆ®
¹Áö½ºÅÍ, ÀνºÆ®°¼Ç Æ÷ÀÎÅ͵îÀÌ »ç¿ëÀÚ ½ºÅÿ¡ ÀúÀåµÈ´Ù.
µû¶ó¼ »ç¿ëÀÚ ½ºÅÃÀÌ À߸ø µÇ¾î °Å³ª ³Ê¹« Á¼À¸¸é ¿ÀÆÛ¹ÀÌÆà ½Ã½ºÅÛ
ÀÌ ¸Á°¡Áø´Ù. ÀÎÅÍ´Æ® ÄÚµå(0CCH)°¡ °¢ ÁßÁöÁ¡¿¡ »ðÀÔµÇ°Ô µÇ´Âµ¥
ÀÌ ÁßÁöÁ¡À» ³ªÅ¸³»´Â ¸íÉÀ» ¼öÇàÇÏ°Ô µÇ¸é, ¸ðµç ÁßÁöÁ¡ÀÌ ´Ù½Ã ¿ø¡ÀÇ
¸íÉÀ¸Î È‾¿øµÈ´Ù. ±×‾³ª ÁßÁöÁ¡¿¡¼ ³¡³ªÁö ¾ÊÀ¸¸é ¿ø¡ÀÇ ¸íÉÀ¸Î
È‾¿øµÇÁö ¾Ê´Â´Ù.
¿¹: ´ÙÀ½°ú °°ÀÌ ÀÔÂÇϸé
GCS:7777
ÇöÀç ±â¾ïÀå¼Ò³»¿¡ ÀÖ´Â ÇÁαץÀÌ CS¼¼±×¸ÕÆ®ÀÇ 7777hκÎÅÍ ¼öÇàÀ»
½ÃÀÛÇÏ°Ô µÇ¸ç ¼öÇàÀÌ ³¡³ª¸é ¡Áö½ºÅÍ¿Í Çù±×ÀÇ ³»¿ëÀÌ Ç¥½ÃµÈ´Ù.
ÁßÁöÁ¡À» ¸¸³ª¼ ÀÏ´Ü ÇÁαץ ½ÇÇàÀÌ Á¤ÁöµÈ ÈÄ ´Ù½Ã GO ¸íɾ
ÀÔÂÇÏ¸é ´Ù½Ã ÁßÁöÁ¡¿¡¼ ºÎÅÍ ½ÇÇàÀ» ÇÑ´Ù.
<HEX>
¸íɾî : HEX
±â ´É : ÁÖ¾îÁø µÎ ÆĶó¹ÌÅ͸¦ °¡Áö°í 16Áø¼ö¸¦ °è»êÇÑ´Ù.
¹® ¹ý : H <Value> <Value>
¸ÕÀú µÎ ÆĶó¹ÌÅ͸¦ ´õÇÏ¿© ±× ÇÕÀ» Ç¥½ÃÇÏ°í ±× ´ÙÀ½ ù ¹ø°
ÆĶó¹ÌÅÍ¿¡¼ µÎ ¹ø° °ÍÀ» »« ÈÄ ±× Â÷¸¦ °°Àº ÁÙ¿¡ Ç¥½ÃÇÑ´Ù.
¿¹: ¾Æ¡¿Í °°ÀÌ ÀÔÂÇϸé
H 0 1
°á°ú°ª --> 0001 FFFF
<INPUT>
¸íɾî : INPUT
±â ´É : <Value>¿¡ ÀÇÇؼ ÁöÁ¤µÈ Æ÷ƮκÎÅÍ 1byte¸¦ ÀÐ¾î µé¿©
±× °ªÀ» Ç¥½ÃÇÑ´Ù.
¹® ¹ý : I <Value>
Æ÷Æ®ÀÇ ¹øÁöδ 16Bit¼ýÀÚ¸¦ ¾´´Ù.
¿¹: ¾Æ¡¿Í °°ÀÌ ÀÔÂÇϸé
I2F8
ÁöÁ¤µÈ Æ÷Æ®¿¡ ÀÖ´Â µ¥ÀÌŸ °ªÀÌ 55h¶ó Çϸé, Debug ÇÁαץÀº
ÀÌ °ªÀ» ¹Þ¾ÆµéÀÌ°í
55
¶ó°í Ç¥½ÃÇÑ´Ù.
<LOAD>
¸íɾî : LOAD
±â ´É : ÆÄÀÏÀ» ÀÐ¾î µé¿© ±â¾ï Àå¼Ò³»¿¡ εåÇÑ´Ù.
¹® ¹ý : L <address> [<Drive> <Record> <Record>]
BX:CX¿¡ ÀÐ¾î µéÀÏ ÆÄÀÏÀÇ Byte ¼ö¸¦ ³Ö´Â´Ù. ÆÄÀϸíÀº Debug
ÇÁαץÀ» ºÒ‾ ¼öÇà½ÃÅ°´Â ¸íɾ Ä¥ ¶§Ã³³ Ç¥½ÃÇϰųª
N ¸íɾ ½á¼ Ç¥½ÃÇÒ ¼ö Àִµ¥, ÀÌ µÎ ¹æ¹ý ¸ðµÎ CS:5C¿¡ ÀÖ´Â
CONTROL ºí°¿¡¼ ¾²´Â Çü½Ä¿¡ µû¶ó ÆÄÀϸíÀ» ÁöÁ¤ÇØ ÁØ´Ù.
ÆĶó¹ÌÅÍ ¾øÀÌ L ¸íɾ Ä¡°Ô µÇ¸é CS:0100¿¡¼ºÎÅÍ ÆÄÀÏÀÇ ³»¿ëÀÌ
εåµÇ¸ç BX:CX¿¡´Â ÀÐ¾î µéÀÎ Byte ¼ö°¡ ³Ö¾îÁø´Ù. <Address>ÆĶó¹ÌÅÍ
´Â ÆÄÀÏÀ» εåÇÏ´Â ½ÃÀÛ¹øÁö¸¦ ÁöÁ¤Çϸç, <Drive> <Record> <Record>
°¡ ÁÖ¾îÁö¸ç ÆÄÀÏÀÌ ¾Æ´Ï¶ó µð½ºÅ©»óÀÇ ¼½ÅÍ´ÜÀ§Î ε尡 ¼öÇàµÈ´Ù.
<Drive>ÀÇ ÁöÁ¤Àº 0=A; 1=B; 2=C¿Í °°ÀÌ ³ª°¡¸ç ù ¹ø° <Record>
ÆĶó¹ÌÅÍÎ ÁöÁ¤µÈ ¼½ÅÍ¿¡¼ºÎÅÍ µÎ ¹ø° <Record> ÆĶó¹ÌÅÍÎ ÁöÁ¤µÈ
°¹¼ö ¸¸ÅÀÇ ¼½ÅÍ°¡ εåµÈ´Ù.
¿¹: ¾Æ¡¿Í °°ÀÌ DEBUG ÇÁαץÀ» ½ÃÀÛÇß´Ù°í °¡Á¤Çϸé
C:\debug
-nfile.com
ÀÌÁ¦ file.comÀ̶õ ÆÄÀÏÀ» εå½ÃÅ°Á¸é
-L
À̶ó°í ÇÏ¸é µÈ´Ù. ±×‾¸é DEBUG ÇÁαץ¿¡ ÀÇÇؼ ε尡
¼öÇàµÇ°í ´Ù½Ã DEBUG ÇÁÒÇÁÆ®°¡("-")°¡ ³ªÅ¸³´Ù.
¾î¶² ÆÄÀÏÀÇ ÀϺκÐÀ̳ª Æ‾Á¤ ¹Äڵ常À» εåÇÏ°í ½ÍÀ» ¶§ÀÇ
¿¹¸¦ µé¸é,
L0BBA:0100 0 0F FF
(Address) (Drive) (óÀ½ ÀÐÀ» ¼½ÅÍ) (255°³ÀÇ ÎµåÇÒ ¼½ÅÍ)
DEBUG¿¡ ÀÇÇØ 15¹ø(0Fh) ¹Äڵ忡¼ ½ÃÀÛÇؼ 255°³(FFh)ÀÇ
¹Äڵ尡 ¹øÁö 0BBA:0100¿¡¼ºÎÅÍ Îµå°¡ ³¡³ª¸é ´Ù½Ã DEBUG
ÇÁÒÇÁÆ®°¡ ³ªÅ¸³´Ù. ¸¸ÀÏ ÁÖ¾îÁø ÆÄÀÏÀÌ .exe È®Àå¸íÀ» °¡Áø
ÆÄÀÏÀ̶ó¸é ±× ÆÄÀÏÀÇ Çì´õ¿¡ ¸í½ÃµÈ Îµå ¹øÁö¿¡ RelocationµÉ
°ÍÀÌ°í <Address> ÆĶó¹ÌÅÍ°¡ ÀÖ´Ù¸é ¹«½ÃµÈ´Ù. ÆÄÀÏÀÇ Çì´õ
ÀÚüµµ εåµÉ ¶¼´Â ºüÁö±â ¶§¹®¿¡ ½ÇÁ¦ ÆÄÀÏÀÇ Å©±â¿Í ±â¾ï
Àå¼Ò¿¡ εåµÈ Å©±â¿Í´Â ´Ù¸£´Ù.
¶ÇÇÑ ÁÖ¾îÁø ÆÄÀÏÀÌ .hex ÆÄÀÏÀ϶§¿¡´Â ±× ÆÄÀÏÀÇ ¸í½ÃµÈ ¹øÁö¿¡
εåµÇ´Âµ¥ <Address> ÆĶó¹ÌÅÍ°¡ ÀÖ´Â °æ¿ì´Â ±× °ªÀ» ´õÇؼ
εåÇÒ ¹øÁö¸¦ °áÁ¤ÇÑ´Ù.
¼½Å͸¦ Á÷Á¢ ÀÐ¾î µé¿© ¿¡µðÆ®ÇÒ Á¤µµÀÇ ½ÇÂÀº µÇÁö ¾ÊÀº °ü°è
Î ´õ ÀÌ»óÀÇ Ãß°¡ ¼³¸íÀ» ¸ø µå¸®°Ú±º¿ä.
´ë ºÎºÐ ÀÌ°ÍÀº ±×¸® ÇÊ¿äÇÏÁö ¾ÊÀ» °Í °°±º¿ä.
<MOVE>
¸íɾî : MOVE
±â ´É : <Range>¿¡ ÀÇÇØ ÁÖ¾îÁø ±â¾ï Àå¼ÒÀÇ ÀϺκÐÀ» <Address>
Î ºÎÅÍ ½ÃÀ۵Ǵ °÷¿¡ ¿Å±ä´Ù.
¹® ¹ý : M <Range> <Address>
¿Å±ä Àå¼Ò¿Í ¿Å°ÜÁö´Â Àå¼Ò°¡ ÁßøµÇ´Â °æ¿ì¿¡µµ µ¥ÀÌŸ°¡ ¼Õ½ÇµÇ´Â
ÀϾøÀÌ À̵¿ÀÌ ÁøÇàµÇ´Âµ¥ ÁßøµÇ¾î ¼Õ½ÇµÉ °¡´É¼ºÀÌ ÀÖ´Â °÷ºÎÅÍ ¸ÕÀú
À̵¿µÈ´Ù. <Range> ¿Í <Address>°¡ ÀÛÀº ¹øÁö¿¡¼ Å« ¹øÁöÎ µÇ¾î
ÀÖÀ¸¸é ºí°ÀÇ µÞºÎºÐºÎÅÍ À̵¿ÀÌ ÁøÇàµÇ°í ¹Ý´ëÎ Å« ¹øÁö¿¡¼ ÀÛÀº
¹øÁöÎ µÇ¾î ÀÖÀ¸¸é ¾ÕÂÊ¿¡¼ ºÎÅÍ À̵¿ÀÌ ÁøÇàµÈ´Ù.
ÀÌ M ¸íɾ ¼öÇàÇÒ ¶§ ¿Å°ÜÁö´Â ºí°¿¡´Â »õÎ¿î µ¥ÀÌÅ͸¦ ½á ³Ö´Â°Í
ÀÌ ¾Æ´Ï¹ÇÎ ±×´ëÎ ³²¾ÆÀÖ°Ô µÈ´Ù. µû¶ó¼ ½ÇÁ¦ÀûÀ¸Î ÇÑ ºÎºÐÀÇ ³»¿ëÀ»
´Ù¸¥ ºÎºÐ¿¡ º¹»çÇØ ³Ö´Â °Í°ú °°°Ô µÈ´Ù. ±×¡¼ À̵¿ÀÇ ¼ø¼°¡ Áß¿äÇÑ
°ÍÀÌ´Ù.
¿¹: ¾Æ¡¿Í °°ÀÌ ÀÔÂÇϸé
MCS:0100 110 CS:500
DEBUG´Â CS:0100À» CS:0510¿¡, CS:10F¸¦ CS:50F¿¡ ÇÏ´Â ½ÄÀ¸Î µ¥ÀÌÅ͸¦
º¹»çÇØ ³ª°£´Ù. ÀÌ‾ÇÑ À̵¿ÀÇ °á°ú¸¦ º¸°í ½ÍÀ¸¸é M ¸íÉ¿¡ »ç¿ëÇÑ
<Address>ÆĶó¹ÌÅ͸¦ °¡Áö°í D ¸íɾ ¼öÇàÇÏ¸é µÈ´Ù.
<NAME>
¸íɾî : NAME
±â ´É : ÆÄÀϸíÀ» ÁöÁ¤ÇÑ´Ù.
¹® ¹ý : N <Filename> [<Filename>........]]
N ¸íɾî´Â µÎ °¡Áö ±â´ÉÀ» ¼öÇàÇÑ´Ù. ù°´Â ´ÙÀ½¿¡ ¿Ã LOAD³ª
WRITE ¸íɾ¼ »ç¿ëµÉ ÆÄÀÏÀÇ À̸§À» ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù.
±×¡¼ ÆÄÀϸíÀ» ÁöÁ¤ÇØ ³õÁö ¾Ê°í DEBUG¸¦ ½ÃÀÛÇß´õ¶óµµ µÚ¿¡ ¿øÇÏ´Â
ÆÄÀÏÀ» ¾µ ¼ö ÀÖ°è µÈ´Ù. µÑ°´Â ÇöÀç µð¹ö±ëÇÏ°í ÀÖ´Â ÆÄÀÏ (ÇÁÎ
±×¥)¿¡ ÆĶó¹ÌÅÍÎ ¾²ÀÌ´Â ÆÄÀϸíÀ» ÁöÁ¤ÇÏ´Â °ÍÀíɾ ½ÇÇàÇÑ´Ù¸é ÇöÀç
<REGISTER>
¸íɾî : REGISTER
±â ´É : ÇÑ °³ ÀÌ»óÀÇ CPU ¹Áö½ºÅÍÀÇ ³»¿ëÀ» Ç¥½ÃÇÑ´Ù.
¹® ¹ý : R <Register_name>
<Register_name>ÀÌ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é ¹Áö½ºÅÍ save¿µ¿ªÀÇ ³»¿ëÀÌ
´ýÇÁµÇ°í, ¸ðµç ¹Áö½ºÅÍ¿Í Çù±×ÀÇ ³»¿ëÀÌ Ç¥½ÃµÈ´Ù.
ÇÑÆí <Register_name>À» ÁÖ°Ô µÇ¸é ±× ¹Áö½ºÅÍÀÇ °ª PE NC_
¿©±â¼ ÀǹÌÀÖ´Â Çù±×ÀÇ °ªÀ» ¾Æ¹« ¼ø¼Î³ª ÁְԵǸé DEBUG
ÇÁαץÀº Çù±×ÀÇ ³»¿ëÀ» ¹Ù²Û ÈÄ DEBUG ÇÁÒÇÁÆ®ÀÎ "-"¸¦
Ç¥½ÃÇÒ °ÍÀÌ´Ù.
NV UP DI NG NZ AC PE NC_OVDNDIPLZRACPECY (Return)
ÀÌÁ¦ ¿øÇÏ´Â ´ëÎ Çù±×°¡ ¹Ù²î¾ú´ÂÁö º¸Á¸é R ¶Ç´Â RF ¸íɾ
´Ù½Ã »ç¿ëÇÏ¸é µÈ´Ù.
RF
OV DN DI PL ZR AC PE CY_
<SEARCH>
¸íɾî : SEARCH
±â ´É : ÁÖ¾îÁø ±â¾ïÀå¼Ò»óÀÇ <Range>¿¡¼ <List>¿Í °°Àº ½ºÆ®¸µ
ÀÌ ÀÖ³ª °Ë»öÇÑ´Ù.
¹® ¹ý : S <Range> <List>
<List>´Â Çϳª ÀÌ»óÀÇ Byte°ªÀ¸Î µÇ¾î Àִµ¥ °°Àº Byte°ªÀº
½ºÆäÀ̽º³ª Ä¿¸ÓÎ ºÐ¸®µÈ´Ù. <List>°¡ µÎ °³ ÀÌ»óÀÇ Byte°ªÀ¸Î
ÀÌç¾îÁ® ÀÖÀ» ¶§´Â Á¦ÀÏ Ã³À½¿¡ ÀÖ´Â ByteÀÇ ¹øÁö¸¸ÀÌ ±¸ÇØÁö°í
ÇÑ °³ÀÇ Byte°ªÀ¸Î µÇ¾î ÀÖÀ» °æ¿ì¿¡´Â <Range>»ó¿¡ ³ªÅ¸³ ¸ðµç
¹øÁö°¡ ±¸ÇØÁø´Ù.
¿¹: ´ÙÀ½°ú °°ÀÌ ÀÔÂÇϸé
SCS:100 110 45
¾Æ¡¿Í °°ÀÌ µð½ºÇùÀÌ µÇ°Å³ª ¸¸¾à ÀÏÄ¡µÇ´Â °ªÀ̾ø´Ù¸é
´ÜÁö DEBUG ÇÁÒÇÁÆ®¸¸À» Ç¥½ÃÇÒ °ÍÀÌ´Ù.
04EE:0104
04EE:010F
-
<TRACE>
¸íɾî : TRACE
±â ´É : ÇÑ ÀνºÆ®°¼ÇÀ» ¼öÇàÇÑ ÈÄ ¸ðµç ¹Áö½ºÅÍ¿Í Çù±×ÀÇ
³»¿ëÀÌ ¼öÇàµÈ ÀνºÆ®°¼ÇÀ» Ç¥½ÃÇÑ´Ù.
¹® ¹ý : T [=<Address>] [<Value>]
=<Address>°¡ ÁÖ¾îÁö¸é ±× ÁÖ¾îÁø ¹øÁö¿¡¼ºÎÅÍ TRACE°¡ ¼öÇàµÇ¸ç
<Value>°¡ ÁÖ¾îÁö¸é ±× °ª ¸¸ÅÀÇ ´Ü°è¸¦ TraceÇÑ´Ù.
ÀÌ ¸íɾ´Â 8086, 8088 ÇÁμ¼¼ÀÇ Çϵå¿þ¾î Trace ±â´ÉÀ» ÀÌ¿ë
ÇϹÇÎ ROM¿¡ µé¾î ÀÖ´Â ÀνºÆ®°¼Çµµ TRACEÇÒ ¼ö ÀÖ´Ù.
¿¹: T ¶ó°í ¸íɾ ÀÔÂÇϸé DEBUG ÇÁαץÀº ±× ÇÑ ÀνºÆ®°¼ÇÀ»
¼öÇàÇÑ ÈÄ ¹Áö½ºÅÍ¿Í Çù±×ÀÇ ³»¿ëÀ» Ç¥½ÃÇØ ÁØ´Ù.
ÇöÀçÀÇ À§Ä¡°¡ 04EE:0113À̶ó ÇÑ´Ù¸é
AX=0E00 BX=09FD CX=9FDA DX=10FF SP=1000 BP=0100
SI=0000 DI=0000 DS=04EE ES=04EE SS=04EE CS=04EE
IP=0113 NV UP DI NG NZ AC PE NC
04EE:0113 CD21 INT 21
¾Æ¡¿Í °°ÀÌ ÀÔÂÇϸé
T=0113 10
DEBUG ÇÁαץÀº 0113À¸ÎºÎÅÍ ½ÃÀÛÇؼ 10h°³ÀÇ ÀνºÆ®°¼Ç
À» ½ÇÇàÇÏ¸é¼ °¢ ÀνºÆ®°¼ÇÀÌ ³¡³‾ ¶§¸¶´Ù ¹Áö½ºÅÍ¿Í Çù±×ÀÇ
³»¿ëÀ» Ç¥½ÃÇÑ´Ù. ÀνºÆ®°¼ÇÀÌ ÁøÇàµÇ°í »õοî Á¤º¸°¡ Ç¥½ÃµÉ
¶§¸¶´Ù ȸéÀº Â÷Ê´ëÎ ¿Ã¶ó°¡¸ç Áß°£¿¡ Á¤Áö½ÃÄÑ ³õ°í º¸°í
½ÍÀ¸¸é <CONTROL-S>¸¦ »ç¿ëÇÑ´Ù.
<UNASSEMBLE>
¸íɾî UNASSEMBLE
±â ´É : ±â¾ïÀå¼ÒÀÇ ³»¿ëÀ» ÀÐ¾î µé¿© ±×°ÍÀ» ´Ù½Ã ¼Ò½º ÇÁαץ
À¸Î ¹Ù²ãÁØ´Ù. À̶§ ±× ¹øÁö¿Í ¸Þ¸ð¸®»óÀÇ °ªµµ
Ç¥½ÃµÈ´Ù.
¹® ¹ý : U <Range>
ÀÌ ¸íɾ ¼öÇàÇÏ°í ³ °á°ú´Â ¾î¼Àºí¸®¾î ÇÁαץ°ú ºñ½ÁÇÒ
°ÍÀÌ´Ù. ÆĶó¹ÌÅ;øÀÌ U ¸íɾ Ä¡¸é Àü¿¡ U ¸íɾ ÀÇÇØ ¹ø¿ªµÇ´ø
´ÙÀ½¿¡¼ºÎÅÍ 20h byte¸¸Å ´Ù½Ã ¹ø¿ªµÇ¸ç <Range>¸¦ ÁöÁ¤ÇÏ¸é ±×
<Range>¿¡ Æ÷ÇԵǴ ¸ðµç ByteµéÀÌ ¹ø¿ªµÇ´Âµ¥ <Range>°¡ <Address>
¸¸À¸Î ÁÖ¾îÁö¸é ±× ¹øÁö¿¡¼ºÎÅÍ 20h byte ¸¸Å¸¸ ¹ø¿ªµÈ´Ù.
¿¹: ´ÙÀ½°ú °°ÀÌ ÀÔÂÇϸé
U04EE:0100 L10
DEBUG ÇÁαץÀº 04EE:0100¿¡¼ºÎÅÍ 16Byte¸¦ ¹ø¿ªÇÑ´Ù.
±× °á°ú´Â ¾Æ¡¿Í °°Àº Çü½ÄÀÏ °ÍÀÌ´Ù.
04EE:0100 206472 AND [si-72],ah
04EE:0103 69 DB 69
04EE:0104 7665 JBE 016B
04EE:0106 207370 AND [BP+DI-70],DH
04EE:0109 65 DB 65
04EE:010A 63 DB 63
04EE:010B 69 DB 69
04EE:010C 66 DB 66
04EE:010D 69 DB 69
04EE:010E 63 DB 63
04EE:010F 61 DB 61
¾Æ¡¿Í °°ÀÌ Çϸé,
U04EE:0100 0108
04EE:0100 206472 AND [si-72],ah
04EE:0103 69 DB 69
04EE:0104 7665 JBE 016B
04EE:0106 207370 AND [BP+DI-70],DH
¸Þ¸ð¸®ÀÇ ³»¿ëÀÌ ¹Ù²î¸é ¿ø¡ÀÇ ¼Ò½º ÇÁαץÀÇ ³»¿ë°ú ¹Ù²ï
³»¿ëÀÌ µð½º¾î¼Àºí¸®ÇÑ ³»¿ë°ú´Â ´Ù¸¦ °ÍÀÌ´Ù. µû¶ó¼ ÀÌ U
¸íɾ »ç¿ëÇϸé ÀÌ º‾ȸ¦ ½±°Ô ¼Ò½º ÇÁαץ¿¡ ¹Ý¿µ½Ãų
¼ö ÀÖ´Ù.
<WRITE>
¸íɾî : WRITE
±â ´É : µð¹ö±ëÇÏ°í ÀÖ´Â ÆÄÀÏÀ» µð½ºÅ©¿¡ ÀúÀåÇÑ´Ù.
¹® ¹ý : W [<Address> [<Drive> <Record> <Record>]]
ÆĶó¹ÌÅ;øÀÌ W ¸íɾ ¼öÇàÇÏ¸é ¹Ì¸® BX:CX¿¡´Ù µð½ºÅ©Î ÃâÂÇÒ
ÆÄÀÏÀÇ Byte¼ö¸¦ ±âÏÇØ ³õ¾Æ¾ß Çϸç ÆÄÀÏÀº CS:0100¿¡¼ºÎÅÍ
½ÃÀÛÇÑ´Ù. <Address>¸¸À» ÁöÁ¤ÇÏ¸é ±× ¹øÁö¿¡¼ºÎÅÍ ÆÄÀÏÀÌ ½ÃÀ۵ǴÂ
°ÍÀ¸Î µÈ´Ù. ¶ÇÇÑ LOAD³ª GO ¸íɾ »ç¿ëÇÑ ÈÄ W ¸íɾ
ÆĶó¹ÌÅÍ ¾øÀÌ ¾²Á¸é BX:CXÀÇ °ªÀ» ´Ù½Ã Á¤ÇØ¾ß ÇÑ´Ù. ¾î¶² ÆÄÀÏÀ»
εåÇؼ ¼öÁ¤À» °¡Çß´Ù ÇÏ´õ¶óµµ ±× ÀüüÀÇ ±æÀ̸¸ º‾ÇÏÁö ¾Ê¾Ò´Ù¸é
À̸§À̳ª ½ÃÀÛ¹øÁö´Â ¹Ù²îÁö ¾Ê´Â´Ù´Â »ç½Ç¿¡ ÁÖ¸ñÇÑ´Ù.
ÆÄÀϸíÀº DEBUG¸¦ ºÎ¸¦ ¶§ Áְųª N ¸íɾ »ç¿ëÇؼ ÁöÁ¤Çؾß
ÇÏ´Â µ¥ ÀÌ µÎ°¡Áö ¹æ¹ý¿¡ ÀÇÇؼ ÆÄÀÏÀ» ÁöÁ¤ÇÏ¸é ±× ÆÄÀϸíÀÌ CS:5C
¿¡ ÀÖ´Â FCB¿¡¼ ¾²ÀÌ´Â Çü½Ä°ú °°ÀÌ ÁÖ¾îÁö°Ô µÈ´Ù.
<Drive>´Â ÆÄÀÏÀÌ ¾²¿©Áú µð½ºÅ© µå¶óÀ̺긦 ÁöÁ¤ÇÏ¸ç ¾ÕÀÇ <Record>´Â
½á ³Ö±â ½ÃÀÛÇÏ´Â ³í¸®Àû ¹ÄÚµåÀÇ ¹øÈ£¸¦, µÚÀÇ <Record>´Â ¾²¿©Áú
¹ÄÚµå ¼ö¸¦ ³ªÅ¸³½´Ù.
##ÁÖÀÇ: ¹°¸®Àû ¹ÄÚµå¹øÈ£¸¦ °¡Áö°í Àý´ë ¼½ÅÍ¿¡´Ù ÃâÂÇÏ´Â °ÍÀº
¸Å:0100
¿¡¼ºÎÅÍ ½ÃÀ۵Ǵ ÆÄÀÏÀ» Áý¾î ³Ö´Â´Ù.
E 323C 90 90
E 3B48 90 90
E 3B4D 90 90
±× ´ÙÀ½ ¹èÄ¡ÆÄÀÏ ¾È¿¡ ¸í±âµÈ ÆÄÀϸíÀ» ÇØ´ç ÆÄÀÏÎ °íÄ¡±â¸¸ ÇÏ¸é µË´Ï´Ù.
(¿©±â¿¡¼´Â TELIX.EXE) TELIX.EXE¸¦ TELIX.EX_Î ¹Ù²Û °ÍÀº
EXE/HEXÆÄÀÏÀº µð¹ö±×¿¡¼ ÀúÀåÀÌ µÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù. ÆÐÄ¡°¡ ³¡³ª¸é
´Ù½Ã ¿ø¡´ëÎ ¸®³×ÀÓÇÕ´Ï´Ù.
¾Æ¡´Â µð¹ö±× ½ºÅ©¸³Æ® ÆÄÀÏÀ» Æ÷ÇÔÇÑ ¹èÄ¡ÆÄÀÏ ÇüÅÂÀÇ ÆÐÄ¡ ÇÁαץ ¼Ò½ºÎ
ÆÄÀϸíÀº TELIX322.BATÀÔ´Ï´Ù.
@echo off
goto batch
N TELIX.EX_
L
E 323C 90 90
E 3B48 90 90
E 3B4D 90 90
W
Q
:Batch
if not exist TELIX.EXE goto error
ren TELIX.EXE TELIX.EX_ > nul
debug < TELIX322.BAT > nul
echo Patched complete!
ren TELIX.EX_ TELIX.EXE > nul
goto end
:Error
echo TELIX.EXE not found!
:End
ÀÌ»óÀÔ´Ï´Ù.