2026년 6월 5일 금요일

LG L2010P 모니터의 백라이트를 LED로 교체

제가 이 모니터를 2003년에 구입했었는데요. 20.1인치 1600 x 1200 해상도라서 메인 PC용으로 아주 좋았습니다요.

paraMSX를 풀스크린으로 띄우면 왕도트를 생생하게 볼 수 있었죠. ㅎ.ㅎ


수년을 쓰다보니 CCFL 백라이트가 많이 어두워졌는데요.

2008년쯤... 메인 PC의 모니터를 40인치 FHD로 갈아타면서, L2010P는 서브 모니터로 전락했습니다.

그러다 2013년에 OCMC가 나온 이후로는 OCMC 전용 모니터로 계속 쓰고 있었네요.

사실 1년에 서너번 켜는 게 전부이긴 했습니다만...ㅋ


.

.

.

그렇게 또 10여년이 흘렀네요.

어느날 갑자기!

어두워진 CCFL 백라이트를 LED 백라이트로 교체해보자! 라는 생각이 들더라구요.

(작업실패하면 걍 버리기로ㅋ)


알리에서 LED바 길이를 조절할 수 있는 백라이트를 구매했습니다.



모니터를 뚜따하고 철판을 모두 분리하면 LCD 패널이 나타납니다!

패널 모델은 LM201U04으로 나오네요.




근데 나사를 아무리 찾아봐도 CCFL을 교체할 수 있는 부분이 안보이네요.

비슷한 패널의 분해 영상을 찾아보니, LCD 패널을 완전히 열어야 CCFL을 교체할 수 있더라구요.

으어~~ 이거 처음해보는 작업인데 실패할 확률이 높아서...포기!!

.

.

는 아니구요.


패널 상단과 하단의 CCFL이 있는 부분의 케이스(플라스틱)을 인두로 녹여서 뜯은 후, CCFL을 꺼냈습니다.

CCFL 좌우의 한쪽은 고무패킹만 있구요. 반대쪽은 전선이 함께 나옵니다. (전선 사진을 깜박했네요)



CCFL과 전선이 프레임에 감겨있기 때문에 그냥 CCFL을 당기면 유리가 깨지더라구요. (하나 깨먹었...ㅋ)

고무 패킹을 뜯으면 전선 3개가 보이는데요. 이걸 다 끊으면 CCFL만 꺼낼 수 있어요.

전선 자체는 프레임에 접착되어 있는지, 당겨도 움직이질 않네요.

형광등 3개만 쏙 뽑아낸 모습!



백라이트 PCB를 패널의 폭에 맞춰서 잘라주었어요.

판매자 설명을 보면 LED 3개씩 자를 수 있다고 되어있구요. PCB에 가이드라인이 있습니다.

LED 바를 밀어넣고 글루건으로 대~~충 고정했습니다.



모니터의 CCFL용 인버터 보드는 필요없으니 제거했구요.

LED 드라이버 보드를 모니터 메인보드에 연결합니다.

드라이버 보드에 선이 4개가 있는데, 전원 12V, GND 및 ENABLE 신호(ON/OFF) 3개만 연결했어요.

DIMMING 신호를 연결안하면 그냥 최대 밝기로 나오는 듯 했습니다.

메인 보드의 커넥터에서 해당 신호핀에 납땜합니다.



조립은 분해의 역순이겠구요. 케이스 닫기 전에 파워ON 테스트를 해보니 잘 나오네요.

OCMC를 연결해서 켜보니, 오우~~ 완전 새 모니터가 되었네요! ㅎ.ㅎ

색감이 좀 퍼렇게 나와서, RGB 게인 조절을 좀 해야됐습니다.


아래는 OCMC를 연결한 모습입니다.



아래는 펜3 노트북에 연결한 모습입니다.



그럼, 이만...


2026년 5월 31일 일요일

[IPS] King's Valley II - PAC S-RAM & LED Visualizer patch (2026-05-31)

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

King's Valley II - PAC S-RAM & LED Visualizer patch (2026-05-31)

  By Yeongman Seo <sharksym@hitel.net>

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


Download: Kings_Valley2_-_PAC_SRAM_and_LED-VIS_patch_20260531.zip


@ 원본 롬파일


King's Valley II - The Seal of El Giza (1988)(Konami)(JP)[RC-761].rom

SHA1 = 5ec8811254dc762c6852289a08acf22954404f0d

MD5  = dfcaf859e699f8995d054622c5a561ba



@ PAC S-RAM 패치


파일명: VALLEY2_PAC_S-RAM.ips


유저 입력(패스워드) 방식의 세이브/로드를 PAC S-RAM 세이브/로드로 변경해줍니다.


로드   -> 바뀐 시작메뉴의 'PAC LOAD'로 데이터를 로드합니다.

세이브 -> 스테이지 클리어 시 진행상태, HI-SCORE 및 SCORE가 자동으로 세이브됩니다.


참고)

본체에 PAC S-RAM이 존재하지 않으면, 메인램을 이용하며 세이브/로드가 가능합니다.

이 경우, 전원을 끄면 데이터가 사라집니다.



@ LED Visualizer 패치


파일명: VALLEY2_LED_Visualizer.ips


PAC-V 또는 XII-V를 위한 비주얼라이어를 추가합니다.

PSG 3채널 + SCC 5채널을 표시합니다.



@ 사용법


Luna IPS 등의 패치 툴을 이용하여, 원본 롬파일에 *.ips 파일을 적용합니다.

두 패치를 모두 적용할 수 있습니다. (순서 상관없음)


패치 적용 후, 롬 파일의 사이즈가 변하지 않습니다.





