최근 수정 시각 : 2024-10-22 06:31:14

버블 시스템

코나미 버블 시스템에서 넘어옴
파일:external/flyers.arcade-museum.com/18009601.jpg

1. 개요2. 사양3. 문제점4. EPROM 개정판5. 대응 게임
5.1. 개정판
6. 기타7. 관련 문서

[clearfix]

1. 개요

코나미에서 개발한 아케이드 시스템.

2. 사양

  • 메인 CPU: 모토로라 68000 9.216 MHz
  • 사운드용 CPU: 자이로그 Z80 3.579545 MHz
  • 사운드 칩: 제너럴 인스트루먼트 AY-3-8910 × 2, K005289, Sanyo VLM5030[1]
  • 하네스: 스크램블[2]
  • 그래픽: 256 × 224 해상도, 스프라이트 확대/축소 지원, 8 × 8~64 × 64 16색 배경 타일+스프라이트 타일 지원, 2개의 512 × 256 배경 레이어, 64 KB 그래픽 데이터 RAM, 레이어당 4 KB VRAM+4 KB 컬러 RAM, 4 KB 스프라이트 RAM(화면 내 최대 256 스프라이트 지원)

소프트는 자기 버블 기억 장치[3]를 사용한 버블 소프트웨어로 불리는 카세트 형태로 공급되었다. 장점보다는 단점이 많은 방식이지만 메가 비트 단위의 EPROM은 발표 당시에 매우 고가였기 때문에 대용량을 저가에 공급할 수 있도록 내려진 조치였다.

카세트에는 후지쯔의 버블 메모리 소켓이 2개가 삽입되어서 총 용량은 2메가비트. 다만 그라디우스는 별도의 64킬로비트의 SRAM 2개가 실린 작은 기판을 확장 연결한 뒤에 기동하지 않으면 부팅되지 않는다.


기판 전원을 켤 때 카세트 내의 저항기를 발열시켜 버블 메모리를 데우는 워밍업을 실시한다. 기온이 낮으면 카운트다운 화면이 표시될 때까지 꽤 시간이 걸리지만 이미 예열이 되어 있으면 부팅하는 데는 지장이 없다고 한다. 어느 정도 예열이 끝난 상태가 되면 워밍업 카운트에 돌입하여 Konami Morning Music이 배경음으로 흐르고 99부터 카운트 다운을 표시한다. 이 사이 약 2분 정도에 걸쳐 카세트에서 메인보드의 램으로 프로그램 전송을 한다.

3. 문제점

버블 시스템은 유독 데이터 소실 같은 고장이 상당히 잦았다 보니 내구성도 유리몸 아니냐는 의심을 받았다. 전철 바닥에 두었더니 진동 때문에 데이터가 소실되었다는 도시전설도 있었다. 하지만 자기 버블 기억 장치는 옛날에 군용이나 산업용, 휴대용 기기에 사용한 진동에 취약한 자기 디스크를 대신해서 사용한 사례가 많은데, 이런 기기들의 상당수가 아직도 문제없이 구동되는 물건이 많을 정도로 내구성은 좋은 편이었다. 거기에 똑같은 후지쯔 버블 메모리 라인업을 사용하는 후지쯔 Micro-8은 그런 문제가 전혀 없다.

가장 큰 문제는 기판 자체의 설계 결함으로 인해 버블 메모리를 조작하는 타이밍이 맞지 않았다는 데에 있다. 버블 시스템에 사용된 버블 메모리는 후지쯔의 FBM54DB[4]라는 1메가비트짜리 모델로, 블럭 리플리케이터/스와퍼 방식을 사용한다. 데이터를 끄집어내기 위해서는 블럭 리플리케이터를 통해 버블이 메이저 트랙으로 내보내야 하는데, 버블이 나갈 때에는 자기장 벡터 회전에 맞춰 정확한 타이밍에 리플리케이터를 조작해야 한다. 그러나 버블 메모리의 잔류 전류가 그라운드로 원활히 빠지지 않아 합성 자기장에 영향을 주거나 소자에 손상을 일으키는 것은 물론, 크리스탈 클럭 소스의 정확도가 떨어지면서 타이밍이 맞지 않아 버블들이 정확하게 복제되지 않은 것은 물론, 손상되지 않아야 할 원본 데이터에까지 손상을 줬다.

