<div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901136WjoFeDWgG4tMT9.png" width="553" height="410" alt="20151015175839_24NRHF3U_1k16_flowergirl_cga_1024_colors.png" style="border:none;"></div></div> <div><br></div> <div>이 이미지가 CGA 영상입니다. <span style="font-size:9pt;line-height:1.5;">믿겨지나요?</span></div> <div><span style="font-size:9pt;line-height:1.5;">(CGA가 뭔지 아는 분이라면 "말도 안돼!!"라고 외칠겁니다. CGA가 뭔지 모른다고요? 아래를 읽어보시면 알게 될겁니다. 후후)</span></div> <div>그런데 양덕이 이런 짓을 하고 있었더군요.</div> <div><br></div> <div><br></div> <div><br></div> <div><span style="font-size:9pt;line-height:1.5;">이야기를 꺼내기에 앞서,</span></div> <div><span style="font-size:9pt;line-height:1.5;">CGA가 무지 옛날 그래픽카드라서 모르는 분이 있을테니 약간의 사전 설명을 하겠습니다.</span></div> <div><br></div> <div> <div>CGA는 Color Graphic Adapter (컬러 그래픽 어댑터)의 줄임말로</div> <div>1981년 IBM-PC<span style="font-size:9pt;line-height:1.5;">의 출시와 함께 나온 녀석입니다.</span></div> <div><span style="font-size:9pt;line-height:1.5;">(</span><span style="font-size:9pt;line-height:1.5;">참고로 당신이 쓰고 있는 바로 그 컴퓨터가 IBM-PC 호환입니다. 아, 맥 쓰는 분은 빼고요. <strike>제가 이 글을 맥으로 쓰고 있는건 안 자랑</strike>)</span></div> <div>그래픽 카드가 엄청 길죠?</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444905934PmgVsxJMDSZzoe4YHlrvv.jpg" width="800" height="319" alt="ibm_cga.jpg" class="chimg_photo" style="border:none;"></div></div> <div>(참고로 그래픽 카드는 IBM 기준으로 CGA/MDA -> EGA -> VGA -> XGA 순으로 나오게 됩니다.)</div> <div><br></div> <div><br></div> <div><br></div> <div>16KB의 비디오 메모리를 장착하여 <span style="font-size:9pt;line-height:1.5;">(MB<strike>명박</strike> 아니고 KB<strike>국민</strike> 입니다!)</span></div> <div><br></div> <div>- 160x100 @ 동시발색수 16색</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444900887muHcYyMA1eP4jCl8ShTd.png" width="640" height="480" alt="Cga_150x100.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">- 320x200 @ 동시발색수 4색</div> <div style="text-align:left;">(0번 팔레트를 쓸 경우)</div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444900889WIjJi2RKWmeQr1Gtk.png" width="640" height="480" alt="Cga_p0.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">(1번 팔레트를 쓸 경우)</div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/14449008908MrCkTLT9SDGFeOeRrnW5bP2GMZ26g.png" width="640" height="480" alt="Cga_p1.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">(3번 팔레트를 쓸 경우)</div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444900891LKMrWJakenUPjh6vEsYqkG.png" width="640" height="480" alt="Cga_p3.png" style="border:none;"></div><br></div> <div><br></div> <div>- 640x200 @ 동시발색수 2색 (흑백 또는 다른 두 색)</div> <div><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444900888iu2fRkrHHnWMQt9prwcVnARWwzL.png" width="640" height="480" alt="Cga_640x200.png" style="border:none;"></div> <div><br></div> <div>를 나타낼 수 있습니다.</div> <div>엄청 옛날꺼이다보니 딱 봐도 영상이 조악하죠.</div></div> <div><br></div> <div><br></div> <div><br></div> <div>감이 잘 안 올거 같아서, <span style="font-size:9pt;line-height:1.5;">얘 용으로 만든 게임 화면을 걸어봅니다.</span></div> <div>대충 이런 느낌이에요.</div> <div><br></div> <div>페르시아의 왕자<strike>지</strike></div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444904399eGalVwrRIEShDoRLEkB1sZ1XRx.png" width="640" height="480" alt="prince_cga.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">고양이 (Alley cat)</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444904472UYWlfFiXzCSAgBRhi4xWjMYek.png" width="640" height="480" alt="t2D2h.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">레밍즈</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444904566RUCvsL7DvYiYlSDdcNr3FI96.png" width="640" height="480" alt="cgalemmi_001.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">위험한 데이브 (Dangerous dave)</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444904658TjmLLhHOsp9yDWy3WQ51ojMRU.png" width="640" height="480" alt="108517-dangerous-dave-in-the-deserted-pirate-s-hideout-dos-screenshot.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">피자배달 (Avoid the noid)</div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444904761u41QLtPKWqb2MBRXrUrEdh1Vd8UBrbm.png" width="640" height="480" alt="Screenshot-7.png" style="border:none;"></div><br></div> <div style="text-align:left;">고인돌 (Prehistorik)</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444905019h5andpkrmtmC7QgarAAHATUZZylIc.png" width="640" height="480" alt="CGOIN.png" style="border:none;"></div><br></div> <div style="text-align:left;">황금도끼</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444905070hrDK5RcwmDA8EOO7uMYS8IiVw5n1U.png" width="640" height="480" alt="CGOLD.png" style="border:none;"></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">커맨더 킨 (Commander keen)</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444905148sJL7a6q636AMxX4y.png" width="640" height="480" alt="keen4cga3.png" style="border:none;"></div></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">등등...</div></div></div></div></div> <div>CGA에 대해 더 자세히 알고 싶으면 여길 읽어보세요 (한국어 위키피디아) :</div> <div><a target="_blank" href="https://ko.wikipedia.org/wiki/%EC%BB%AC%EB%9F%AC_%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4_%EC%96%B4%EB%8C%91%ED%84%B0" target="_blank">https://ko.wikipedia.org/wiki/%EC%BB%AC%EB%9F%AC_%EA%B7%B8%EB%9E%98%ED%94%BD%EC%8A%A4_%EC%96%B4%EB%8C%91%ED%84%B0</a></div> <div><br></div> <div><br></div> <div><br></div> <div>위에 이미지를 보시다시피 동시에 표현할 수 있는 컬러는 끽해야 320x200 @ 4색까지입니다.</div> <div>(실은 160x100 @ 16색은 후대에 발견되어 쓰이기 시작한 변태 모드입니다. 자세한건 아래에...)</div> <div>그런데 CGA는 좀 특이한 점이 있던게,</div> <div>값비싼 전용모니터 (CGA모니터라고 부름) 뿐만 아니라 TV에 화면을 출력할 수 있게 composite 포트를 제공했습니다.</div> <div><br></div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901677if6ZjxsIInOANNGjr3d9skTNQiMF.gif" width="317" height="290" alt="COMPAQPT.GIF" style="border:none;"></div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901679DdaIAqsb2Gg9NKwATiwg9XlTpf58hu.jpg" width="600" height="289" alt="t1000_12.jpg" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>이 composite 포트를 TV에 연결하면 TV에 화면이 나오는 거 까진 좋은데,</div> <div>TV 출력을 구현하기 위해 값싼 칩을 써서 화면이 번져나오는 문제가 있습니다.</div> <div><br></div> <div>값비싼 전용모니터(CGA모니터)에 꽂으면 이렇게 말끔하게 나오는데요.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901918FLOnFZeRAQN43tCkbnRP4ZEm6aSY.png" width="640" height="400" alt="CGA_CompVsRGB_Text.png" style="border:none;"></div></div> <div><br></div> <div>TV에 꽂으면 이런 꼬라지가 됩니다.</div> <div><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901918gXVSv6w9dT3sa6qUPXamDJi.png" width="640" height="400" alt="CGA_CompVsRGB_Text-1.png" style="font-size:9pt;line-height:1.5;border:none;"></div> <div><br></div> <div><br></div> <div><br></div> <div>이건 TV에서 어떻게 번지는지를 보여주는 이미지입니다.</div> <div>위에가 전용모니터, 아래가 TV 출력입니다.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/14449020167TtPlV4FARn82T8p1A.png" width="680" height="400" alt="1k06_cga_composite_fringing_artifacts.png" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>분명 흰 픽셀인데도 위치에 따라서 색이 다르죠?</div> <div>이러한 번짐 특성을 이용하면 640x200 @ 흑백 모드에서 이런 짓이 가능합니다.</div> <div>좌측이 전용모니터, 우측이 TV 출력입니다.</div> <div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/14449022065aNoapF7AsnP3n6lPPvaLGX2d.png" width="626" height="444" alt="1k07_cga_composite_solid_colors_1.png" style="border:none;"></div></div> <div style="text-align:left;"><br></div> <div style="text-align:left;">640x200은 동시 발색수가 2색인데, 반드시 흑백만 가능한건 아녜요.</div> <div style="text-align:left;">흑적의 경우는 이렇게 됩니다.</div> <div style="text-align:left;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444902671zqZIHBEcVzvsdTdJt.png" width="624" height="494" alt="1k08_cga_composite_solid_colors_2 2.png" style="border:none;"></div><br></div><br></div> <div><br></div> <div>2색만으로도 이렇게 다채로운데,</div> <div>320x200 @ 4색을 이용하면 어떤 일이 벌어질지 대충 예상이 되죠?</div> <div>자세한 설명은 생략하고 결과만 걸어볼게요. (0번 팔레트의 경우입니다.)</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444902445rfPNhjBEtLnl3OB57xk.png" width="624" height="494" alt="1k08_cga_composite_solid_colors_2.png" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>위에서 160x100 @ 16색 모드가 있다고 했었죠? (변태 모드라고 적었죠.)</div> <div>이제 그 얘기를 해볼게요.</div> <div><br></div> <div>원래 CGA의 표준 그래픽 모드는</div> <div>- 320x200 @ 4색</div> <div>- 620x200 @ 2색</div> <div>이 전부예요.</div> <div><br></div> <div>그리고 표준 텍스트 모드는</div> <div>- 40x25 문자 @ 16색 (글자 하나 크기는 8x8 픽셀)</div> <div>- 80x25 문자 @ 16색 (글자 하나 크기는 8x8 픽셀)</div> <div>이랍니다.</div> <div><br></div> <div>얘가 딱 80x25 문자 @ 16색 모드 화면입니다.</div> <div><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444901918FLOnFZeRAQN43tCkbnRP4ZEm6aSY.png" width="640" height="400" alt="CGA_CompVsRGB_Text.png" style="border:none;"></div> <div><br></div> <div><br></div> <div><br></div> <div>그런데 CGA의 어떤 특징을 이용하면 80x25 문자 @ 16색 모드에서 8x8 픽셀의 글자를 위에 두 줄만 표시할 수 있어요.</div> <div>아래 이미지에서 노란 부분만 화면에 표시됩니다.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444903075WuiyZv4JmOexg6.png" width="638" height="224" alt="1k11_ascii_0x55.png" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>여기에 80x25 문자 모드를 세로로 잡아 늘리면 80x100 문자로 표시가 가능합니다.</div> <div>그런데 가로 80문자는 CGA의 어떤 특징을 이용하면 160으로 뻥튀기 할 수 있어요.</div> <div>이게 바로 변태 모드인 160x100 @ 16색 모드의 진실입니다.</div> <div>(한줄 요약 : 그래픽 모드가 아니라 텍스트 모드에 얍삽이를 쓴 거!)</div> <div><br></div> <div><br></div> <div><br></div> <div>이제 변태 모드를 TV 출력시의 번짐효과에 이용할 차례입니다.</div> <div>위치에 따라서 색이 달랐던거 기억하시죠?</div> <div>문자 U와 !!를 확대해 보면 한 픽셀 오른쪽으로 이동해 있는걸 볼 수 있는데 <span style="font-size:9pt;line-height:1.5;">덕분에 색도 다르게 나옵니다.</span></div> <div>왼쪽이 전용모니터, 오른쪽이 TV 출력입니다.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/14449034142deVrOYkSzvl9r37KrHT8Ii82XbvyFY.png" width="656" height="209" alt="1k12_cga_artifact_colors_ascii_0x55.png" style="border:none;"></div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444903414t3i5DRnRRMMugzRGtCWcVh.png" width="656" height="209" alt="1k13_cga_artifact_colors_ascii_0x13.png" style="border:none;"></div></div> <div><br></div> <div>1바이트 아스키 문자 중에는 이런 놈도 있는거 다들 아실겁니다<strike>(정말?)</strike> : ░ , █ (브라우저에선 아마 제대로 표시 안될거에요...)</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444903490WsJISlCxUUnP.png" width="256" height="256" alt="1k14_ascii_0xb0_0xb1.png" style="border:none;"></div></div> <div><br></div> <div>이걸 위의 2픽셀만 이용하면 요래 됩니다.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/14449038562neWIHS8AcpSAOAWLYz2CvQHnUY.png" width="680" height="413" alt="1k15_cga_artifact_colors_ascii_0xb0_0xb1.png" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>이런 얍삽이를 최대한 동원해서 나온 결과물이 바로 이겁니다.</div> <div>출처에서 이야기하길 총 1024가지 색이라고 합니다.</div> <div>위는 TV출력, 아래는 전용모니터 출력입니다.</div> <div> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201510/1444903897B7fMUuntE7fKsyBuAUnab3pCVppU1iLV.png" width="660" height="820" alt="1k16_flowergirl_cga_1024_colors.png" style="border:none;"></div><br></div> <div><br></div> <div><br></div> <div>어으... 양덕 아주 소름돋네요.</div> <div>TV 출력시의 번짐현상은 싸구려 칩을 쓰는 바람에 발생한, 실은 버그에 가까운 특성인데</div> <div>이걸 이용해서 저런 짓을 할 줄이야!</div>
이 게시물을 추천한 분들의 목록입니다.
[1] 2015/10/15 19:45:22 121.182.***.77 넌이미털렸다
260651[2] 2015/10/15 19:46:04 222.99.***.245 진산월
137733[3] 2015/10/15 19:46:12 210.97.***.90 결코다시지름
411833[4] 2015/10/15 19:46:17 175.113.***.78 이웃집패트로
349383[5] 2015/10/15 19:47:22 182.250.***.7 달나라토끼
29097[6] 2015/10/15 19:54:01 218.147.***.127 스톰체이서
563337[7] 2015/10/15 19:54:18 119.198.***.89 239rf9f
532115[8] 2015/10/15 19:57:02 183.108.***.50 쉬룐
261624[9] 2015/10/15 20:02:58 1.225.***.159 TSHN
273365[10] 2015/10/15 20:16:15 211.207.***.4 바이블블랙
276075
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.