2026년 5월 28일 목요일

M File Manager v4.9 for MSX-DOS2

Download: M_v4.9_20260528.zip


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

    M File Manager v4.9 for MSX-DOS2 (2026-05-28)

        By Yeongman Seo <sharksym@hitel.net>

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


* UPDATE


  @ 기능 변경/개선


  - TAB키가 연속으로 입력되지 않도록 변경


  - IMSP의 악기(INS) 버퍼 늘림 (48개 -> 72개)


2026년 5월 24일 일요일

PAC-M 레이블과 흰색 케이스

원래 신청 글에서는 검정 케이스로 하기로 했었는데요.

막상 인쇄된 레이블을 붙여보니, 검정에 빨강이 좀 안맞네요. 많이 칙칙합니다 ㅎ.ㅎ;

그래서 흰색 케이스를 쓰는 걸로 변경했어요.

개인 취향이니... 혹시 맘에 안드시더라도 양해부탁드립니다~ ㅎ.ㅎ/



아래는 SLT-X에 꽂은 모습입니다.




2026년 5월 16일 토요일

PAC-M 제작 #5 - MSX 도우미

PAC-M의 BIOS는 PAC 데이터를 관리하는 용도의 루틴으로 이루어집니다.

보통은 PACM.COM, MMCSD.COM 등의 프로그램에서 호출이 되겠죠.


근데 이 코드가 워낙 사이즈가 작아서, BIOS 영역으로 할당된 FRAM의 여유공간이 꽤 있어요.

같이 쓸 수 있는 적당한 프로그램이 있을까 찾아보니... MSX-AID가 있더라구요.

약 10KB의 작은 프로그램입니다. FRAM에 통합하기에 딱 좋은 사이즈네요!



CALL HELP 명령으로 아래처럼 도움말을 볼 수 있습니다.



아래는 변수 리스트를 보여주는 CALL VARLIST 명령을 쓴 모습이네요.

변수명과 해당 변수가 쓰인 BASIC 행번호가 표시됩니다.



아래는 CALL MON 명령으로 간단한 모니터를 실행한 모습입니다.

BASIC에서 코딩 중, 메모리 확인할 때 편하게 쓸 수 있네요.




기본 기능은 이렇게 마무리되겠습니다!

즐거운 주말을 보내세요~~ ㅎ.ㅎ/


2026년 5월 15일 금요일

PAC-M 제작 #4 - PAC export 및 import

PAC-M 내부에 저장된 PAC 데이터는 팩커맨더의 저장파일(*.PAC) 파일로 export 가능합니다.

반대로 *.PAC 파일을 PAC-M 내부로 import 하는 것도 가능합니다.


@ Export


'PACM PAC-이름 /E' 명령으로 데이터를 *.PAC 포맷으로 디스크에 저장합니다

예) PACM YS2_K.DSK /E

아래 사진처럼 YS2_K.PAC 파일이 생성되겠습니다.




@ Import


'PACM PAC-이름 /I' 명령으로 디스크의 *.PAC 파일을 읽어서 PAC-M(FRAM)에 다운로드합니다.

예) PACM YS2_K.DSK /I

아래 사진처럼 YS2_K.PAC 파일을 읽어서 PAC-M에 다운로드합니다.

다운로드가 완료되면 재부팅을 해줍니다. 부팅 시, 싱크 작업을 통해 FlashROM에 백업됩니다.



(주의)

Export/Import에 사용되는 "PAC-이름"은 PAC-M에 저장된 이름을 의미합니다.

통상적으로 MMCSD.COM에서 게임롬/디스크를 실행했다면 해당 이름으로 저장됩니다.

예) YS2.DSK, QUINPL.DSK, FAMICLE.ROM 등


PACM /V 명령으로 현재 저장된 PAC의 리스트를 볼 수 있으니, 기억하세요!



그럼, 다음편에서 이어지겠습니다! ㅎ.ㅎ


2026년 5월 14일 목요일

PAC-M 제작 #3 - 유저롬

PAC 백업용으로 들어있는 플래쉬롬은 8MBytes입니다.

백업에 실제 사용되는 영역은 7MB이구요.

남은 1MB를 유저롬으로 할당해놓았습니다. (정확히는 896KB입니다.)


참고로 제가 만든 기기들이 대부분 8MB 플래쉬롬을 쓰고 있는데요.

ASCII 16K 등의 범용 매퍼로는 4MB밖에 커버가 안되니, 전용의 매퍼를 만들어 쓰고 있습니다.

이번에는 MSXdev에서 몇몇 게임들이 사용한 ASCII16-X를 넣어보았어요.


ASCII16-X는 고용량 롬 카트리지를 위해, 뱅킹 레지스터가 8bit에서 12bit로 늘어났습니다.

최대 64MB의 게임 롬팩을 만들 수 있다는 얘기죠.


만약 896KB를 초과하는 롬을 다운로드하면, PAC 백업 영역을 사용하지 못하게 됩니다.

PAC-M을 PAC처럼 써야한다는 의미입니다 ㅎ.ㅎ

따라서 이 때는 PACM /S 명령으로 데이터 전체를 백업한 후, 게임롬을 넣어서 쓰고요.

다시 원래의 PAC-M 모드로 돌아가려면, PACM /L 명령으로 데이터를 원복하면 되겠습니다.


유저롬을 넣더라도 그냥 부팅하면 PAC 카트리지로 동작합니다.

유저롬을 실행하려면, 부팅 시 커서 DOWN 키를 누르고 있으세요.

커서 RIGHT를 함께 누르면 turboR 고속모드로 전환되니 참고하시고~


