MOS 테크놀로지 VIC
MOS Technology VIC
VIC(Video Interface Chip)는 특히 MOS Technology 6560(NTSC 버전)/6561(PAL 버전)으로 알려진 집적회로 칩으로 Commodore VIC-20 가정용 컴퓨터에서 비디오 그래픽과 사운드를 생성합니다.원래는 저비용 CRT 단말기, 바이오메디컬 모니터, 제어 시스템 디스플레이, 아케이드 또는 가정용 비디오 게임 콘솔과 같은 애플리케이션을 위해 설계되었습니다.
이 칩은 1977년 알 샤르펜티에에 의해 설계되었지만 코모도어는 이 칩의 시장을 찾지 못했다.1979년 MOS Technology는 TOI 컴퓨터용 비디오 칩인 MOS Technology 6564에 대한 작업을 시작했으며, 코모도어 PET의 컬러 버전용 칩인 MOS 6562에도 일부 작업을 수행했습니다.두 칩 모두 메모리 타이밍의 제약으로 인해 장애가 발생했습니다(두 칩 모두 매우 빠르고 비싼 SRAM이 필요했기 때문에 대량 생산에 적합하지 않습니다).최종적으로 VIC-20에 VIC를 사용하기 전에 칩 설계자인 Robert Yannes는 6562(더 나은 사운드 제너레이터)와 6564(더 많은 색상)의 기능을 6560에 공급했기 때문에 VIC-20의 대량 생산을 시작하기 전에 완전히 수정되었습니다.
다음과 같은 기능이 있습니다.
- 화면, 문자 및 컬러 메모리용 16kB 주소 공간(하드웨어 변경 없이 VIC-20의 RAM을 가리키는 것은 5kB뿐)
- 16색(상단 8색은 글로벌 배경색과 보조색에서만 사용 가능)
- 2개의 문자 크기 선택 가능(8×8 또는 8×16비트). 픽셀 폭은 "색깔" 문자의 경우 1비트, "색깔" 문자의 경우 2비트입니다.
- 최대 비디오 해상도는 텔레비전 시스템에 따라 다릅니다(176 × 184는 VIC-20 펌웨어의 표준입니다만, NTSC 머신에서는 최대 248 × 232p/464i, PAL[1] 머신에서는 최대 256 × 280이 가능합니다).
- 4채널 사운드 시스템 (3개의 사각파 + "흰색" 노이즈 + 글로벌 볼륨 설정)
- 온칩 DMA
- 8비트 아날로그-디지털 컨버터x 2
- 라이트 펜 서포트
이 시대의 다른 많은 비디오 회로와 달리 다이내믹 RAM 리프레시 기능을 제공하지 않습니다.따라서 VIC-20은 고가의 스태틱 RAM(SRAM) 칩을 채용했습니다.이것이 머신이 5KB의 RAM만을 탑재하여 판매된 이유일 것입니다.VIC-20의 메모리 확장에서도 SRAM이 사용되거나 자체 리프레시 회선이 구현되었습니다.
VIC는 16개의 제어 레지스터를 조작하여 프로그래밍되었으며 메모리는 VIC-20 주소 공간에서 $9000~$900F 메모리주소 범위에 매핑되어 있습니다.온칩 A/D 컨버터는 VIC-20에 의한 듀얼 패들 위치 판독에 사용되었으며, VIC의 라이트 펜 설비도 사용되었습니다.VIC는 VIC-20의 후속 모델인 C64와 C128에 의해 사용되는 훨씬 더 고도의 VIC-II보다 앞섰습니다.
확장 RAM을 탑재한 VIC-20의 비디오 메모리(550바이트)는 1000달러, 존재하지 않을 경우 1E00달러입니다.사용자 정의 문자 세트는 시스템 RAM의 처음 5k 내에 배치해야 합니다.기본 PETSCII 문자 ROM은 $8000이며 각 문자를 저장하는 데 8바이트가 소요됩니다.한 번에 최대 128자를 사용할 수 있습니다.PET의 문자 세트에는 백슬래시(\)가 포함되어 있는데, VIC-20(및 그 이후의 모든 Commodore 머신)에서는 이 기호는 영국 파운드 기호(\)로 대체되었습니다.
칩에는 스프라이트 또는 All-Points 어드레싱 가능한 비트맵모드가 없기 때문에 VIC 상에서 그래픽스 및 애니메이션을 작성하는 방법은 프로그래밍 가능한 문자뿐입니다.팔레트 내 16가지 색상 중 8가지 색상을 전경(9400달러 컬러 RAM당)과 테두리에 사용할 수 있으며, 나머지는 배경 및 보조 멀티컬러로 제한됩니다.컬러 RAM의 MSB는 해당 문자가 다색인지 고해상도인지를 나타내는 데 사용되는 플래그입니다.전자의 극도의 차단성 때문에, 대부분의 VIC-20 게임들은 캐릭터를 고용한다.
VIC는 VIC-II와 같은 스크롤 또는 래스터 인터럽트를 지원하지 않지만 스캔라인 카운터는 화면상의 특정 포인트에 대해 폴링하여 래스터 효과를 낼 수 있습니다.이 기능은 Imagic의 Demon Attack과 같은 몇몇 타이틀을 제외하고는 게임에서는 거의 사용되지 않았습니다.
VIC의 사운드 프로그래밍은 4개의 레지스터 중 하나의 주파수 값을 $900A~$900D로 설정함으로써 이루어집니다(이러한 레지스터에 0을 쓰면 꺼집니다).처음 세 가지는 서로 반 옥타브 정도 떨어진 사각파 발생기이고, 네 번째는 백색 소음용이다.
레지스터
VIC에는 다음과 같은 16개의 읽기/쓰기 레지스터가 있습니다.
등록하세요 | 16진수 | 비트 7 | 비트 6 | 비트 5 | 비트 4 | 비트 3 | 비트 2 | 비트 1 | 비트 0 |
---|---|---|---|---|---|---|---|---|---|
0 | 9000 | 인터레이스 | 수평 원점 | ||||||
1 | 9001 | 수직 원점 | |||||||
2 | 9002 | VA9 | 열 수 | ||||||
3 | 9003 | R0 | 행수 | 8/16 | |||||
4 | 9004 | 래스터 회선(비트 8-1) | |||||||
5 | 9005 | 비디오 주소(비트 13 ~10) | 문자 주소(비트 13 ~10) | ||||||
6 | 9006 | 라이트 펜 가로 | 1 | ||||||
7 | 9007 | 라이트 펜 세로 | |||||||
8 | 9008 | 패들 X | |||||||
9 | 9009 | 패들 Y | |||||||
10 | 900A | 가능하게 하다 | 발진기 1 주파수 | ||||||
11 | 900B | 가능하게 하다 | 발진기 2 주파수 | ||||||
12 | 900C | 가능하게 하다 | 발진기 3 주파수 | ||||||
13 | 900D | 가능하게 하다 | 백색 노이즈 주파수 | ||||||
14 | 900E | 보조색 | 용량 | ||||||
15 | 900F | 배경 | RV | 경계 |
컬러 팔레트
16가지 색상의 풀 팔레트는 YPbPr 신호의 변화를 기반으로 생성되었습니다.
Number : 이름 | Y | Pb(관련) | Pr(관련) |
---|---|---|---|
0 : 검은색 | 0 | 0 | 0 |
1 : 흰색 | 1 | 0 | 0 |
2 : 빨간색 | 0.25 | −0.3826834 | 0.9238795 |
3 : 시안 | 0.75 | 0.3826834 | −0.9238795 |
4 : 보라색 | 0.5 | 0.7071068 | 0.7071068 |
5 : 녹색 | 0.5 | −0.7071068 | −0.7071068 |
6 : 파란색 | 0.25 | 1 | 0 |
7 : 노란색 | 0.75 | −1 | 0 |
8 : 오렌지 | 0.5 | −0.7071068 | 0.7071068 |
9 : 옅은 오렌지색 | 0.75 | −0.7071068 | 0.7071068 |
10 : 옅은 빨강 | 0.5 | −0.3826834 | 0.9238795 |
11 : 라이트 시안 | 1 | 0.3826834 | −0.9238795 |
12 : 연보라색 | 0.75 | 0.7071068 | 0.7071068 |
13 : 연두색 | 0.75 | −0.7071068 | −0.7071068 |
14 : 하늘색 | 0.5 | 1 | 0 |
15 : 옅은 노란색 | 1 | −1 | 0 |
주의: Y에는 5개의 가능한 값(0, 0.25, 0.5, 0.75 및 1)이 있습니다.Pb 및 Pr에는 7개의 가능한 값(-0.9238795, -0.7071068, -0.3826834, 0.3826834, 0.7071068, 0.9238795)이 있습니다.
VIC IC 리스트
「 」를 참조해 주세요.
- 비디오 디스플레이 컨트롤러
- 모토로라 6847
- 비디오 하드웨어별 가정용 컴퓨터 목록
- Commodore 64에서 사용되는 MOS VIC-II
레퍼런스
- Bagnall, Brian (2005).가장자리: 코모도르의 화려한 흥망성쇠.Variant Press (바리안트 프레스) ISBN0-9738649-0-7.
- 특정한