부팅 시 버블 메모리 컨트롤러가 버스 마스터 역할을 하여 CPU를 일시정지(halt)시킨 후 버블 메모리의 bootstrap loop에 있는 기계어 부팅 코드와 에러 맵을 불러와 램의 특정 주소에 적재하고, 이후 CPU를 다시 동작시켜 이 기계어 코드를 불러오게 해 나머지 게임 데이터를 불러오는 방식을 사용했는데, 이 bootstrap loop에 부팅 코드와 에러 맵을 기록하려면 특수한 절차를 밟아야 했기에 버블 메모리를 사용하는 이상 이 문제점을 끝까지 안고 가야 했다.

기판으로서는 명백한 실패작이지만, 그라디우스가 대히트하고 Konami Morning Music도 엄청나게 유명해지면서 실패작으로만 단정하기에도 애매한 독특한 지위를 차지하고 있다.

4. EPROM 개정판

결국에는 수리 대응으로 통상의 1메가비트 EPROM이 2개 실리는 전용 기판으로 교환된 개정판이 나왔다. 물론 게임 데이터가 날아간 경우는 얼마든지 해당 page만 재기록이 가능했기에 재기록으로 수리를 마쳤다. 더 이상 버블 메모리를 사용하지 않게 되어 -12V도 필요 없게 되었다. 당연히 예열도 필요 없어져 모닝 뮤직도 10초 안에 끝났다.

더 이상 자기 버블 기억 장치를 쓰지 않았지만 계속 버블 시스템이라는 이름이 붙었다. 당시 업소용 팜플렛에서는 '버블 시스템 대응 게임'이라고 버블 시스템을 갖고 있는 업주들에게만 버블 기억 장치를 교체해서 게임을 바꾸어 주는 버전을 별도로 판매했다. 이후로는 버블 시스템의 그래픽 칩셋, 비디오 보드째로 다른 게임의 기판에 사용된 경우도 있다. 이런 기판을 버블 시스템으로 나온 게임인 그라디우스의 해외판 명칭에서 따온 '네메시스 시스템'으로 칭하기도 하나 정식 명칭인지는 불명.

5. 대응 게임

그동안 MAME로 가동할 수 있는 버전은 모두 개정판인 네메시스 시스템 기반이었지만, MAME 0.210부터 버블 시스템 버전 그라디우스가 지원되면서 모닝 뮤직을 풀타임으로 들을 수 있게 되었다. MAME 0.232부터는 버블 시스템 버전 트윈비도 지원을 시작했다.

5.1. 개정판

버블 시스템 대응은 아니지만 같은 구조의 기판을 쓴 게임도 있었다. 참고로 이 기판은 결정적인 차이점으로 모닝 뮤직이 출력되지 않는다.

6. 기타

나중에는 버블 메모리를 에뮬레이트하는 'Bubbless'라는 하드웨어도 나왔다. FRAM 기반으로 예열이 불필요하여, 버블 메모리 카트리지 내부 온도가 특정 온도에 다다르기 전까지 나오는 VLM5030의 보이스 카운트다운을 듣지 않아도 바로 부팅시킬 수 있다. 다만 이 보이스 카운트다운을 듣고 싶어 하는 사람을 위해 딥스위치로 지연시간을 선택할 수 있다. 버블 시스템 버전의 게임들은 버블 메모리 로딩 용도로 기본적으로 특정 길이의 시간 지연이 nop 코드로 들어가 있으므로[9] 로딩을 빠르게 할 수는 없다.[10] 이 제품은 아직 구동이 가능한 버블 카트리지가 대상으로, 해당 버블 메모리를 백업해서 사용한다. 버블 메모리를 백업하기 위한 프로그램을 실행하기는 위해서 부트로더에 있는 디버그용 특정 코드를 이용한다.[11] 홈페이지 실제 Bubbless 구동영상

상술한 사장 문단의 문제점 때문이었는지 복제가 어려워서였는지 몰라도, 1985~1986년의 한국 오락실에서는 현역으로 거의 가동된 적이 없는 기판인데, 서울 시내 중심부, 강남, 홍대에 있던 10여개의 대형 업소에서 가동이 되었었고 스위치를 마음대로 끌 수 없는 구조였다. 그래서 일본과는 달리 해당 기판으로 돌아가는 게임에 관한 추억을 가진 사람은 거의 없다.[12] 그라디우스와 트윈비는 게임기로 이식된 버전만 인지도가 있다.