유저롬 크기가 896KB 이하라면, PAC-M 기능을 그대로 유지하니까...

자낙EX(128KB), 알레스트(256KB), R-TYPE 스크롤패치(512KB), 프리뷰 나오는 멀티롬(896KB)

등을 활용하면 좋습니다요~ ㅎ.ㅎ



요약하면

- 896KB 이하의 ASCII 16K 메가롬을 다운로드해서, PAC 멀티플렉서 기능과 유저롬 기능을 함께 활용

- 더 큰 용량의 롬을 유저롬으로 등록하면, 일반 PAC (8KB) 모드로 동작함

- PACM /L 명령으로 기본 멀티플렉서 모드로 원복 가능



아래는 기본으로 들어있는 '프리뷰가 나오는 멀티롬'입니다.




8MB 용량의 네온 호라이즌 롬을 다운로드 하는 모습입니다.




네온 호라이즌 게임이 실행되었네요!




만약 대용량 유저롬을 넣어서 쓰는 경우는, PAC-M의 데이터 관리 기능은 정지됩니다.

PACM /V 등의 명령 실행 시, 아래처럼 에러 메시지가 나와요.

원래의 PAC-M 모드로 돌아가려면, PACM /L 명령으로 데이터를 복원해야 합니다!




그럼, 다음편에서 이어지겠습니다! ㅎ.ㅎ


2026년 5월 13일 수요일

PAC-M 제작 #2 - PAC 데이터 관리

MMCSD.COM으로 게임(롬, 디스크)을 실행하면 PAC 데이터 생성, 백업은 자동으로 이루어집니다.

통상적으로는 특별한 관리가 필요하지 않지만, 알고 있으면 좋은(?) 기능을 알려드려요.


먼저 YS2(YS2.DSK 파일)를 실행합니다.

PAC-M의 부트 메시지에서 YS2.DSK라는 이름으로 PAC 데이터가 생성된 것을 볼 수 있네요.



게임 세이브 메뉴에서 S-RAM을 선택하면 PAC으로 세이브됩니다.

재부팅(또는 전원 껐다 켜기) 시, "Syncing...Ok" 메시지를 볼 수 있습니다.

현재 버퍼(FRAM)의 데이터를 FlashROM에 다운로드해서 데이터를 동기화 하는 작업입니다.



DOS2에서 PACM.COM 툴을 이용하면,

현재 플래쉬롬에 저장된 PAC 데이터 파일들을 보거나 삭제할 수 있습니다.


아래는 PACM /V 명령으로 리스트를 출력 후,

PACM YS2.DSK /D 명령으로 FlashROM 내의 PAC 데이터 파일을 삭제하는 모습입니다.



PAC-M 내부에 최대 114개의 PAC 데이터를 생성할 수 있으니, 참고하세요.


그 외, 데이터 전체를 한번에 백업하거나 복원하는 기능도 들어있습니다.


PACM /S 명령으로 백업하면, 약 2MB 용량의 PACM.DAT 파일이 생성됩니다.

PACM /L 명령으로 이 데이터를 복원(로드) 할 수 있어요. 아래 사진 참고요~




그럼, 다음편에서 이어지겠습니다! ㅎ.ㅎ


2026년 5월 11일 월요일

PAC-M 제작 #1 - 여러개의 PAC을 하나로!

[서론]


SLT-Turbo를 쓰면서부터 PAC-V는 본체(GT)의 슬롯에 장착되어 LED 비주얼라이저로 쓰이고 있습니다.

SLT-X에 꽂아서 쓸 PAC(S-RAM) 대용품을 만들까... 생각을 좀 해봤는데요.


PAC을 사용하는 게임들은 약 40개 정도로 그리 많지 않습니다.

하지만, 일단 PAC이 있으면 꽤 편리합니다. 단지 관리하는 것이 상당히 귀찮아요.


데이터가 충돌하지 않도록 각 게임에서 사용되는 데이터 블럭을 기억하는 것도 귀찮고.

경우에 따라서는 디스크에 백업파일(*.PAC)로 백업/복구 하는 과정도 필요하겠습니다요.


.

.

.


그래서, 카트리지 하나로 여러개의 PAC을 쓰는 효과를 내는 기기를 만들어봤습니다.



[본론]


주기능을 간단히 설명하면...

MMC/SD로 게임을 실행할 때, 해당 게임의 이미지(ROM 또는 DSK) 파일을 로딩하게 되는데요.

이 이미지 파일명으로 구분이 되는 PAC 데이터 8KB를 분리해서 생성/관리하는 것입니다.


사용자 입장에서는 그냥 V3, V4로 게임을 실행하는 방법은 동일하지만,

PAC-M은 거기에 맞춰 자동으로 S-RAM 데이터가 스위칭되는 것이죠.

총 114개의 PAC 카트리지가 존재하는 것과 동일한 효과입니다.


실제 보드는 FRAM과 FlashROM의 조합으로 구성됩니다.

FRAM은 런타임 버퍼로 PAC(S-RAM)처럼 동작하고,

FlashROM은 각 게임(파일명)에 맞춰 데이터 백업/복구 하는 용도로 쓰입니다.


PAC-M을 슬롯에 붙박이로 꽂아두면, 편하게 쓸 수 있겠습니다!

제가 일주일 쯤 써보니, 진짜 편하긴 하더라구요.

귀찮은 아자씨들에게 평화로운 게임 환경을! ㅎ.ㅎ/


게임 실행 시, 사용자에게 부가적인 작업을 요구하지 않습니다.

아래 사진은 V4에서 QUINPL.DSK를 실행한 모습인데요.

