KR100516394B1 - 탄구유기기(彈球遊技機)의 제어장치 - Google Patents

탄구유기기(彈球遊技機)의 제어장치 Download PDF

Info

Publication number
KR100516394B1
KR100516394B1 KR1019980010070A KR19980010070A KR100516394B1 KR 100516394 B1 KR100516394 B1 KR 100516394B1 KR 1019980010070 A KR1019980010070 A KR 1019980010070A KR 19980010070 A KR19980010070 A KR 19980010070A KR 100516394 B1 KR100516394 B1 KR 100516394B1
Authority
KR
South Korea
Prior art keywords
interrupt
executed
control
timer
generating
Prior art date
Application number
KR1019980010070A
Other languages
English (en)
Other versions
KR19990075698A (ko
Inventor
다카시 나스
Original Assignee
가부시키가이샤 산요붓산
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 산요붓산 filed Critical 가부시키가이샤 산요붓산
Priority to KR1019980010070A priority Critical patent/KR100516394B1/ko
Publication of KR19990075698A publication Critical patent/KR19990075698A/ko
Application granted granted Critical
Publication of KR100516394B1 publication Critical patent/KR100516394B1/ko

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F7/00Indoor games using small moving playing bodies, e.g. balls, discs or blocks
    • A63F7/02Indoor games using small moving playing bodies, e.g. balls, discs or blocks using falling playing bodies or playing bodies running on an inclined surface, e.g. pinball games
    • A63F7/022Pachinko
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2250/00Miscellaneous game characteristics
    • A63F2250/10Miscellaneous game characteristics with measuring devices
    • A63F2250/1063Timers

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Pinball Game Machines (AREA)

Abstract

본 발명은, 일정한 간격으로 인터럽트를 발생시켜, 그 인터럽트처리에 의해 제어를 행하는 탄구유기기의 제어장치에 관한 것으로, 탄구유기기의 제어를 CPU에 내장되는 인터럽트회로에 의해 실행하여, 리세트 인터럽트를 발생시키기 위한 외부회로를 삭제하여, 회로 비용을 줄일 수 있는 탄구유기기의 제어장치를 제공하는 것을 목적으로 하고 있고, 그 목적을 달성하기 위해, 본 발명의 탄구유기기의 제어장치는, 소정의 간격으로 인터럽트를 발생시키는 인터럽트 발생수단과, 그 인터럽트 발생수단에 의한 인터럽트에 의해 실행되는 인터럽트 처리수단을 구비하고, 그 인터럽트 처리수단에 의해 타구를 유기영역에 쏘아 유기를 행하는 탄구유기기를 제어하는 탄구유기기의 제어장치에 있어서, 상기 인터럽트 발생수단은 CPU에 내장된 인터럽트회로로 구성되는 동시에, 상기 인터럽트 처리수단은, 스택 포인터의 값을 상기 인터럽트처리가 발생하기 이전의 상태로 복귀시키는 스택 복귀수단과, 상기 인터럽트 발생수단에 의한 다중인터럽트의 발생을 허가하는 인터럽트 허가수단과, 상기 탄구유기기의 제어를 실행하는 제어수단과, 상기 스택 복귀수단, 인터럽트 허가수단 및 제어수단의 실행 후, 다음의 인터럽트처리가 실행될 때까지 소정의 처리를 반복하는 루프수단을 구비하고 있는 것을 특징으로 하는 것이다.

Description

탄구유기기(彈球遊技機)의 제어장치
본 발명은, 파친코 유기기 등으로 대표되는 탄구유기기(彈球遊技機)의 제어장치에 관한 것으로, 특히, 일정한 간격으로 인터럽트를 발생시켜, 그 인터럽트 처리수단에 의해 제어를 행하는 탄구유기기의 제어장치에 관한 것이다.
이러한 파친코 유기기에서는, 연산을 실행하는 CPU와는 별도로, 일정한 간격(예를 들어, 2㎳ 주기)으로 리세트 신호를 발생하는 외부회로를 구비하고 있다. 외부회로가 내보내는 리세트 신호는 CPU의 리세트 단자(端子)에 입력되고, CPU에 일정한 간격으로 리세트 인터럽트를 발생시키고 있다. CPU는 이 정기적으로 발생되는 리세트 인터럽트에 의해 파친코 유기기를 제어하고 있기 때문에, 유기를 실행하는 도중에 잡음 등에 의해 다소의 이상이 발생하여도, 유기를 중단하지 않고 계속할 수 있는 것이다.
그러나, 이러한 방식에서는, 리세트 신호를 일정한 간격으로 발생시키는 외부회로가 필요하게 되어, 회로 비용이 상승하게 된다는 문제점이 있었다.
그런데, CPU 중에는 ROM 또는 RAM을 내장하여, 어느 정도 잡음에 강하게 된 것도 출시되고 있다. 이들 CPU의 대부분은, 내부에 타이머 인터럽트회로 등을 내장하고 있기 때문에, 이러한 내부 인터럽트회로를 사용함으로써, 상기 외부회로를 삭제하여 회로 비용을 줄일 수 있다.
그러나, 내부 인터럽트회로에 의한 인터럽트는, 리세트 인터럽트에 비해, 인터럽트가 발생하고 나서 인터럽트처리가 실행될 때까지 장시간을 요구하게 되므로, 소망하는 타이밍으로 인터럽트처리를 실행할 수 없다고 하는 문제점이 있었다. 즉, 리세트 인터럽트의 경우에는, 리세트 인터럽트의 처리 중에 다음의 리세트 인터럽트가 발생하면, CPU의 실행상태에 관계없이, 즉석에서 다음의 리세트 인터럽트처리가 실행된다. 그러나, 내부 인터럽트회로에 의한 인터럽트에서는, 그 내부 인터럽트회로에 의한 인터럽트의 처리 중에 다음의 내부 인터럽트회로에 의한 인터럽트가 발생하여도, CPU가 실행 중인 명령을 종료하고, 또한, 실행시간이 긴 RETI(Return Interrupt)명령의 실행에 의해 스택(stack) 포인터(pointer)를 되돌리지 않은 상태에서는, 다음의 내부 인터럽트회로에 의한 인터럽트처리를 실행할 수 없다. 그러므로, 내부 인터럽트회로에 의한 인터럽트에서는, 리세트 인터럽트의 경우에 비해, 인터럽트의 발생으로부터 인터럽트처리의 실행까지 장시간을 요구하게 되는 것이다.
본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 탄구유기기의 제어를 CPU에 내장되는 인터럽트회로에 의해 실행하여, 리세트 인터럽트를 발생시키기 위한 외부회로를 삭제하여, 회로 비용을 줄일 수 있는 탄구유기기의 제어장치를 제공하는 것을 목적으로 하고 있다.
이 목적을 달성하기 위하여 특허청구범위의 청구항 1에 기재된 탄구유기기의 제어장치는, 소정의 간격으로 인터럽트를 발생시키는 인터럽트 발생수단과, 그 인터럽트 발생수단에 의한 인터럽트에 의해 실행되는 인터럽트 처리수단을 구비하고, 그 인터럽트 처리수단에 의해 타구를 유기영역에 쏘아 유기를 행하는 탄구유기기를 제어하는 것이고, 상기 인터럽트 발생수단은 CPU에 내장된 인터럽트회로에 의해 구성되는 동시에, 상기 인터럽트 처리수단은, 스택 포인터의 값을 상기 인터럽트처리가 발생하기 이전의 상태로 복귀시키는 스택 복귀수단과, 상기 인터럽트 발생수단에 의한 다중인터럽트의 발생을 허가하는 인터럽트 허가수단과, 상기 탄구유기기의 제어를 실행하는 제어수단과, 상기 스택 복귀수단, 인터럽트 허가수단 및 제어수단의 실행 후, 다음의 인터럽트처리가 실행될 때까지 소정의 처리를 반복하는 루프(loop)수단을 구비하고 있다.
이 특허청구범위의 청구항 1에 기재된 탄구유기기의 제어장치에 따르면, CPU에 내장된 인터럽트회로에 의한 인터럽트처리에서는, 스택 복귀수단에 의해 스택 포인터의 값이 인터럽트처리가 발생하기 이전의 상태로 복귀되는 동시에, 인터럽트 허가수단에 의해 인터럽트회로에 의한 다중인터럽트의 발생이 허가된다. 그후, 제어수단에 의해 탄구유기기의 제어가 실행되고, 이러한 제어가 종료하면, 허가된 인터럽트회로에 의해 다중인터럽트가 발생할 때까지 루프수단에 의해 소정의 처리가 반복된다. 따라서, 인터럽트의 처리 중에, 인터럽트회로에 의해 다음의 인터럽트가 발생하면, CPU가 실행 중인 명령을 종료한 후, 실행시간이 긴 RETI명령을 실행하지 않고, 즉석에서 다음의 인터럽트처리가 실행된다. 따라서, 인터럽트의 발생으로부터 인터럽트처리가 개시될 때까지의 시간을 단축할 수 있다.
이하, 본 발명의 바람직한 실시예에 관하여 첨부도면을 참조하여 설명한다.본 실시예에서는, 탄구유기기의 일례로서 파친코 유기기를 이용하여 설명한다.
도 1은 파친코 유기기(P)의 유기반의 정면도이다. 유기반(1)의 주위에는, 타구가 입상(入賞)함으로써 5개 내지 15개의 유기구가 나오는 다수의 입상구(入賞口)(2)가 설치되어 있다. 또한, 유기반(1)의 중앙에는, 여러 종류의 식별정보로서의 무늬 등을 표시하는 액정표시장치(LCD)(3)가 설치되어 있다. 이 액정표시장치(3)의 표시화면은 횡방향으로 3분할되어 있고, 3분할된 각각의 표시영역에서 무늬의 변동표시가 실행된다.
액정표시장치(3)의 아래쪽에는, 무늬 작동게이트(4)가 설치되고, 이 무늬 작동게이트(4)를 타구가 통과하면, 액정표시장치(3)의 변동표시가 개시된다. 무늬 작동게이트(4)의 아래쪽에는, 특정입상구(대입상구)(5)가 설치되어 있다. 이 특정입상구(5)는, 액정표시장치(3)의 변동 후의 표시결과가 미리 정해진 무늬 조합의 하나와 일치할 경우에, 대당첨으로 되어, 타구가 입상하기 용이하도록 소정 시간(예를 들어, 30초가 경과할 때까지, 또는, 타구가 10개 입상할 때까지) 개방되는 입상구(入賞口)이다. 이 특정입상구(5) 내에는, V존(zone)(5a)이 설치되어 있고, 특정입상구(5)의 개방 중에, 타구가 V존(5a) 내를 통과하면, 계속권(繼續權)이 성립하여, 특정입상구(5)의 폐쇄 후, 다시, 그 특정입상구(5)가 소정 시간(또는, 특정입상구(5)에 타구가 소정 개수 입상할 때까지) 개방된다. 이 특정입상구(5)의 개폐동작은, 최고 16회(16라운드)까지 반복할 수 있도록 되어 있고, 개폐동작이 행해질 수 있는 상태가, 이른바 소정의 유기가치가 부여된 상태(특별유기상태)이다.
도 2는 이러한 파친코 유기기(P)의 전기적 구성을 나타낸 블록도이다. 파친코 유기기(P)의 제어부(C)는, 연산장치인 CPU(11)와, 불휘발성이며 전기적으로 개서(改書)할 수 있는 메모리인 EEPROM(16)과, 입출력포트(17)가, 버스라인(18)에 의해 서로 접속되어 구성되어 있다.
CPU(11)는, 그의 내부에 연산회로(12), 타이머 인터럽트회로(13), 도 5 및 도 6의 플로차트에 나타내는 프로그램 또는 각종 데이터를 기억한 ROM(14), 보존메모리(15a)를 시초로 하는 각종 작업 구역으로서 기능하는 RAM(15) 등을 구비하고 있다. 연산회로(12)는, ALU 또는 각종 레지스터, 프로그램 카운터 등을 갖는 회로이고, ROM(14)에 기억되는 프로그램에 따라서 연산, 즉, 프로그램을 실행하는 회로이다. 타이머 인터럽트회로(13)는, 설정한 시간이 경과했을 경우에, 인터럽트를 발생시켜(인터럽트 요구 13g1 ∼ 13g5를 출력하여), CPU(11)에 인터럽트처리를 실행시키기 위한 회로이고, 타이머 1에서 타이머 5까지 5개의 회로를 구비하고 있다.
도 3은 이러한 타이머 인터럽트회로(13)의 블록구성도이다. 도 3에 도시한 바와 같이, 타이머 인터럽트회로(13)는, 프리 러닝(free-running) 카운터(13a)와, 5개의 비교 레지스터(13b1 ∼ 13b5)와, 인터럽트 플래그(flag) 레지스터(13c)와, 인터럽트 마스크 레지스터(13d)와, 10개의 앤드회로(13e1 ∼ 13e5, 13f1 ∼ 13f5)를 구비하고 있다. 프리 러닝 카운터(13a)는, 클록(clock)신호(13h)를 입력할 때마다 1카운트씩 증가하는 16비트의 카운터이고, 카운트의 증가에 의해 카운트값이 FFFFh로 되었을 경우에는, 다음의 클록신호(13h)에 의해 0000h로 되돌아온다.
비교 레지스터(13b1 ∼ 13b5)는, 프리 러닝 카운터(13a)의 값과 비교되는 비교기의 기능을 갖는 레지스터이고, 타이머 1에서 타이머 5의 각 타이머마다 1개씩 합계 5개가 설치되어 있다. 각 비교 레지스터(13b1 ∼ 13b5)에는, 인터럽트를 발생시키는 타이밍에 대응하는 카운트값이 기록되고, 이 비교 레지스터(13b1 ∼ 13b5)에 기록된 카운트값에, 프리 러닝 카운터(13a)의 카운트값이 일치하면, 인터럽트 플래그 레지스터(13c)의 대응하는 인터럽트 플래그(13c1 ∼13c5)가 온(on)된다.
인터럽트 플래그 레지스터(13c)는, 프리 러닝 카운터(13a)의 카운트값이 비교 레지스터(13b1 ∼ 13b5)의 카운트값과 일치했을 경우에 온(on)되는 플래그이고, 인터럽트의 발생상태를 나타내는 것이다. 인터럽트 플래그 레지스터(13c)의 인터럽트 플래그(13c1 ∼13c5)는, 각각의 타이머 1 내지 5마다 설치되고, 비교 레지스터(13b1 ∼ 13b5)에 각각 대응하고 있다.
인터럽트 마스크 레지스터(13d)는, 각각의 타이머 1 내지 5에 인터럽트의 허가 또는 금지를 설정하기 위한 것이고, 각각의 타이머 1 내지 5마다 설치되어 있다. 인터럽트 마스크 레지스터(13d)의 대응하는 타이머 마스크 레지스터(13d1 ∼ 13d5)가 온(on)되어 있으면, 그 타이머 1 내지 5의 인터럽트는 허가상태에 있고, 반대로 오프(off)되어 있으면, 그 타이머 1 내지 5의 인터럽트는 금지상태에 있다.
10개의 앤드회로(13e1 ∼ 13e5, 13f1 ∼ 13f5) 중에서 전단(前段)의 앤드회로(13e1 ∼ 13e5)는, 각각의 타이머 1 내지 5마다 타이머 인터럽트 플래그(13c1 ∼ 13c5)와 타이머 마스크 레지스터(13d1 ∼ 13d5)를 입력하여 함께 온(on)되어 있을 경우, 후단(後段)의 앤드회로(13f1 ∼ 13f5)에 온(on) 신호를 출력하는 것이다. 후단의 앤드회로(13f1 ∼ 13f5)는, 이러한 전단의 앤드회로(13e1 ∼ 13e5)의 출력신호에 덧붙여, CPU(11) 전체의 인터럽트의 허가 또는 금지 신호를 각각 입력하여, 각각의 타이머 1 내지 5마다 인터럽트 요구(13g1 ∼ 13g5)를 발생시키는 것이다.
즉, CPU(11) 전체의 인터럽트가 허가되어 있는 상태에 있어서, 인터럽트 마스크 레지스터(13d)에 의해 인터럽트가 허가된 타이머 1 내지 5에 대해서, 프리 러닝 카운터(13a)의 카운트값과 비교 레지스터(13b1 ∼ 13b5)의 카운트값이 일치하면, 인터럽트 플래그 레지스터(13c)의 대응하는 타이머 인터럽트 플래그(13c1 ∼ 13c5)가 온(on)되어, 후단의 앤드회로(13f1 ∼ 13f5)로부터 대응하는 인터럽트 요구(13g1 ∼ 13g5)가 출력되는 것이다.
여기서, 도 4를 참조하여 인터럽트 점프 테이블에 대해서 설명한다. 인터럽트 점프 테이블은, 인터럽트 요구(13g1 ∼ 13g5)가 있었을 경우에, 프로그램의 점프 목적지가 되는 주소를 기억하는 테이블이다. CPU(11)는, 인터럽트 요구(13g1 ∼ 13g5)가 출력되면, 그 인터럽트 요구(13g1 ∼ 13g5)에 대응하는 인터럽트 점프 테이블의 주소를 참조하고, 프로그램 카운터의 값을 그 주소에 세트하여, 인터럽트 처리를 실행하는 것이다. 따라서, 인터럽트 점프 테이블의 점프 주소(점프 목적지 주소)에는, 대응하는 인터럽트의 프로그램이 기억되어 있다.
본 실시예에 있어서 파친코 유기기(P)의 제어는, 타이머 1 인터럽트에 의해 실행된다. 이러한 점프 주소는, 리세트 인터럽트, 불법 연산코드 트랩(illegal operation code trap) 인터럽트, 클록 모니터 이상(異常) 인터럽트의 점프 주소와 동일한 RESET 번지로 되어 있다. 리세트 인터럽트는, 파친코 유기기(P)의 전원을 투입한 경우에 실행되는 인터럽트이고, 불법 연산코드 트랩 인터럽트는, CPU(11)가 정의되지 않은 연산코드를 인출한 경우에 실행되는 인터럽트이다. 또한, 클록 모니터 이상(異常) 인터럽트는, CPU(11)가 구비하는 클록 모니터에 이상이 발생한 경우에 실행되는 인터럽트이다. 즉, 이들의 리세트 인터럽트, 불법 연산코드 트랩 인터럽트, 클록 모니터 이상 인터럽트는, 정전기 잡음 또는 AC회선 잡음 등의 잡음 이상(異常)에 의해 발생하는 경우가 많기 때문에, 이들 인터럽트의 점프 주소를 파친코 유기기(P)의 제어를 행하는 타이머 1 인터럽트의 점프 주소와 동일하게 함으로써, 이러한 잡음이 생겼을 경우에도, 파친코 유기기(P)를 오동작(誤動作)시키지 않고, 그의 제어를 계속할 수 있는 것이다.
다음으로, 도 2에 대해서 설명한다. RAM(15)에 설치되는 보존메모리(15a)는, 타이머 1 비교 레지스터(13b1)에 기록되는 카운트값을 기억하는 메모리이다. 본 실시예의 타이머 1 인터럽트는, 2㎳마다 실행된다. 따라서, 그 타이머 1 인터럽트에 의해 실행되는 각각의 인터럽트 처리마다(도 5의 플로차트의 처리를 실행할 때마다), 보존메모리(15a)의 값에 2㎳에 상당하는 카운트값을 가산하고, 가산한 후의 카운트값을 보존메모리(15a)에 기억하는 동시에, 이것을 타이머 1 비교 레지스터(13b1)에 기록하도록 하고 있다. 그러므로, 타이머 1 인터럽트가, 프리 러닝 카운터(13a)를 사용한 타이머 인터럽트회로일지라도, 인터럽트 발생으로부터 실제의 인터럽트처리가 개시될 때까지의 오차(誤差)시간을 누적하지 않고, 타이머 1 인터럽트를 정기적으로 실행할 수 있는 것이다.
또한, 본 실시예에서는, 비교 레지스터(13b1 ∼ 13b5)는, 모두 판독 및 기록이 가능하게 구성되어 있다. 따라서, 보존메모리(15a)를 설치하지 않고, 타이머 1 비교 레지스터(13b1)의 값을 직접 판독하여, 그 값에 2㎳에 상당하는 카운트값을 가산하고, 가산결과를 다시 타이머 1 비교 레지스터(13b1)에 기록하도록 구성하는 것을 생각할 수 있다. 그러나, 비교 레지스터(13b1 ∼ 13b5)는, 시스템 리세트 또는 사용자 리세트에 의해, 그 내용이 FFFFh로 초기화되어 버린다. 따라서, 이러한 구성을 이용한 경우, 리세트 인터럽트를 발생시키는 것과 같은 잡음 등이 생기면, 타이머 1 인터럽트의 인터럽트 간격(주기)이 흐트러져, 정상적인 제어를 계속할 수 없게 되는 것이다. 따라서, 본 실시예에서는, 잡음 등에 의한 이러한 결점을 회피하기 위해 RAM(15) 내에 보존메모리(15a)를 설치하여, 그 보존메모리(15a)에 타이머 1 비교 레지스터(13b1)의 카운트값을 기억시키고 있다.
입출력포트(17)는, 버스라인(18)을 통하여 접속되는 CPU(11) 또는 EEPROM(16) 이외에, 표시장치(D) 또는 다른 입출력장치(19) 등과 접속되어 있다. 제어부(C)는, 이 입출력포트(17)를 통하여, 표시장치(D) 또는 다른 입출력장치(19)에 각종의 동작 명령을 보내서 이들 각각의 장치를 제어한다. 즉, 액정표시장치(3)의 변동표시 또는 특정입상구(5)의 개폐동작도, 이 동작 명령에 의거하여 제어되는 것이다.
표시장치(D)는, CPU(21)와, 프로그램ROM(22)과, 작업RAM(23)과, 비디오RAM(24)과, 문자ROM(25)과, 화상(畵像)제어기(26)와, 입출력포트(27)와, 액정표시장치(3)를 구비하고 있다. 표시장치(D)의 CPU(21)는, 제어부(C)로부터 출력되는 동작 명령에 따라서 액정표시장치(3)의 표시제어(변동표시)를 행하는 것이고, 프로그램ROM(22)에는, 이 CPU(21)에 의해 실행되는 프로그램이 기억되어 있다. 작업RAM(23)은, CPU(21)에 의한 프로그램 실행시에 사용되는 작업 데이터가 기억되는 메모리이다.
비디오RAM(24)은, 액정표시장치(3)에 표시되는 데이터가 기억되는 메모리이고, 이 비디오RAM(24)의 내용을 개서(改書)함으로써, 액정표시장치(3)의 표시내용이 변경된다. 즉, 각각의 표시영역에 있어서의 무늬의 변동표시는, 비디오RAM(24)의 내용이 개서됨으로써 실행된다. 문자ROM(25)은, 액정표시장치(3)에 표시되는 무늬 등의 문자 데이터를 기억하는 메모리이다. 화상제어기(26)는, CPU(21), 비디오RAM(24), 입출력포트(27)의 각각의 타이밍을 조정하여, 데이터의 판독 및 기록을 개재(介在)하는 동시에, 비디오RAM(24)에 기억되는 표시 데이터를 문자ROM(25)을 참조하여 소정의 타이밍으로 액정표시장치(3)에 표시시키는 것이다.
다음으로, 상기와 같이 구성된 파친코 유기기(P)의 제어부(C)에서 실행되는 각각의 처리에 대해서, 도 5 및 도 6의 플로차트를 참조하여 설명한다. 도 5는 타이머 1 인터럽트에 의해 2㎳마다 실행되는 인터럽트처리의 플로차트이다. 또한, 도 4의 인터럽트 점프 테이블에 나타낸 바와 같이, 리세트 인터럽트의 점프 주소도 타이머 1 인터럽트의 점프 주소와 동일한 RESET 번지이다. 따라서, 이 인터럽트처리는, 전원을 투입한 경우의 리세트 인터럽트 처리에서도 마찬가지로 실행되는 것이다. 그리고, 불법 연산코드 트랩 인터럽트, 클록 모니터 이상 인터럽트가 발생했을 경우에도, 마찬가지로 이 인터럽트처리가 실행된다.
이 인터럽트처리에서는, 먼저, CPU(11) 전체의 인터럽트를 금지한 후(S1), 타이머 1의 인터럽트 요구(13g1)를 해제하기 위해 타이머 1 인터럽트 플래그(13c1)를 소거하고(S2), 스택 포인터의 값을 초기화한다(S3). 다음으로, RAM(15)의 소정 영역에 기록되어 있는 패턴(예를 들어, 키워드 등)을 검사하여, 바르게 기록되어 있는지의 여부, 즉, 패턴에 이상이 있는지 없는지를 검사한다(S4). 패턴에 이상이 있을 경우에는(S4:예), 전원을 투입한 후의 리세트 인터럽트처리에 의해 실행된 처리이기 때문에, 이러한 경우에는 RAM의 초기화 처리를 행하고(S5), 프리 러닝 카운터(13a)의 값을 보존메모리(15a)에 기록하는 것이다(S6). 또한, S4의 처리에서 검사되는 소정의 패턴은 RAM의 초기화 처리에서 기록된다.
S6의 처리가 종료한 후, 또는 S4의 패턴 검사에서 이상이 발견되지 않을 경우에는(S4:아니오), S7의 처리로 이행한다. S7의 처리에서는, 보존메모리(15a)에 기억되는 카운트값에 인터럽트 간격(주기)인 2㎳에 상당하는 카운트값을 가산한다(S7). 그리고, 가산한 후의 보존메모리(15a)의 값을 타이머 1 비교 레지스터(13b1)에 기록하고(S8), 다음의 타이머 1 인터럽트의 발생 시기를 세트한다. 그후, 타이머 1 마스크 레지스터(13d1)를 온(on)하고(S9), 게다가, CPU(11) 전체의 인터럽트를 허가한 후에(S10), 파친코 유기기(P)의 제어처리인 메인처리를 실행한다(S11).
메인처리를 실행한 후에는(S11), 다음의 타이머 1 인터럽트가 발생할 때까지 잔여시간 처리를 반복한다(S12). 도 6은 잔여시간 처리의 플로차트이고, 잔여시간 처리에서는 소정의 처리가 실행된다(S13). 또한, 이 소정의 처리로서는(S13), 예를 들어, 액정표시장치(3)에 표시되는 무늬 패턴의 갱신처리 또는 메인처리(S11)에서 사용되는 난수(亂數)의 갱신처리 등이 있다.
잔여시간 처리를 실행하고 있는 도중에(S12), 프리 러닝 카운터(13a)의 카운트값이 타이머 1 비교 레지스터(13b1)의 카운트값과 일치하여, 타이머 1 인터럽트 플래그(13c1)가 온(on)하고, 타이머 1 인터럽트가 발생하면, 이미 S9의 처리에 의해 타이머 1 마스크 레지스터(13d1)는 온되어 있고, 또한, S10의 처리에 의해 CPU(11) 전체의 인터럽트가 허가되어 있기 때문에, 앤드회로(13f1)에 의해 타이머 1의 인터럽트 요구(13g1)가 출력된다. 그리하면, CPU(11)는 실행 중인 명령이 종료한 후에 프로그램 카운터의 값을 스택 포인터로 물러나게 하고, 도 5의 플로차트의 인터럽트처리를 개시한다.
상기한 바와 같이, 이 인터럽트처리에서는, S3의 처리에 의해 스택 포인터가 초기화되어 있기 때문에, 이 인터럽트처리의 실행에 있어서, 실행시간이 긴 RETI(Return Interrupt)명령을 실행하여 스택 포인터의 값을 되돌릴 필요가 없다. 게다가, S9 및 S10의 처리에 의해 타이머 1의 다중인터럽트가 허가되어 있기 때문에, 타이머 1 인터럽트 플래그(13c1)가 온되면, 즉석에서 타이머 1의 인터럽트 요구(13g1)가 출력된다. 따라서, 타이머 1 인터럽트가 발생하고 나서 단시간 동안에, 이 인터럽트처리를 실행할 수 있는 것이다. 이것에 의해 CPU(11)에 내장되는 타이머 인터럽트를 사용해도 파친코 유기기(P)의 제어를 행할 수 있는 것이다.
또한, 본 실시예에 있어서 특허청구범위의 청구항 1에 기재된 인터럽트처리로서는, 도 5의 플로차트의 처리가 해당되고, 스택 복귀수단으로서는 S3의 처리가, 인터럽트 허가수단으로서는 S9 및 S10의 처리가, 제어수단으로서는 S11의 처리가, 루프수단으로서는 S12의 처리가, 각각 해당된다.
이상, 실시예에 의거하여 본 발명을 설명했으나, 본 발명이 상기 실시예에 한정되는 것은 아니고, 본 발명의 취지를 일탈하지 않는 범위 내에서 다양한 개량변형이 가능하다는 것은 용이하게 추측할 수 있다.
예를 들어, 본 실시예에서는, 도 5의 인터럽트처리는, 타이머 1의 인터럽트처리 이외에, 리세트 인터럽트의 인터럽트처리와 공용되고 있기 때문에, S3의 처리에서 스택 포인터를 되돌리는 것이 아니라, 초기화하도록 구성하고 있다. 그러나, 이 인터럽트처리가 리세트 인터럽트의 인터럽트처리와 공용되지 않고, 타이머 1의 인터럽트처리에 전용될 경우에는, S3의 처리에서 스택 포인터를 초기화하는 것이 아니라, 예를 들어, 팝(pop) 명령을 실행하거나 하여 스택 포인터의 값을 되돌리도록 구성할 수도 있다.
또한, 인터럽트처리가 타이머 1의 인터럽트와 리세트 인터럽트에서 공용될 경우에도, S3에 상당하는 스택 포인터를 조작하는 처리가, 리세트 인터럽트의 인터럽트처리와 타이머 1의 인터럽트처리로 구분되어 있으면, 타이머 1의 인터럽트처리에 의해 실행되는 스택 포인터의 조작처리를, 스택 포인터의 초기화 대신에, 예를 들어, 팝(pop) 명령의 실행 등에 의해 되돌리도록 구성할 수도 있다.
이하, 본 발명의 변형예를 나타낸다. 제 1 변형예의 탄구유기기의 제어장치는, 특허청구범위의 청구항 1에 기재된 탄구유기기의 제어장치에 있어서, 상기 스택 복귀수단은 스택 포인터의 초기화를 행하는 것이고, 상기 인터럽트회로에 의해 인터럽트가 발생했을 경우의 점프 목적지 주소는, 전원을 투입한 경우에 실행되는 리세트 인터럽트의 점프 목적지 주소와 동일하게 되어 있는 것을 특징으로 한다. 그러므로, 리세트 인터럽트가 발생하는 것과 같은 이상이 잡음 등에 의해 생겨도, 리세트 인터럽트의 점프 목적지 주소는, 상기 인터럽트회로에 의한 인터럽트가 발생했을 경우의 점프 목적지 주소와 동일하게 되어 있으므로, 이상한 리세트 인터럽트의 발생에 의해 상기 인터럽트처리가 실행된다. 따라서, 탄구유기기를 오동작시키지 않고 제어할 수 있다.
제 2 변형예의 탄구유기기의 제어장치는, 상기 제 1 변형예의 탄구유기기의 제어장치에 있어서, 상기 인터럽트 회로에 의한 인터럽트가 발생했을 경우의 점프 목적지 주소는, 정의되지 않은 연산코드를 인출한 경우에 발생하는 트랩 인터럽트의 점프 목적지 주소와 동일하게 되어 있는 것을 특징으로 한다. 그러므로, 트랩 인터럽트가 발생하는 것과 같은 이상이 잡음 등에 의해 생겨도, 트랩 인터럽트의 점프 목적지 주소는, 상기 인터럽트회로에 의한 인터럽트가 발생했을 경우의 점프 목적지 주소와 동일하게 되어 있기 때문에, 이상한 트랩 인터럽트의 발생에 의해 상기 인터럽트처리가 실행된다. 따라서, 탄구유기기를 오동작시키지 않고 제어할 수 있다.
제 3 변형예의 탄구유기기의 제어장치는, 상기한 제 1 및 제 2 변형예의 탄구유기기의 제어장치 또는 특허청구범위의 청구항 1에 기재된 탄구유기기의 제어장치에 있어서, 상기 인터럽트 회로는, 타이머 인터럽트회로에 의해 구성되고, 소정의 클록마다 갱신되는 프리 러닝 카운터와, 그 프리 러닝 카운터의 값과 비교되는 비교 레지스터를 구비하고 있고, 상기 프리 러닝 카운터의 값이 상기 비교 레지스터의 값과 일치했을 경우에 인터럽트를 발생시키는 것이고, 상기 비교 레지스터에 세트되어 있는 값을 기억하는 세트값 기억수단과, 상기 타이머 인터럽트회로에 의한 인터럽트가 발생했을 경우에 상기 세트값 기억수단의 내용에 인터럽트 간격에 상당하는 시간을 가산하는 가산수단과, 그 가산수단에 의한 가산결과를 상기 비교 레지스터 및 세트값 기억수단에 기록하는 기록수단을 구비하고 있는 것을 특징으로로 한다. 따라서, 프리 러닝 카운터를 사용한 타이머 인터럽트일지라도, 인터럽트의 발생으로부터 인터럽트처리가 개시될 때까지의 오차시간을 누적하지 않고, 소망하는 간격으로 인터럽트를 발생시킬 수 있다.
본 발명의 탄구유기기의 제어장치에 따르면, CPU에 내장되는 인터럽트회로 를 사용한 인터럽트처리에 의해, 인터럽트의 발생으로부터 인터럽트처리가 개시될 때까지의 시간을 단축할 수 있다. 따라서, 리세트 인터럽트를 발생시키기 위한 외부회로를 삭제하여, 회로 비용을 줄일 수 있다는 효과가 있다.
도 1은 본 발명의 일 실시예인 파친코 유기기의 유기반의 정면도.
도 2는 파친코 유기기의 전기적 구성을 나타낸 블록도.
도 3은 타이머 인터럽트회로의 구성을 나타낸 블록도.
도 4는 인터럽트 점프 테이블을 모식적으로 나타낸 도면.
도 5는 인터럽트처리를 나타낸 플로차트.
도 6은 잔여시간 처리를 나타낸 플로차트.
* 도면의 주요부분에 대한 부호의 설명
11: CPU
13: 타이머 인터럽트회로(인터럽트 발생수단, 인터럽트회로)
14: ROM 15: RAM
15a: 보존메모리 C: 제어부
D: 표시장치 P: 파친코 유기기(탄구유기기)

Claims (1)

  1. 소정의 간격으로 인터럽트를 발생시키는 인터럽트 발생수단과, 그 인터럽트 발생수단에 의한 인터럽트에 의해 실행되는 인터럽트 처리수단을 구비하고, 그 인터럽트 처리수단의 인터럽트 처리에 의해, 타구를 유기영역에 쏘아 유기를 행하는 탄구유기기를 제어하는 탄구유기기의 제어장치에 있어서,
    상기 인터럽트 발생수단은 CPU에 내장된 인터럽트회로로 구성되는 동시에,
    상기 인터럽트 처리수단은, 스택 포인터의 값을 상기 인터럽트 처리가 발생하기 이전의 상태로 복귀시키는 스택 복귀수단과,
    상기 인터럽트 발생수단에 의한 다중인터럽트의 발생을 허가하는 인터럽트 허가수단과,
    상기 탄구유기기의 제어를 실행하는 제어수단과,
    상기 스택 복귀수단, 인터럽트 허가수단 및 제어수단의 실행 후, 다음의 인터럽트처리가 실행될 때까지 소정의 처리를 반복하는 루프수단을 구비하고 있는 것을 특징으로 하는 탄구유기기의 제어장치.
KR1019980010070A 1998-03-24 1998-03-24 탄구유기기(彈球遊技機)의 제어장치 KR100516394B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980010070A KR100516394B1 (ko) 1998-03-24 1998-03-24 탄구유기기(彈球遊技機)의 제어장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980010070A KR100516394B1 (ko) 1998-03-24 1998-03-24 탄구유기기(彈球遊技機)의 제어장치

Publications (2)

Publication Number Publication Date
KR19990075698A KR19990075698A (ko) 1999-10-15
KR100516394B1 true KR100516394B1 (ko) 2006-05-25

Family

ID=41739682

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980010070A KR100516394B1 (ko) 1998-03-24 1998-03-24 탄구유기기(彈球遊技機)의 제어장치

Country Status (1)

Country Link
KR (1) KR100516394B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981539A (ja) * 1995-09-18 1997-03-28 Heiwa Corp 遊技制御用マイクロコンピュータ
JPH11226217A (ja) * 1998-02-13 1999-08-24 Sanyo Bussan Kk 弾球遊技機の制御装置
JP2000116887A (ja) * 1998-10-15 2000-04-25 Sankyo Kk 遊技機

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981539A (ja) * 1995-09-18 1997-03-28 Heiwa Corp 遊技制御用マイクロコンピュータ
JPH11226217A (ja) * 1998-02-13 1999-08-24 Sanyo Bussan Kk 弾球遊技機の制御装置
JP2000116887A (ja) * 1998-10-15 2000-04-25 Sankyo Kk 遊技機

Also Published As

Publication number Publication date
KR19990075698A (ko) 1999-10-15

Similar Documents

Publication Publication Date Title
JP3885367B2 (ja) 乱数生成回路、および、その乱数生成回路を備えた遊技機
JP4461493B2 (ja) 弾球遊技機
JP2000271326A (ja) 遊技機の制御装置
JP3888221B2 (ja) 制御装置および、その制御装置を備えた遊技機
KR100516394B1 (ko) 탄구유기기(彈球遊技機)의 제어장치
JP2002253823A (ja) 遊技機
JP4507020B2 (ja) 弾球遊技機
JP4411868B2 (ja) 弾球遊技機の制御装置および弾球遊技機
JP4124062B2 (ja) 遊技機
JP3593701B2 (ja) 制御装置
JP2000167212A (ja) 弾球遊技機
JP2004008807A5 (ko)
JP2004000755A5 (ko)
KR100250007B1 (ko) 제어방법
JP2004000755A (ja) 弾球遊技機
JP3885654B2 (ja) 遊技機
JP4725615B2 (ja) 遊技機
JP5360022B2 (ja) 遊技機
JP4450259B2 (ja) 弾球遊技機
JP4868059B2 (ja) 弾球遊技機
JP5382039B2 (ja) 弾球遊技機
JP4683086B2 (ja) 遊技機
JP4450255B2 (ja) 遊技機
JP4683087B2 (ja) 遊技機
JP4379936B2 (ja) 弾球遊技機

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
EXPY Expiration of term