현재 트위터의 한 유저가 이 기판을 전문적으로 다루고 있다. 버블 시스템판 트윈비를 직접 소유한 기판을 덤프해서 돌린 바가 있으며 버블판 갤럭틱 워리어즈도 구동했다.[13]

7. 관련 문서


[1] 개정판용 게임에서는 야마하 FM 음원 + 후기 코나미제 음원칩(K051649 SCC PCM 음원칩 등)으로 바뀌기도 했다. [2] Nemesis, Classic Konami라고도 불린다. KEL의 3.97mm피치 36핀 카드 엣지 커넥터를 사용한다. [3] 자기 버블 메모리로 불리며, 메모리에 마그네틱 버블을 생성하여 비휘발성 메모리화하는 기술을 의미한다. 1960년에 처음으로 나왔지만 1970년대 중종반부터 PROM, EPROM 등의 ROM 매체의 가격이 떨어졌기 때문에 때문에 결국에는 사장된 기술. [4] 후지쯔가 1984년경에 출시한 1메가비트 버블 메모리로, 마이너 루프의 버블 입출을 위해 block replicator와 swapper를 사용한다. 아키텍처는 major track-minor loop방식으로 odd half와 even half로 구성되어 있다. 1개의 마이너 루프당 버블 포지션은 2053개이고, 총 584개의 마이너 루프가 존재한다. 부트 루프는 odd와 even에 각 1개씩 존재한다. 자기장 회전은 100kHz이고, odd/even으로 쪼개져 있기 때문에 버블 데이터 전송속도는 100kbps이다. 584개의 마이너 루프를 전부 사용할 수는 없기 때문에 불량 루프를 제외하고 남은 마이너 루프 512개(512비트)를 1페이지로 하며, 이 페이지가 버블 포지션 수인 2053개만큼 존재한다. [5] 외수판은 <Konami GT>로 발매. [6] 미국판 라이프 포스는 동년 10월 발매. 일본판 라이프 포스는 이듬해인 1987년 6월에 발매. [7] 반프레스토의 전신인 코어랜드에서 개발. [8] 코나미 아케이드 기판에 처음으로 SCC 음원이 적용된 게임. [9] 버블 메모리 컨트롤러는 버블 메모리에서 불러온 데이터를 DMA를 사용하여 CPU와 공유하고 있는 Shared RAM으로 전송하는데, 이때 버스 마스터가 된 버블 메모리 컨트롤러가 버블 메모리 데이터를 모아놓은 뒤 한 번의 DMA 요청에 전부 전송하지 않고 버블 메모리를 불러올 때마다 DMA 요청을 한 후는 데이터를 전송해서이다. [10] EPROM을 사용한 개정판은 프로그램 구성이 달라 버블 메모리를 불러오는 동작을 TRAP코드로 구현한다. nop루프는 그대로 존재하나 DMA전송이 필요 없고 무엇보다 EPROM접근속도가 더 빠르기 때문에 모닝 뮤직이 빨리 끝난다. [11] 버블 메모리에 있는 부트 로더에는 기판 옆쪽의 D커넥터 주소 영역(0x70000-0x7FFFF)의 중간에 있는 0x78000의 데이터를 검사하여, 만약 0x5555가 써져 있으면 코드를 0x78002부터 실행시키는 어셈블리 코드가 들어 있다. 코나미가 디버그나 버블 메모리 데이터 편집을 위해 작성해 둔 코드인데, 이것을 사용하면 유저가 커스텀 프로그램을 실행시킬 수 있다. [12] 당시 한국에서 가동된 기판들의 절대다수는 세운상가 등에서 복제된 기판들이라는 불편한 진실이 있다. 버블 시스템은 다른 기판들과 다른 구조여서 복제가 어려웠나 추정된다. 아니면 칩을 생산한 후지츠가 확실한 고객층하고만 거래했기 때문에 칩 입수경로가 제한되어서라는 이야기도 있다. [13] 이 유저는 버블 메모리뿐만 아니라 버블 심포니의 부틀렉 기반 해킹롬 서울 심포니의 기판을 소유하고 있으며(OKI6295 기반의 부틀렉. 라이덴 2 NEW 버전과 비슷한 맥락. 현재 MAME에서 글리치가 일어난다.) Firebeat Viper 기판도 분석하고 있다고 했다. 또한 한국에 얼마 없는 IBM 5100과 여러 레어 아이템을 수집하는 상당한 수집가.