PAC-M에서는 같은 이름의 PAC 카트리지로 설정되는 것을 볼 수 있습니다.




실제 동작하는 모습은 아래 영상으로 확인해보셔요.




현재 보드는 테스트용으로 만든거라서, 나중에 정식 버전이 나오면 보여드리겠구요.


그럼, 다음편에서 이어지겠습니다! ㅎ.ㅎ


2026년 4월 28일 화요일

SLT-Turbo - BIOS & Tool v2.12

 


Download: 20260428_SLT-Turbo_Tool_v212.zip

--------------------------------------------------
SLT-Turbo(tm) - BIOS & Tool v2.12 (2026-04-28)
    By Yeongman Seo <sharksym@hitel.net>
--------------------------------------------------

[ 변경 부분 ]

- 부트 로고가 추가되었습니다.
  SLT-Turbo가 부팅을 준비하는 구간에서 잠깐 보여집니다.

- 부트 금지 기능이 추가되었습니다.
  부팅 시, Z키를 누르고 있으면 SLT-Turbo disable됩니다.
  본체의 슬롯에서 MMC/SD가 인식되면 SLT-Turbo disable됩니다.

  부트 금지 상태에서는 로고가 표시되지 않습니다.
  소프트 리셋을 하는 경우에도 금지 상태가 유지됩니다.


[ BIOS & Tool ]

- BIOS 롬

  GT 모드 및 X2 모드 BIOS가 통합되어 있습니다.
  SLTT /U 명령으로 업데이트합니다.


- FontPack 폰트롬

  CP949 및 Unicode 폰트를 업데이트합니다.
  FontPack v2용 8MB 폰트롬을 사용하면 됩니다.
  예) SLTT FONTPACK.ROM


- 시스템 폰트롬

  KANJI_P.FNT  -> 파나소닉 Kanji 폰트
  KANJI_S.FNT  -> 소니 Kanji 폰트
  HANGUL_D.FNT -> 대우 한글/한자 폰트
  HANGUL_J.FNT -> 둥근모 한글 및 한자 폰트

  GT 모드용 Kanji 폰트(JIS1/2)를 업데이트합니다.
  예) SLTT KANJI_P.FNT /K

  X2 모드용 한글/한자 폰트를 업데이트합니다.
  예) SLTT HANGUL_J.FNT /H



[ BIOS 업데이트 가이드 ]

1. SLTT.COM, SLTT.OVL 두개 파일을 SD카드에 복사.
   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)

2. SLTT /U 실행

3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.

4. 다운로드 완료 후 재부팅.

5. 끝

2026년 4월 24일 금요일

SLT-Turbo v2.1 - 2차 제작 완료



드디어... 2차 제작도 완료되었네요!

지난 6개월간 납땜하고 테스트하느라 고생했는데, 이제 다른 프로젝트로 넘어갑니다~ ㅎ.ㅎ/


2026년 4월 20일 월요일

R-Type 부드러운 스크롤 및 뮤직롬 패치 실행 (feat.SLT-Turbo)

사에바료님의 부드러운 스크롤 패치를 써보았습니다.

패치는 아래 사에바료님의 블로그에서 받으세요.

https://blog.naver.com/saebaryo/224257607605

R-Type_Smooth Scroll Patch_v0.7.zip


아시다시피 R-Type은 MusicROM 디텍션을 위한 슬롯 검색코드에 버그가 있는데요.

GT 및 SLT-Turbo에서 FM 사운드를 듣기 위해 MusicROM 디텍션 패치를 만들어보았습니다.

Download: R-Type_MusicROM_patch_20260419.zip


사에바료님의 '부드러운 스크롤 패치'를 먼저 적용 후, '뮤직롬 패치'를 적용하시면 되겠습니다.


아시다시피(2) R-Type에서 FM 사운드가 동작하면 좀 느려지는데요.

turboR의 고속모드를 쓰면 속도가 느려지는 것을 막을 수 있습니다.


GT에서 실행해보니 스크롤패치가 적용된 상태에서는 화면 상단부분의 스크롤에 조금 문제가 있네요.

요건 사에바료님의 패치 설명서에 해당 이슈가 언급되어있습니다.


혹시 SLT-Turbo의 고속모드에서는 괜찮으려나 싶어서 한번 돌려보니, 잘 되는군요! 예이~~ ㅎ.ㅎ/


결론: 부드러운 스크롤 및 뮤직롬 패치를 적용 후, SLT-Turbo에서 고속모드(MMCSD /T 옵션)로 구동하면 OK


2026년 4월 18일 토요일

오랜만에 Xak 한글판을 실행해보았어요 (feat.SLT-Turbo)


SLT-Turbo 동작 테스트하면서 영상을 찍어보았습니다.

MoonBase의 PCM 드럼을 켠 상태입니다. 오프닝과 BGM 서너개를 감상해보셔요~ ㅎ.ㅎ/




2026년 4월 15일 수요일

MMC/SD Drive V3/V4 - BIOS & Tool v5.81

Download: 20260415_MMCSD_Drive_V3_V4_BIOS_Tool_v581.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.81 ]


- FDD_EMU


  디스크 루틴 개선

  -> 마이크로캐빈 게임에서 발생하는 로딩 지연 개선



- MV2_PLAY


  프레임 싱크 개선 및 빨리감기(RETURN 키) 지원 추가




[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행 또는 MMCSD /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


5. 끝



2026년 4월 2일 목요일

M File Manager v4.8a for MSX-DOS2

 


Download: M_v4.8a_20260402.zip

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

    M File Manager v4.8a for MSX-DOS2 (2026-04-02)

        By Yeongman Seo <sharksym@hitel.net>

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


* UPDATE


  @ 기능 변경/개선


  - 모든 파일 선택(SHIFT + SPACE) 시,

    드라이브 항목이 함께 선택되는 현상 수정.



2026년 3월 26일 목요일

[모니터] LCD 화면에 스캔라인 넣기

[서론]


아마 제목 때문에 Scanline Eraser를 떠올리신 분이 계실지도 모르겠네요.

2011년에 만든 물건이라 잊으신 분들이 더 많겠습니다 ㅎ.ㅎ

https://sharksym.blogspot.com/2011/02/scanline-eraser.html


이번에는 LCD 모니터(TV SCART)에 CRT 스캔라인과 비슷한 기능을 넣어보았습니다.


제가 메인으로 쓰고 있는 17인치 LCD가 있습니다. GT에 항상 연결된 상태입니다!

2005년부터 쓰던 물건이라 해상도가 1280 x 768로 좀 떨어지긴합니다요.


보통 외장 업스케일러를 쓰시는 분들을 보면,

주로 레트로 게임기의 240p, 480p 화면을 정수배 스케일링 + 스캔라인 필터를 사용하는데요.

1440p인 QHD 또는 2160p의 UHD 모니터가 주로 쓰이더라구요.


TMS9918은 상하 테두리(BD)를 제외하면 메인 화면은 192라인입니다.

V9938/9958은 테두리를 제외한 기본 화면은 212라인 + 16라인(수직 쉬프트) = 228라인이구요.

오버스캔 트릭을 쓰면 240라인을 모두 쓸 수 있죠.


MSX2 이상의 기종에서 정수배 스케일링을 쓰려면 QHD 이상으로 가야하는데...

제가 쓰는 구닥다리 768p 모니터에서는 192라인 x 4 = 768라인이 됩니다.

MSX1 화면을 정수배로 업스케일 후 스캔라인 효과를 먹이는 건 가능하다는 얘기죠.

초기 MSX1용 게임들을 즐기는 경우에 유용하게 쓸 수 있겠습니다 ㅎ.ㅎ



[본론]


제가 쓰는 LCD는 2005년에 직접 개발했던 펌웨어가 적용되어있습니다.

지금도 코드 빌드하고 다운로드 하는 건 별 문제없이 할 수 있어요.

먼저 코드를 수정해서, 192라인을 4배 스케일링을 해서 픽셀을 딱 맞춰 놓습니다.


그럼 이제 스캔라인 효과를 만들어야하는데요.

단순히 검정 라인으로 표시한다면, 프레임 버퍼의 각 라인 사이에 빈 라인을 두면 쉽게 구현됩니다.

1번 라인 캡쳐 + 라인 메모리 스킵(검정라인) +

2번 라인 캡쳐 + 라인 메모리 스킵(검정라인) +

...

192번 라인 캡쳐 + 라인 메모리 스킵(검정라인)


이렇게 되겠죠? 192라인을 캡쳐하면 실제 데이터는 384라인이 되겠구요.

이걸 그대로 2배 스케일링해서 출력하면 됩니다. 간단하죠?

근데 이렇게 하면 조금 재미없으니, 다른 방법으로 해보아요~


이번에는 입력된 라인을 연속으로 캡쳐 후 4배 스케일링 하도록 둡니다.

이 상태에서 업스케일된 각 4개 라인의 마지막 라인과, 인접한 다음 4개 라인의 첫 라인을 지워줍니다.

보통 업스케일을 하면 각 픽셀이 보간(인터폴레이션) 되기 때문에 경계면 양쪽을 함께 지워야 이쁘게 나와욤.

참고로, 비디오 칩에 따라서는 보간을 끄고 픽셀을 정수배로 늘리는 방식도 있습니다. 보통 라인 더블러가 이런식이죠.


별 내용 아닌데, 글로 적으려니 힘드네요. 아래 스샷을 보시죠!

각 블럭이 실제 화면의 1픽셀입니다.



이해되시죠? ㅎ.ㅎ

사실 위에 설명했던 내용은 20세기 에뮬인 paraMSX에 그대로 적용되어 있습니다.


.

.

.

그럼 이걸 LCD 펌웨어에 어떻게 적용하느냐가 문제인데요.

보드에 들어있는 칩은 업스케일 후 별도의 버퍼없이 출력단(LVDS)으로 넘어가기 때문에,

밝기 낮춘 픽셀을 추가로 그려넣을 수는 없습니다.

대신 이런 비디오 칩은 오버레이 기능이 들어있는데요.

비디오 채널 외에 배경 또는 그래픽 데이터를 오버레이 할 수 있습니다.

특히 그래픽 레이어는 알파블렌딩이 가능합니다.

대게 OSD를 표시할 때 쓰입니다. 메뉴, 채널 정보 등등...


그럼, 그래픽 레이어에 투명색 2라인 + 검정색 2라인 + ... 반복해서 768라인을 채워놓고요.

이걸 비디오 위에 오버레이하면 되겠죠?


아래 스샷들은 GT의 출력입니다. 참고하세요.


MSX 부팅로고와 알레스트2 타이틀 화면은 이렇게 나옵니다.




텍스트도 보시죠. 잘 보이도록 확대했어요.



아래는 화면의 절반(윗부분)만 스캔라인 효과를 적용한 모습입니다.

두 부분의 차이가 잘 보이네요.



그리고, 알파블렌딩 값은 리모컨으로 변경(10단계)할 수 있도록 해놨습니다.

50% 정도 먹인 상태가 적당하네요.


그럼, 즐 MSX 하셔요~ ㅎ.ㅎ/


2026년 3월 23일 월요일

WAU - Big B Radio 스트리밍 사이트

 


Download: PLS_Big_B_Radio.zip

Big B Radio라는 K-Pop, J-Pop 스트리밍을 해주는 서버를 찾았습니다.

M에서 PLS 파일로 MP3 스트리밍을 하려면, WAU가 필수입니다! ㅎ.ㅎ


2026년 3월 10일 화요일

MMC/SD Drive V3/V4 - BIOS & Tool v5.80

Download: 20260310_MMCSD_Drive_V3_V4_BIOS_Tool_v580.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.80 ]


- FDD_EMU


  SLT-Turbo용 DiskROM 패치 지원 (Shadow RAM BIOS)

  /DT 옵션 사용, V4는 SCC-I 128KB 모드로 전환됨



[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행 또는 MMCSD /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


5. 끝


SLT-Turbo 제작 #20 - FDD_EMU

본체에 내장된 FDD는 SLT-Turbo에서 직접 접근하는 것이 불가능합니다.

파나소닉의 MSX2+ 및 turboR 기종들은 본체의 FDD가 SLOT 3-2에 위치하는데요.

SLT-Turbo의 GT 모드에서도 마찬가지로 SLOT 3-2에 디스크롬이 존재합니다.


만약 SLT-Turbo에서 디스크 읽기 명령이 들어오면 아래의 순으로 작업이 이루어집니다.


1. SLT-Turbo 디스크롬에서 본체로 디스크 읽기 커맨드 전송

2. 본체는 커맨드 수신 후, FDD 디스크롬의 루틴을 구동하여 공유 메모리로 데이터 로딩

3. 본체에서 SLT-Turbo로 커맨드 완료 알림

4. SLT-Turbo에서 공유 메모리의 데이터를 원래 목적지(Target addr)로 복사


이미 SLT-Turbo를 꽂고 본체의 FDD를 구동해보신 분도 계실텐데요.

암튼 여기까지는 기본기능이니까, 바로 본론으로 넘어갑니다~~ ㅎ.ㅎ/


아마 본체에 장착된 FDD는 사용할 기회가 많지 않다고 봅니다.

그래서 디스크 이미지(DSK 파일) 에뮬이라도 넣으면 좀 쓸모가 있으려나? 생각되더라구요.


사실 이걸 처음부터 생각한 것은 아닙니다.

어차피 MMC/SD V4가 있으니 DSK 에뮬 자체가 필요할 이유는 딱히 없죠 ㅎ.ㅎ

.

.

.


며칠 전, 오랜만에 SCMD로 듀얼 SCC-I 사운드를 들어보려고 했는데요.

SLT-Turbo를 쓰다보니, 이젠 SCMD 구동에 필요한 기기 구성을 하지 못하게 되었더라구요.

SCMD는 SCC-I 사운드 카트리지 2개가 기본 슬롯 2개에 따로 장착이 되어야 제대로 쓸 수 있습니다.

프로그램 자체의 제약이라고 할 수 있는데요.


예전에는 SLOT 1-0, 2-0에 SCC-I를 하나씩 꽂고, 개조한 GT의 SLOT 0-1에 MMC/SD를 꽂으면...

SCMD를 구동할 수 있는 환경이 되었죠.

SLT-Turbo는 SLOT 0-x, 3-x가 모두 기기에 내장되어있고, 외부 커넥터는 SLOT 1, 2만 사용가능합니다.

따라서, SCMD를 쓸 때는 본체의 FDD를 강제로 써야하는 상황이 된거죠.

오랜만에 2DD로 부팅해서 SCMD를 돌려보니, 인내심의 한계가 오네요ㅋ


다른 방법을 생각해봅니다!


SLOT 1-0 = T-Wave    (SCC-I 128KB)

SLOT 2-0 = MMC/SD V4 (SCC-I 128KB 모드)

SLOT 3-2 = DiskROM (본체 FDD 연동)


위의 상태에서 내장 디스크롬(SLOT 3-2)을 구동할 때,

본체의 FDD 대신 SLOT 2-0의 V4를 잠깐 디스크 모드로 변경해서 구동하는 방법입니다.


SCC-I 메모리 내에서 코드(ISR 관련 등)가 동작하고 있더라도,

디스크 관련 처리 시 인터럽트를 잘 막아주면(disable), V4의 동작모드를 전환해도 괜찮을 것 같더라구요.


만약 SLT-Turbo에서 디스크 읽기 명령이 들어오면, 디스크롬에서는 아래의 순으로 작업이 이루어집니다.


1) 인터럽트 금지 후, V4를 디스크 모드로 변경

2) V4의 디스크 루틴을 호출하여 디스크 R/W 처리

3) V4를 SCC-I 모드로 변경 후, 인터럽트 금지 해제


이 때, V4는 2DD_EMU 모드(DSK 이미지)로 동작할 수 있도록 미리 셋업이 되어있어야 합니다.


결국 S/W는 SLOT 3-2의 디스크 루틴을 사용하지만, 실제로 동작하는 디스크는 SLOT 2-0의 V4가 되겠네요.


물론 이 방법은 약간의 제약은 있습니다.

보통 DOS2에서는 디스크 액세스 시, 목적지(target) 주소가 항상 DOS2의 데이터 세그먼트로 설정됩니다.

그러니까 항상 메모리 매퍼 세그먼트가 된다는 얘기죠.


근데, DOS1에서는 메모리가 아닌 슬롯도 목적지 주소로 쓸 수 있습니다.

만약 주소 영역이 SLOT 2-0 슬롯이 된다면, 데이터를 제대로 로딩할 수가 없겠죠.

S/W에서는 디스크롬(SLOT 3-2) -> 목적지 메모리(SLOT 2-0)로 로딩했는데,

실제로는 FDD_EMU가 동작하면서, SLOT 2-0이 메모리(SCC-I SRAM)가 아닌 디스크롬으로 변경되니까요 ㅎ.ㅎ


만약 S/W에서 항상 메인 메모리(또는 V4가 아닌 슬롯)로 로딩하는 경우는 안전하게 쓸 수 있겠습니다.

흐흠... 원래 목표(?)였던 SCMD에서는 제대로 동작할까요?


영상으로 직접 확인하시죠. OUT RUN의 Passing Breeze 음악도 즐기면서요~ ㅎ.ㅎ/





PS.

사실 이 SLOT 3-2 FDD_EMU 모드는 이미 있던 기능이었습니다.

MMCSD.COM을 실행할 때, turboR에서는 /DT 옵션을 쓸 수 있는데요.

DOS2의 디스크 액세스 시 CPU 모드 전환하는 코드를 패치해서, V4의 디스크를 대신 구동하는 방식이었는데...

이 방법은 DOS1에서는 쓸 수 없어서, 그닥 활용되지는 못했습니다.


이번에 구현된 FDD_EMU 모드는,

SLT-Turbo의 BIOS Shadow 영역(RAM)의 DiskROM 코드를 직접 변경하는 방식이라서,

DOS1, DOS2 환경에 상관없이 모두 동작합니다.


그리고, V4의 부트메뉴에서 S키를 눌러서 SCC-I 128KB 모드를 설정하는 게 아닌,

MMCSD.COM 툴에서 자동으로 설정이 되니까 더 편하게 쓸 수 있어요.

위의 영상에서도 보셨겠지만, /DT 옵션 하나만 적용하면 끝입니다 ㅎ.ㅎ


그럼, 이만...


2026년 2월 21일 토요일

MMC/SD Drive V3/V4 - BIOS & Tool v5.79



Download: 20260221_MMCSD_Drive_V3_V4_BIOS_Tool_v579.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.79 ]


- MV2 Player


  립싱크 개선 (오디오 딜레이 추가)

  PAC-V 및 XII-V 비주얼라이저 지원 (본체쪽 기기)



[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행 또는 MMCSD /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


5. 끝




2026년 2월 18일 수요일

M File Manager v4.8 for MSX-DOS2

 


Download: M_v4.8_20260220_fixed.zip

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

    M File Manager v4.8 for MSX-DOS2 (2026-02-20)

        By Yeongman Seo <sharksym@hitel.net>

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


* UPDATE


  @ 기능 변경/개선


  - FDD 액세스 시 오동작 현상(리부팅 등) 수정.

    디스켓 교체 시 인식 안되는 현상 수정.


  - GT에서 BASIC CALL MUSIC 명령 후 복귀 시 멈추는 현상 수정.

    MIDI 타이머 인터럽트 처리 관련 문제입니다.


  - CAPS LOCK 키 동작 개선.

    문자열 입력 모드와 상관없이 CAPS LOCK 키입력이 가능합니다.


2026년 2월 10일 화요일

[WIN] MMCSD_AVGEN v1.12

 


Download: MMCSD_AVGEN_v1.12.zip


MMC/SD Drive(tm) - A/V Generator v1.12

  By Yeongman Seo <sharksym@hitel.net>



* 변경 내용


  @ /Mn 옵션 추가


    /M1: Video 12fps, Audio 11.3kHz PCM


    /M2: Video 15fps, Audio 128kbps MP3

         SLT-Turbo + WAU 전용



2026년 2월 9일 월요일

MMC/SD Drive V3/V4 - BIOS & Tool v5.78


Download: 20260209_MMCSD_Drive_V3_V4_BIOS_Tool_v578.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.78 ]


- Disk Driver


  SLT-Turbo 고속모드에서 섹터 READ 안정성 개선



- MV2 Player


  비디오 프레임 끝에서 가끔 멈추는 현상 수정



[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행 또는 MMCSD /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


5. 끝


2026년 2월 1일 일요일

SLT-Turbo - BIOS & Tool v2.11

Download: 20260201_SLT-Turbo_Tool_v211.zip

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

SLT-Turbo - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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


- 변경 부분


  SLT-X에 장착된 FMPAC의 OPLL I/O Enable 추가

  -> 오리지널 Panasoft FMPAC만 해당됨



[ BIOS & Tool v2.11 ]


- BIOS 롬


  GT 모드 및 X2 모드 BIOS가 통합되어 있습니다.

  SLTT /U 명령으로 업데이트합니다.



- FontPack 폰트롬


  CP949 및 Unicode 폰트를 업데이트합니다.

  FontPack v2용 8MB 폰트롬을 사용하면 됩니다.

  예) SLTT FONTPACK.ROM



- 시스템 폰트롬


  KANJI_P.FNT  -> 파나소닉 Kanji 폰트

  KANJI_S.FNT  -> 소니 Kanji 폰트

  HANGUL_D.FNT -> 대우 한글/한자 폰트

  HANGUL_J.FNT -> 둥근모 한글 및 한자 폰트


  GT 모드용 Kanji 폰트(JIS1/2)를 업데이트합니다.

  예) SLTT KANJI_P.FNT /K


  X2 모드용 한글/한자 폰트를 업데이트합니다.

  예) SLTT HANGUL_J.FNT /H




[ 업데이트 가이드 ]


1. SLTT.COM, SLTT.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. SLTT /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 재부팅.


5. 끝



2026년 1월 31일 토요일

SLT-Turbo 제작 #19 - BIOS 및 폰트롬 업데이트

카트리지에는 8MB의 플래쉬롬이 들어 있습니다.


512KB = BIOS (GT + X2 + 기타)

256KB = GT Kanji 폰트

256KB = X2 한글/한자 폰트

2MB   = FontPack BIOS + CP949 폰트

5MB   = FontPack Unicode 폰트


각 영역은 SLT-Turbo 툴을 이용하여 다운로드합니다.


1) BIOS


SLTT /U 명령을 사용



2) GT Kanji


SLTT /K 명령을 사용

예) SLTT KANJI_P.FNT /K



취향에 따라 파나소닉, 소니 스타일에서 고르세요~



3) X2 한글/한자


SLTT /H 명령을 사용

예) SLTT HANGUL_J.FNT /H



취향에 따라 대우, 둥근모 스타일에서 고르세요~



4) FontPack


FontPack v2에서 생성한 8MB 롬을 사용합니다.

롬의 BIOS 및 CP949 Unicode 폰트 영역 7MB만 업뎃됩니다.


옵션없이 SLTT 명령을 사용

예) SLTT FONTPACK.ROM



SLT-Turbo - BIOS & Tool v2.10


Download: 20260131_SLT-Turbo_Tool_v210.zip


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

SLT-Turbo - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v2.10 ]


- BIOS 롬


  GT 모드 및 X2 모드 BIOS가 통합되어 있습니다.

  SLTT /U 명령으로 업데이트합니다.



- FontPack 폰트롬


  CP949 및 Unicode 폰트를 업데이트합니다.

  FontPack v2용 8MB 폰트롬을 사용하면 됩니다.

  예) SLTT FONTPACK.ROM



- 시스템 폰트롬


  KANJI_P.FNT  -> 파나소닉 Kanji 폰트

  KANJI_S.FNT  -> 소니 Kanji 폰트

  HANGUL_D.FNT -> 대우 한글/한자 폰트

  HANGUL_J.FNT -> 둥근모 한글 및 한자 폰트


  GT 모드용 Kanji 폰트(JIS1/2)를 업데이트합니다.

  예) SLTT KANJI_P.FNT /K


  X2 모드용 한글/한자 폰트를 업데이트합니다.

  예) SLTT HANGUL_J.FNT /H




[ 업데이트 가이드 ]


1. SLTT.COM, SLTT.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. SLTT /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 재부팅.


5. 끝


2026년 1월 26일 월요일

MMC/SD Drive V3/V4 - BIOS & Tool v5.77

Download: 20260126_MMCSD_Drive_V3_V4_BIOS_Tool_v577.zip


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

MMC/SD Drive(tm) V3/V4 - BIOS & Tool

    By Yeongman Seo <sharksym@hitel.net>

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



[ BIOS & Tool v5.77 ]


- MegaRAM


  롬매퍼 디텍션 개선

  -> 자기중심파2



- GameRunner


  LED Visualizer 개선

  -> PSG 전용 모드(LED x9)에서 주파수 0일 때 OFF 처리



- Disk Driver


  SLT-Turbo 전용 명령어 지원



- FDD_EMU


  ONE-Drive OFF 모드에서 /T(turbo) 옵션 사용 가능


  ONE-Drive OFF 자동설정 추가

  -> Seed of Dragon, Ranma 1/2



- MV2 Player


  SLT-Turbo 전용 Movie Player

  -> Video 15fps, Audio MP3 128kbps (WAU 필요)



[ 업데이트 가이드 ]


1. MMCSD.COM, MMCSD.OVL 두개 파일을 SD카드에 복사.

   기존 파일을 덮어쓰면 됩니다.(예:UTILS 디렉토리)


2. MMCSD.COM 프로그램을 실행 또는 MMCSD /U 실행


3. 'Update BIOS-ROM? [y/N]' 메시지가 나오면 Y키 누름.


4. 다운로드 완료 후 RETURN키 눌러서 재부팅.


5. 끝


2026년 1월 25일 일요일

MoonSound 샘플램 2048KB 증설

제가 사용하는 MoonSound는 v2.1입니다.

샘플램을 위한 메모리 소켓이 2개가 있어서, SRAM 512KB 2개를 장착할 수 있어요.

램 1024KB로 쓸 수 있다는 얘기입니다.

대부분 OPL4 음악들은 샘플램을 128KB ~ 512KB 정도만 쓰고 있다는 게 함정입니다만...ㅋ


여기서 AS6C4008 2개 위에 병렬로 램 2개를 연결 후 22번핀(/CE)만 OPL4 칩에 따로 연결하면,

샘플램을 2048KB로 늘릴 수 있습니다.


최근에 CERIUM 뮤직 디스크를 받았더니 무려 샘플램 2048KB을 쓰는 곡들이 들어있네요 ㅎ.ㅎ

그래서 샘플램을 증설해보았어요.


CERIUM을 실행하면, CPU 모드와 OPL4의 샘플램 용량을 체크해줍니다.

아래는 SLT-Turbo + MoonSound 샘플램 1024KB 상태에서 실행한 모습입니다.



AS6C4008 램을 두개 겹쳐서 병렬로 납땜해보아요. 일명 거북이 납땜!

윗쪽에 올라가는 램의 22번핀(/CE)는 따로 연결해줍니다.

/CE 핀은 OPL4의 39번, 40번 핀에 하나씩 연결해주면 됩니다요.



램 4개를 장착한 모습입니다.



다시 CERIUM을 실행해보아요~

샘플램 2048KB가 제대로 인식되었습니다 ㅎ.ㅎ/



샘플램을 많이 먹는 음악도 잘 나오네요!



그럼, 이만~~