KR20130109067A - 기록 장치, 및 기록 장치의 제어 방법 - Google Patents

기록 장치, 및 기록 장치의 제어 방법 Download PDF

Info

Publication number
KR20130109067A
KR20130109067A KR1020130032012A KR20130032012A KR20130109067A KR 20130109067 A KR20130109067 A KR 20130109067A KR 1020130032012 A KR1020130032012 A KR 1020130032012A KR 20130032012 A KR20130032012 A KR 20130032012A KR 20130109067 A KR20130109067 A KR 20130109067A
Authority
KR
South Korea
Prior art keywords
data
recording
command
font
stored
Prior art date
Application number
KR1020130032012A
Other languages
English (en)
Other versions
KR101429850B1 (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
Priority claimed from JP2012069210A external-priority patent/JP5987389B2/ja
Priority claimed from JP2012079660A external-priority patent/JP5987415B2/ja
Application filed by 세이코 엡슨 가부시키가이샤 filed Critical 세이코 엡슨 가부시키가이샤
Publication of KR20130109067A publication Critical patent/KR20130109067A/ko
Application granted granted Critical
Publication of KR101429850B1 publication Critical patent/KR101429850B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1827Accessing generic data, e.g. fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1806Receiving job control commands
    • G06K15/1809Receiving job control commands relating to the printing process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/40Details not directly involved in printing, e.g. machine management, management of the arrangement as a whole or of its constitutive parts
    • G06K15/4005Sharing resources or data with other data processing systems; Preparing such data
    • G06K15/402Sharing data concerning the arrangement's configuration or current state

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

제어 장치의 문의에 대해서, 데이터의 사용 상황을 토대로 해서, 적절하게 응답한다.
프린터의 기록 제어부는, 호스트 컴퓨터로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라 일시 기억 영역에 기억한 기록 가능 영역에 관계된 설정값을 변경하여, 상기 기록 가능 영역에 대해서는, 변경후의 설정값을 참조하면서 기록을 행하고, 호스트 컴퓨터로부터 설정값을 변경한 설정에 대한 문의가 있는 경우에는, 변경후의 설정값을 응답한다.

Description

기록 장치, 및 기록 장치의 제어 방법{RECORDING DEVICE AND CONTROL METHOD OF A RECORDING DEVICE}
본 발명은 제어 장치에 접속 가능한 기록 장치, 및 기록 장치의 제어 방법에 관한 것이다.
종래, 기록에 관한 각종 설정의 설정값을 기억하고, 이들 설정값을 참조하면서, 기록에 따른 각종 동작을 실행하는 기록 장치(인쇄 제어 장치)가 알려져 있다(예컨대, 특허문헌 1 참조). 일반적으로, 이러한 종류의 기록 장치를 제어하는 제어 장치(예컨대, 호스트 컴퓨터)는, 각종 설정에 대해서 기록 장치에 문의하는 기능이 실장되어 있다.
또한 종래, 폰트 데이터를 기억하고, 이 폰트 데이터에 기초해서 문자를 기록 가능하게 구성된 기록 장치(시리얼 프린터)가 알려져 있다(예컨대, 특허문헌 2 참조). 이러한 종류의 프린터에서는, 호스트 컴퓨터 등의 제어 장치로부터, 폰트 데이터를 저장하는 코드 페이지에 관한 문의가 있는 경우에, 상기 문의에 대해 응답하는 기능이 실장된 것이 있다.
일본 특허 공개 제 2008-203926호 공보 일본 특허 공개 평 7-195741호 공보
여기서, 각종 설정 중에는, 기록 장치에 의한 기록의 실행시에, 소정의 형태로 기록을 행하기 위해서, 그 설정값이 일시적으로 변경되는 것이 있다. 그리고, 기록 장치에 대해, 제어 장치로부터 설정에 대한 문의가 있는 경우, 일시적으로 설정값이 변경되는 설정이 있는 것을 토대로 한 적절한 응답을 행하고자 하는 요구가 있다.
또한 여기서, 폰트 데이터는, 문자를 기록할 때에 이용하는 것이기 때문에, 제어 장치로부터 폰트 데이터에 관한 문의가 있는 경우에는, 실제로 사용하는 폰트 데이터의 내용에 기초해서 응답해야 한다. 예컨대, 폰트 데이터에 대해 일시적인 개변(改變)이 행해지는 경우에는, 기록 장치는, 일시적인 개변이 반영된 폰트 데이터에 기초해서, 제어 장치로부터의 문의에 응해야 한다.
본 발명은, 상술한 사정을 감안해서 이루어진 것으로, 기록시에 일시적으로 설정값이 변경되는 설정이 있는 것을 토대로 해서, 제어 장치로부터의 설정에 관한 문의에 대해서 적절한 응답을 행하는 것을 목적으로 한다.
또한 본 발명은, 상술한 사정을 감안해서 이루어진 것으로, 기록 장치가, 제어 장치로부터 폰트 데이터를 저장하는 코드 페이지에 관한 문의가 있는 경우에, 코드 페이지의 사용 형태에 따라 적절하게 응답할 수 있도록 하는 것을 목적으로 한다.
상기 목적을 달성하기 위해서, 본 발명은, 제어 장치에 접속 가능한 기록 장치로서, 데이터를 기억하는 기억부를 구비하고, 상기 기억부에 기억한 데이터에 대해서, 일시 기억 영역에 기억하고, 상기 제어 장치로부터 상기 기억부에 기억한 데이터에 관한 문의가 있는 경우에, 상기 일시 기억 영역에 기억한 변경후의 데이터에 기초해서, 상기 문의에 대해 응답하는 것을 특징으로 한다.
이 구성에 의하면, 제어 장치의 문의에 대해, 데이터의 사용 상황을 토대로 해서, 적절하게 응답할 수 있다.
또한, 본 발명은, 상기 기억부에는, 기록 매체로의 기록에 관계된 설정에 관계된 설정값이 기술된 설정 데이터가 기억되고, 상기 설정 데이터에 기술된 상기 설정값을 상기 일시 기억 영역에 기억하며, 상기 제어 장치로부터 수신한 제어 커맨드에 기초해서, 상기 일시 기억 영역에 기억한 상기 설정값을 참조하면서, 상기 기록 매체에 기록하는 기록 제어부를 구비하고, 상기 기록 제어부는, 상기 제어 장치로부터 상기 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라 상기 일시 기억 영역에 기억한 소정의 설정에 관계된 설정값을 변경하며, 상기 소정의 설정에 대해서는 변경후의 상기 설정값을 참조하면서 기록을 행하고, 설정값을 변경한 설정에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 설정값을 응답하는 것을 특징으로 한다.
이 구성에 의하면, 기록 장치는, 설정값을 일시적으로 변경한 설정에 대해, 제어 장치로부터 문의가 있는 경우, 설정 데이터에 기술된 설정값이 아니라, 일시 기억 영역에 기억된 변경후의 설정값을 응답한다. 여기서, 일시 기억 영역에 기억된 설정값이, 기록에 따른 처리시에 실제로 사용되는 설정값이기 때문에, 상기 구성에 의해, 기록 장치는, 제어 장치로부터 설정에 관한 문의가 있는 경우, 기록시에 일시적으로 설정값이 변경되는 설정이 있는 것을 토대로 해서, 설정값이 변경된 설정에 대해서는, 기록시에 실제로 사용되는 설정값을 적절하게 응답하는 것이 가능하게 된다.
또한, 본 발명은, 상기 설정 데이터에는 기록 가능 영역에 관계된 설정값이 기술되고, 상기 기록 제어부는, 상기 제어 장치로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 일시 기억 영역에 기억한 기록 가능 영역에 관계된 설정값을 변경하며, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하고, 상기 제어 장치로부터 상기 기록 가능 영역에 대한 문의가 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는 것을 특징으로 한다.
여기서, 기록 장치는, 기록시에, 설정 데이터에 기술된 기록 가능 영역의 설정값에 대해서, 소정의 기록 결과를 얻기 위해서, 그 값을 확대하거나 또는, 축소하는 경우가 있다. 그리고, 상기 구성에 의하면, 기록 가능 영역의 설정값에 대해서 일시적인 변경이 행해진 경우에, 제어 장치로부터 기록 가능 영역에 대한 문의가 있는 경우, 기록 장치는, 일시적인 변경후의 기록 가능 영역의 설정값을 응답하기 때문에, 기록시에 실제로 사용하는 기록 가능 영역의 설정값을 적절하게 응답 가능하게 된다.
또한, 본 발명은, 상기 기록 제어부는, 상기 제어 장치로부터 1행분의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 1행에 기록되는 문자의 기록 가능 자리수가 소정의 값이 되도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는 것을 특징으로 한다.
여기서, 1행에 기록되는 문자의 기록 가능 자리수에 따라서, 기록 결과(기록 매체의 외형)이 크게 변하는 경우가 있다. 따라서, 기록 장치는, 소정의 기록 결과를 얻기 위해서, 기록 가능 영역의 설정값을 변경함으로써 1행에 기록되는 문자의 기록 가능 자리수를 조정하는 경우가 있다. 그리고, 상기 구성에 의하면, 기록 가능 자리수의 조정을 위해 기록 가능 영역의 설정값에 대해 일시적인 변경이 행해진 경우에 있어서, 제어 장치로부터 기록 가능 영역에 대한 문의가 있는 경우, 기록 장치는, 일시적인 변경후의 기록 가능 영역의 설정값을 응답하기 때문에, 기록시에 실제로 사용하는 기록 가능 영역의 설정값을 적절하게 응답 가능하게 된다.
또한, 본 발명은, 상기 기억부에는 폰트 데이터가 더 기억되고, 상기 기록 제어부는, 상기 제어 장치로부터 1행분의 소정의 폰트의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 소정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수와, 다른 특정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수가 일치하도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는 것을 특징으로 한다.
여기서, 기록 장치는, 1행분의 문자를 기록하는 경우에 있어서, 소정의 폰트로 기록한 경우와, 다른 특정의 폰트로 기록한 경우의 기록 결과를 근사시키도록, 상기 처치의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수와, 다른 특정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수가 일치하도록, 기록 가능 영역의 설정값을 일시적으로 변경하는 경우가 있다. 그리고, 상기 구성에 의하면, 기록 가능 자리수의 조정을 위해 기록 가능 영역의 설정값에 대해 일시적인 변경이 행해진 경우에 있어서, 제어 장치로부터 기록 가능 영역에 대한 문의가 있는 경우, 기록 장치는, 일시적인 변경후의 기록 가능 영역의 설정값을 응답하기 때문에, 기록시에 실제로 사용하는 기록 가능 영역의 설정값을 적절하게 응답 가능하게 된다.
또한, 본 발명은, 상기 기억부에는, 초기 처리를 실행시키는 초기 실행 커맨드가 하나 또는 복수 기술된 초기 실행 커맨드 데이터, 및 폰트 데이터가 저장된 코드 페이지가 기억되고, 전원 투입후, 또는 리셋후, 상기 기억부에 기억된 상기 초기 실행 커맨드 데이터에 기초해서, 상기 초기 실행 커맨드를 차례로 실행하는 처리 실행부를 구비하고, 상기 초기 실행 커맨드는, 상기 코드 페이지를 상기 일시 기억 영역에 전개시킴과 아울러, 상기 코드 페이지의 내용을 특정의 발송지(destination)용의 내용으로 변경시킬 것을 지시하는 발송지 대응 커맨드를 포함하며, 상기 처리 실행부는, 상기 제어 장치로부터 상기 코드 페이지에 관한 문의가 있는 경우, 특정의 발송지용으로 내용이 변경되고, 상기 일시 기억 영역에 전개된 상기 코드 페이지에 기초해서 상기 문의에 대해 응답하는 것을 특징으로 한다.
이 구성에서는, 전원의 투입후, 또는 리셋후, 코드 페이지는 발송지에 따라 그 내용이 변경된 뒤에, 일시 기억 영역에 전개된다. 이로써, 발송지에 따라 적절하게 그 내용이 변경된 코드 페이지를 이용해서 각종 문자를 기록 가능하게 된다. 그리고, 상기 구성에 의하면, 기록 장치는, 제어 장치로부터 코드 페이지에 관해 문의가 있는 경우에는, 변경후, 일시 기억 영역에 전개된 코드 페이지, 즉 실제로 사용하는 코드 페이지의 내용에 기초해서, 상기 문의에 대해 응답하기 때문에, 코드 페이지의 사용 형태에 따른 적절한 응답이 가능하다.
또한, 본 발명은, 상기 발송지 대응 커맨드는, 상기 코드 페이지에 저장된 폰트 데이터 중, 특정의 폰트 데이터를, 발송지에 따른 폰트 데이터로 변경시키는 지시를 포함하고, 상기 처리 실행부는, 상기 제어 장치로부터, 상기 특정의 폰트 데이터에 대해서 문의가 있는 경우, 발송지에 따른 변경후의 폰트 데이터에 기초해서 상기 문의에 대해 응답하는 것을 특징으로 한다.
이 구성에 의하면, 기록 장치는, 특정의 폰트 데이터에 대해서 문의가 있는 경우, 초기 처리에 의해서 발송지에 따라 변경된 후의 폰트 데이터에 기초해서 응답하기 때문에, 실제로 사용하는 폰트 데이터의 내용에 따른 적절한 응답이 가능하다.
또한, 본 발명은, 상기 초기 실행 커맨드 데이터는, 상기 기억부의 소정의 기억 영역에, 각 상기 초기 실행 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입된 데이터부와, 상기 기억 영역에서의 상기 데이터의 크기를 나타내는 정보를 포함하는 정보부를 포함해서 구성되어 있는 것을 특징으로 한다.
여기서, 초기 실행 커맨드 데이터를, 관계 데이터 베이스로 하고, 이로써, 초기 실행 커맨드 데이터에 기술된 각 초기 실행 커맨드의 관리를 용이하게 하는 것도 생각할 수 있지만, 이 경우, 관계 데이터 베이스의 관리 정보(예컨대, 기억 영역에서의 각 필드의 어드레스와, 각 필드에 저장된 데이터를 대응짓는 정보)를 기억할 필요가 있고, 또한 불필요하게 기억 영역을 확보하는 사태가 생길 수 있기 때문에, 비휘발성 메모리의 효율적인 이용에 과제가 있다.
이것을 토대로 해서, 상기 구성에 의하면, 초기 실행 커맨드 데이터에 있어서의 데이터부에는, 각 초기 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입되어 있기 때문에, 상기 데이터부가 차지하는 기억 영역이 필요 최소한이면 되는 것과 아울러, 각 커맨드를 실행하는 순서를 관리하기 위한 정보를 기억할 필요가 없다. 또한, 초기 실행 커맨드 데이터에 있어서의 정보부는, 데이터의 크기를 나타내는 정보라는, 기억 영역에서 데이터부가 기억되어 있는 영역을 특정하기 위해서 필요한 최소한의 정보를 유지하고 있다. 이 때문에, 이 정보부의 크기자체가 작아서, 비휘발성 메모리의 효율적인 이용을 실현할 수 있다.
또한, 상기 목적을 달성하기 위해서, 본 발명은, 제어 장치에 접속 가능하게 구성되며, 데이터를 기억하는 기억부를 구비하는 기록 장치의 제어 방법으로서, 상기 기억부에 기억한 데이터에 대해서, 일시 기억 영역에 기억하고, 상기 제어 장치로부터 상기 기억부에 기억한 데이터에 관한 문의가 있는 경우, 상기 일시 기억 영역에 기억한 변경후의 데이터에 기초해서, 상기 문의에 대해 응답하는 것을 특징으로 한다.
이 구성에 의하면, 제어 장치의 문의에 대해, 데이터의 사용 상황을 토대로 해서, 적절하게 응답하는 것이 가능하게 된다.
또한, 본 발명은, 상기 기억부에는, 기록 매체로의 기록에 관계된 설정에 관계된 설정값이 기술된 설정 데이터가 기억되고, 상기 설정 데이터에 기술된 상기 설정값을 일시 기억 영역에 기억하며, 상기 제어 장치로부터 수신한 제어 커맨드에 기초해서, 상기 일시 기억 영역에 기억한 설정값을 참조하면서 상기 기록 매체에 기록하는 한편, 상기 제어 커맨드의 내용에 따라 상기 일시 기억 영역에 기억한 소정의 설정에 관계된 설정값을 변경하고, 상기 소정의 설정에 대해서는, 변경후의 상기 설정값을 참조하면서 기록을 행하며, 설정값을 변경한 설정에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 설정값을 응답하는 것을 특징으로 한다.
이 제어 방법에 의하면, 기록 장치는, 제어 장치로부터 설정에 관한 문의가 있는 경우, 기록시에 일시적으로 설정값이 변경되는 설정이 있는 것을 토대로 해서, 설정값이 변경된 설정에 대해서는, 기록시에 실제로 사용되는 설정값을 적절하게 응답하는 것이 가능하게 된다.
또한, 본 발명은, 상기 기억부에는, 초기 처리를 실행시키는 초기 실행 커맨드가 하나 또는 복수 기술된 초기 실행 커맨드 데이터, 및 폰트 데이터가 저장된 코드 페이지가 기억되고, 상기 초기 실행 커맨드는, 상기 코드 페이지를 일시 기억 영역에 전개시킴과 아울러, 상기 코드 페이지의 내용을 특정의 발송지용의 내용으로 변경시킬 것을 지시하는 발송지 대응 커맨드를 포함하며, 전원의 투입후, 또는 리셋후, 상기 기억부에 기억된 상기 초기 실행 커맨드 데이터에 기초해서, 상기 초기 실행 커맨드를 차례로 실행하고, 상기 제어 장치로부터 상기 코드 페이지에 관한 문의가 있는 경우, 특정의 발송지용으로 내용이 변경되며, 상기 일시 기억 영역에 전개된 상기 코드 페이지에 기초해서 상기 문의에 대해 응답하는 것을 특징으로 한다.
이 제어 방법에 의하면, 기록 장치는, 제어 장치로부터 코드 페이지에 관해 문의가 있는 경우에는, 변경후, 일시 기억 영역에 전개된 코드 페이지, 즉 실제로 사용하는 코드 페이지의 내용에 기초해서, 상기 문의에 대해 응답하기 때문에, 코드 페이지의 사용 형태에 따른 적절한 응답이 가능하다.
본 발명에 의하면, 제어 장치의 문의에 대하여, 데이터의 사용 상황을 토대로 해서, 적절하게 응답할 수 있다. 예컨대, 제어 장치로부터의 설정에 관한 문의가 있는 경우에, 기록시에 일시적으로 변경된 설정값에 대해서 적절한 응답을 행할 수 있다. 또한, 제어 장치로부터 폰트 데이터를 저장하는 코드 페이지에 관한 문의가 있는 경우에, 코드 페이지의 사용 형태에 따라 적절하게 응답할 수 있다.
도 1은 실시예 1에 따른 기록 시스템의 기능적 구성을 나타내는 블록도,
도 2a는 폰트 크기를 나타낸 도면,
도 2b는 설정 데이터의 내용을 나타낸 도면,
도 3은 제어 커맨드와, 제어 커맨드에 기초한 기록 결과의 일례를 나타내는 도면,
도 4는 행 버퍼에 폰트 데이터가 전개되는 모양을 나타내는 도면,
도 5는 프린터의 동작을 나타내는 흐름도,
도 6은 실시예 2에 따른 기록 시스템의 기능적 구성을 나타내는 블록도,
도 7은 코드 페이지를 나타내는 도면,
도 8은 초기 실행 커맨드 데이터를 나타내는 도면,
도 9는 프린터의 동작을 나타내는 흐름도이다.
이하, 도면을 참조하여 본 발명의 실시예에 대해서 설명한다.
<실시예 1>
도 1은, 본 실시예에 따른 기록 시스템(1)의 기능적 구성을 나타내는 블록도이다.
기록 시스템(1)은 호스트 컴퓨터(10)(제어 장치)와, 프린터(11)(기록 장치)를 구비하고, 호스트 컴퓨터(10)의 제어하에서, 프린터(11)에 의해 기록 매체에 기록하는 시스템이다. 특히, 본 실시예에 따른 기록 시스템(1)에서는, 호스트 컴퓨터(10)와 프린터(11)가 협동해서 영수증을 발행할 수 있다. 영수증을 발행할 때의 호스트 컴퓨터(10) 및 프린터(11)의 동작에 대해서는 후술한다.
도 1에 나타낸 바와 같이, 호스트 컴퓨터(10)는 호스트측 제어부(15)와, 호스트측 표시부(16)와, 호스트측 입력부(17)와, 호스트측 인터페이스(I/F)부(18)와, 호스트측 기억부(19)를 구비하고 있다.
호스트측 제어부(15)는 호스트 컴퓨터(10)의 각 부를 중추적으로 제어하는 것으로, CPU나, ROM, RAM, 그 밖의 주변 회로 등을 구비하고 있다. 호스트측 제어부(15)는 애플리케이션 실행부(20)와, 프린터 스크류 드라이버 실행부(21)를 구비하고 있지만, 이들에 대해서는 후술한다. 호스트측 표시부(16)는, 액정 디스플레이 패널 등의 표시 패널을 구비하고, 호스트측 제어부(15)의 제어하에서, 표시 패널에 각종 정보를 표시한다. 호스트측 입력부(17)는, 각종 입력 디바이스에 접속되어서, 이들 입력 디바이스에 대한 조작을 검출하여, 호스트측 제어부(15)에 출력한다. 호스트측 인터페이스부(18)는, 호스트측 제어부(15)의 제어하에서, 프린터(11)와의 사이에서 통신 규격에 준거한 통신을 행한다. 호스트측 기억부(19)는, 하드디스크이나, EEPROM 등의 기억 장치를 구비하여, 각종 데이터를 덮어쓰기 가능하게 기억한다.
한편, 프린터(11)는 발열 소자가 나란히 마련된 기록 헤드(23)를 구비하고, 이 기록 헤드(23)에 의해서, 감열롤지(24)(기록 매체)의 기록면에 열을 가해서 화소를 형성함으로써 화상을 기록하는 서멀 프린터이다. 특히, 프린터(11)는 감열롤지(24)에 소정의 화상을 기록한 후, 소정의 위치에서 감열롤지(24)를 절단함으로써 영수증을 발행 가능하다.
도 1에 나타낸 바와 같이, 프린터(11)는 제어부(30)와, 표시부(31)와, 입력부(32)와, 프린트 엔진(33)과, 기억부(35)와, 인터페이스부(I/F)(36)를 구비하고 있다.
제어부(30)는 CPU나, ROM, RAM, 그 밖의 주변 회로를 구비해서, 프린터(11)의 각 부를 중추적으로 제어한다. 제어부(30)는, 기록 제어부(37)를 구비하고 있지만, 이에 대해서는 후술한다. 표시부(31)는, 프린터(11)의 동작 상태 등의 각종 정보를 표시하는 액정 패널 등의 표시 패널이나, LED를 구비하고, 제어부(30)의 제어하에서, 상기 표시 패널에 각종 정보를 표시하며, 또한, LED를 소정의 형태로 점등/소등한다. 입력부(32)는 프린터(11)에 설치된 각종 조작 스위치에 접속되어, 조작 스위치에 대한 조작을 검출하여 조작 신호로서 제어부(30)에 출력한다.
프린트 엔진(33)은 상술한 기록 헤드(23) 이외에, 감열롤지(24)를 반송하는 반송 기구, 감열롤지(24)를 절단하는 절단 기구 등을 구비하고 있다. 제어부(30)의 기록 제어부(37)는, 펌웨어를 판독해서 실행함으로써 호스트 컴퓨터(10)로부터 수신한 제어 커맨드에 기초해서, 각종 센서의 검출값을 감시하면서, 기록 헤드(23)나, 각종 모터를 제어하여, 감열롤지(24)에 소정의 화상을 기록하고, 소정의 위치에서 감열롤지(24)를 절단함으로써 소정의 화상이 기록된 종잇 조각인 영수증을 발행한다. 이 기록 제어부(37)의 기능은, CPU가 펌웨어를 판독해서 실행하는 등, 하드웨어와 소프트웨어의 협동에 의해 실현된다.
인터페이스부(36)는, 제어부(30)의 제어하에서, 호스트 컴퓨터(10)와의 사이에서 통신 규격에 준거한 통신을 행한다. 기억부(35)는, EEPROM이나, 하드디스크 등의 비휘발성 메모리를 구비하고, 각종 데이터를 덮어쓰기 가능하게 비휘발적으로 기억한다. 기억부(35)에는, 프린터(11)의 동작을 제어하기 위한 펌웨어가 기억되어 있다. 또한, 기억부(35)에는, 폰트 A 테이블(40), 및 설정 데이터(41)가 기억되지만, 이들에 대해서는 후술한다.
이어서, 애플리케이션 실행부(20) 및 프린터 스크류 드라이버 실행부(21)의 설명을 통해서, 기록 시스템(1)이 영수증을 발행할 때의 기본적인 동작에 대해서 설명한다.
애플리케이션 실행부(20)는, 호스트 컴퓨터(10)에 미리 인스톨된 애플리케이션을 실행함으로써 영수증에 기록할 화상에 관한 각종 정보를 포함한 화상 정보 데이터를 생성하여, 프린터 스크류 드라이버 실행부(21)에 출력한다.
프린터 스크류 드라이버 실행부(21)는, 호스트 컴퓨터(10)에 미리 인스톨된 프린터 스크류 드라이버를 실행함으로써 애플리케이션 실행부(20)로부터 입력된 화상 정보 데이터에 기초해서, 프린터(11)의 커맨드 수단에 대응한 제어 커맨드를 생성하여, 프린터(11)에 출력한다.
제어 커맨드란 프린터(11)에 영수증의 발행에 따른 각종 동작을 행하게 하기 위한 커맨드군으로, 화상의 기록을 지시하는 커맨드나, 소정의 반송량, 감열롤지(24)를 반송하는 것을 지시하는 커맨드, 감열롤지(24)의 절단을 지시하는 커맨드 등이 포함되어 있다. 호스트 컴퓨터(10)로부터 프린터(11)에 출력된 제어 커맨드는, 차례대로, 수신 버퍼(도시 생략)에 저장된다. 프린터(11)의 제어부(30)의 기록 제어부(37)는, 수신 버퍼에 저장된 제어 커맨드를, 차례로 판독해서 실행함으로써 프린트 엔진(33)를 제어하여, 영수증의 발행에 따른 각종 동작을 실행하고, 영수증을 발행한다.
다음으로 감열롤지(24)에의 문자의 기록에 대해서 설명한다.
도 2a는, 폰트 A 및 폰트 A'의 폰트 크기를 나타내는 도면이다.
프린터(11)는 폰트의 한 종류인 폰트 A에 대응하고 있고, 폰트 A에 따른 폰트 테이블인 폰트 A 테이블(40)이 기억부(35)에 기억되어 있다. 폰트 테이블이란 폰트 데이터를 집합해서 기억하는 테이블이고, 또한 폰트 데이터란 문자를 감열롤지(24)에 기록 가능한 형태로 표현하는 실제 데이터이다. 본 실시예에서는, 폰트 데이터의 형태는, 비트맵 폰트 데이터이다. 도 2a에 나타낸 바와 같이, 폰트 A의 폰트 크기는, 가로 12도트×세로 24도트이다.
도 2b는, 기억부(35)에 기억된 설정 데이터(41)에 기술된 설정값 중, 본원 발명에 관계된 설정값에 대해서, 모식적으로 나타내는 도면이다. 설정 데이터(41)란, 기록에 관한 각종 설정에 관계된 설정값이 집합적으로 기술된 데이터이다. 각종 설정에 관계된 설정치란, 감열롤지(24)에의 기록을 포함하는 영수증의 발행시에 이용되는 설정이나, 조건 등이 구체적인 값이다. 예컨대, 설정으로서 기록 속도가 존재하는 경우의 기록 속도의 값(예컨대, 고속, 중속 및, 저속 중 어느 하나를 나타내는 값)이나, 설정으로서 기록 농도가 존재하는 경우의 기록 농도의 값, 세트되어 있는 감열롤지(24)의 종이폭을 나타내는 값, 좌우의 마진을 나타내는 값 등이다. 본 실시예에서는, 설정 데이터(41)에 있어서의 각종 설정의 설정값의 기술, 덮어쓰기는, 호스트 컴퓨터(10)의 프린터 스크류 드라이버에 의해 제공되는 유저 인터페이스를 통해서, 유저가 임의로 행할 수 있는 구성으로 되어 있다.
도 2b에 나타낸 바와 같이, 본 실시예에서는, 프린터(11)의 설정으로서, 기록 가능 영역이 적어도 존재한다. 기록 가능 영역이란, 감열롤지(24)에 화상을 기록할 때, 실제로 화상을 기록하는 것이 가능한 영역의 폭 방향의 길이이다. 도 2b의 예에서는, 기록 가능 영역에 관계된 설정값은 400도트이다. 상술한 바와 같이, 기록 가능 영역에 관계된 설정값은 유저가 임의로 설정 가능하다.
이어서, 프린터(11)가 문자열을 기록할 때의 기본적인 동작에 대해서 설명한다.
도 3 중 A는, 소정의 문자열의 기록을 지시하는 제어 커맨드의 일례를 모식적으로 나타내는 도면으로, 구체적으로는 폰트 A에 의해서 문자열 'AAA…A'(문자 'A'가 34개 연속한 문자열. 이하 마찬가지임)를 기록할 것을 지시하는 커맨드군(CG)을 나타내고 있다. 또한, 도 3 중 B는, 도 3의 A에 나타내는 커맨드군(CG)을 실행함으로써 문자열이 기록된 감열롤지(24)의 모양을 모식적으로 나타내는 도면이다.
도 3의 A에 나타낸 바와 같이, 커맨드군(CG)은 폰트 지정 커맨드(FC)와, 문자열 기록 지시 커맨드(MC)를 포함하고 있다.
폰트 지정 커맨드(FC)는 문자열을 기록할 때의 폰트를 지정하는 커맨드로, 도 3의 A의 폰트 지정 커맨드(FC)는 문자열을 기록할 때의 폰트로서 폰트 A를 지정하고 있다.
또한, 문자열 기록 지시 커맨드(MC)란 문자열을 기록할 것을 지시하는 커맨드이다. 문자열 기록 지시 커맨드(MC)는 명령 코드와, 소정의 문자 코드(예컨대, 아스키 코드)로 표현된 문자 조합으로 이루어지는 문자열이, 조합되어 구성되어 있다. 도 3의 A의 문자열 기록 지시 커맨드(MC)는 예컨대, 'XXX "AAA…A"'(단, XXX는 문자열을 기록할 것을 지시하는 명령 코드. 또한 이중따옴표 내의 문자열은, 아스키 코드로 표현된 문자의 조합에 의해 구성된 문자열)이라는 구성으로 되어 있다.
이하, 커맨드군(CG)에 기초해서, 폰트 A에서 문자열 'AAA…A'을 기록하는 경우의 프린터(11)의 동작에 대해서 설명한다.
우선, 호스트 컴퓨터(10)의 프린터 스크류 드라이버 실행부(21)는 커맨드군(CG)을 생성하여, 프린터(11)에 송신한다. 프린터(11)에 있어서, 호스트 컴퓨터(10)로부터 수신한 커맨드군(CG)에 포함되는 제어 커맨드는 수신 버퍼에 일시적으로 저장된다.
프린터(11)의 제어부(30)의 기록 제어부(37)는, 수신 버퍼에 저장된 폰트 지정 커맨드(FC) 및, 문자열 기록 지시 커맨드(MC)를 판독한다. 이어서, 기록 제어부(37)는, 문자열 기록 지시 커맨드(MC)가 지정하는 문자열 'AAA…A'를 구성하는 각 문자를 차례로 취득하고, 폰트 지정 커맨드(FC)가 지정하는 폰트(폰트 A)의 폰트 테이블(폰트 A 테이블(40))을 참조하여, 취득한 문자를 폰트 데이터로 변환해서 행 버퍼(45)에 차례로 전개한다. 여기서, 아스키 코드로 표현된 문자 각각은, 폰트 A 테이블(40)에 기억된 어느 한 폰트 데이터와 대응 관계에 있고, 이 대응 관계를 나타내는 정보가 기억부(35)에 미리 기억되어 있다.
도 4는 행 버퍼(45)에 폰트 데이터가 전개되는 모양을 나타내는 도면이다.
행 버퍼(45)란 제어부(30)의 RAM의 소정의 기억 영역에 형성된, 1행분의 프린터 버퍼이다. 본 실시예에서는, 문자열의 기록은 행마다 실시되는 구성으로 되어 있으며, 감열롤지(24)에 1행분의 문자열을 기록하는 경우, 기록 제어부(37)는 상기 문자열을 구성하는 모든 문자의 폰트 데이터를, 행 버퍼(45)에 전개한 후, 행 버퍼(45)에 전개되어 있는 데이터에 기초해서 화상을 기록한다.
행 버퍼(45)에 폰트 A에 따른 폰트 데이터가 전개되는 동작을 구체적으로 설명한다. 우선, 기록 제어부(37)는, RAM에 가로 400 도트, 세로 24 도트의 행 버퍼(45)를 형성한다. 행 버퍼(45)의 가로의 크기는 프린터(11)의 기록 가능 영역에 관계된 설정값에 의해서 규정되고, 세로의 크기는 전개하는 폰트 데이터의 세로 방향의 폰트 크기에 의해서 규정된다. 이어서, 기록 제어부(37)는 도 4의 A에 나타낸 바와 같이, 행 버퍼(45)에 있어서, 문자열 'AAA…A'를 구성하는 각 문자 중, 처리 대상으로 되어 있는 하나의 문자를 취득하고, 취득한 문자를 폰트 데이터로 변환하며, 변환한 폰트 데이터를 행 버퍼(45)에 전개한다. 이 취득, 변환, 전개라는 일련의 동작을 순서대로 행함으로써, 문자열 'AAA…A'를 구성하는 각 문자의 폰트 데이터를, 화살표 Y1 방향을 향해서, 차례로 행 버퍼(45)에 전개한다.
여기서, 문자열 'AAA…A' 각각의 문자의 폰트 데이터를 행 버퍼(45)에 차례로 전개해 간 경우, 행 버퍼(45)의 가로의 크기가 400도트이고, 폰트 A에 따른 폰트 데이터의 가로의 크기가 12도트이기 때문에, 33번째의 문자 'A'의 폰트 데이터를 전개한 이후에는, 34번째의 문자 'A'의 폰트 데이터를 행 버퍼(45)에 전개할 수 없는 상태가 된다. 이 상태가 나타난 경우, 기록 제어부(37)는 행 버퍼(45)가 풀(만충)이 되었다고 판별하고, 행 버퍼(45)에 전개된 데이터에 기초해서, 33개분의 문자 'A'에 의해서 구성된 문자열의 기록을 행한다. 이어서, 기록 제어부(37)는, 행 버퍼(45)를 버퍼 클리어하고, 나머지의 문자의 폰트 데이터를 행 버퍼(45)의 선두부터 차례로 전개한다. 구체적으로는, 34번째의 문자 'A'의 폰트 데이터를 행 버퍼(45)에 전개한다(도 4 중 B). 이어서, 기록 제어부(37)는 행 버퍼(45)에 전개된 데이터에 기초해서, 34번째의 문자 'A'를 기록한다.
이상의 동작이 행해짐으로써, 도 3의 A의 커맨드군(CG)에 기초해서, 도 3의 B에 나타내는 형태로 감열롤지(24)에 문자열 'AAA…A'가 기록된다.
여기서, 기록 가능 자리수란, 1행에 기록 가능한 문자의 자리수로, 기록 가능 영역에 관계된 설정값과, 문자의 폰트 데이터의 가로의 크기의 관계에 따라 규정된다. 상기 예로 설명하면, 기록 가능 영역의 설정값이 400도트이고, 문자의 폰트 데이터의 가로의 크기가 12도트이기 때문에, 기록 가능 자리수는 33자리수(400÷12=33.3 …)가 된다. 이 기록 가능 자리수는, 바꾸어 말하면, RAM에 형성한 행 버퍼(45)에 전개 가능한 폰트 데이터의 수의 최대값이다. 그리고, 본 실시예에서는, 기록 제어부(37)는 기록 가능 자리수 이상의 자리수를 갖는 문자열의 기록이 지시된 경우는, 상술한 동작을 실행함으로써 1행에 기록 가능 자리수분의 문자를 기록한 후, 행을 전환해서 나머지 문자를 기록한다.
그런데, 호스트 컴퓨터(10)는 프린터(11)에 문자열을 기록시키는 경우, 상술한 바와 같이, 폰트 지정 커맨드(FC)에 의해 폰트를 지정한다. 그러나 프린터(11)가, 호스트 컴퓨터(10)가 지정하는 폰트에 대응하지 않는(상기 폰트의 폰트 테이블 를 갖고 있지 않음) 경우가 있다. 이 경우, 프린터(11)는, 자신이 대응하고 있는 폰트에 따라 문자열을 기록하게 되지만, 이 때, 호스트 컴퓨터(10)가 지정한 폰트로 문자열을 기록했을 때의 기록 결과와, 프린터(11)가 대응하고 있는 폰트로 문자열을 기록했을 때의 기록 결과가 근사한 상태가 될 것이 요구되는 경우가 있다. 특히, 영수증은, 발행된 후에 고객에게 인도되는 것이기 때문에, 폰트에 대응하는지 여부에 관계없이, 기록 결과가 근사한 상태가 될 것이 요구된다. 그리고, 기록 결과를 근사한 상태로 하기 위해서는, 적어도 호스트 컴퓨터(10)가 지정한 폰트로 문자열을 기록했을 때의 기록 가능 자리수와, 프린터(11)가 대응하고 있는 폰트로 문자열을 기록했을 때의 기록 가능 자리수를 일치시킬 필요가 있다. 이것은, 기록 가능 자리수가 다르면, 문자열의 행 바꿈 위치나, 영수증에 있어서 문자열이 기록되는 위치의 밸런스가 다른 요인이 되어서, 기록 결과가 현저하게 차이나는 요인이 될 수 있기 때문이다.
이것을 토대로 해서, 본 실시예에 따른 프린터(11)는, 이하의 동작을 실행함과 아울러 또한, 호스트 컴퓨터(10)로부터의 설정에 관한 문의에 대해서, 이하의 동작을 행하는 것을 토대로 한 적절한 동작을 행한다.
이하, 호스트 컴퓨터(10)가 폰트 A'를 지정하고, 문자열의 기록을 지시하는 경우, 즉 폰트 A'를 지정하는 폰트 지정 커맨드(FC), 및 문자열 기록 지시 커맨드(MC)를 포함하는 커맨드군(CG)을 프린터(11)에 출력하는 경우를 예로 해서, 프린터(11)의 동작에 대해서 설명한다. 도 2a에 도시한 바와 같이 폰트 A'의 크기는 가로 13도트×세로 26도트이다.
도 5는 프린터(11)의 동작을 나타내는 흐름도이다.
우선, 프린터(11)의 제어부(30)의 기록 제어부(37)는, 폰트 A'를 지정하는 폰트 지정 커맨드(FC) 및 문자열 기록 지시 커맨드(MC)를 포함하는 커맨드군(CG)을 수신한다(스텝 SA1). 커맨드군(CG)을 수신하면, 기록 제어부(37)는 영수증의 발행을 행하기 위한 준비에 따른 처리로서, 기억부(35)에 기억된 설정 데이터(41)를 참조해서, 각종 설정의 설정값을 펌웨어 상에 정의된 대응하는 변수에 저장한다(스텝 SA2). 설정 데이터(41)에 기술된 각종 설정의 설정값을, 프로그램 상에 정의된 변수에 저장하는 처리는, 구체적으로는 RAM 등에 형성된 워크 에어리어(일시 기억 영역)의 적절한 기억 영역에, 설정에 관계된 설정값을 전개하는 처리로, '설정 데이터에 기술된 각종 설정에 관계된 설정값을 일시 기억 영역에 기억한다'고 하는 처리에 해당한다. 이와 같이 설정값을 변수에 저장함으로써 기록 제어부(37)는, 설정값을 참조하면서 영수증의 발행에 따른 각종 처리를 실행 가능하게 된다. 특히, 스텝 SA2에서는, 변수 H1에, 기록 가능 영역에 관계된 설정값(본 예에서는, 400도트)이 저장된다.
이어서, 기록 제어부(37)는, 폰트 지정 커맨드(FC)에 의해서 지정된 폰트가, 프린터(11)가 대응하고 있는 폰트 A인지 여부를 판별한다(스텝 SA3). 폰트 A인 경우(스텝 SA3:예), 기록 제어부(37)는 폰트 A 테이블(40)을 이용해서 통상대로 기록에 따른 처리를 실행한다(스텝 SA4).
한편, 폰트 A가 아닌 경우에는, 기록 제어부(37)는, 자신이 대응하고 있는 폰트 A에 의해서 문자를 기록할 필요가 있다. 그리고, 스텝 SA3에 있어서, 폰트 지정 커맨드(FC)에 의해서 지정된 폰트가, 프린터(11)가 대응하고 있는 폰트 A가 아니라고 판별한 경우(스텝 SA3:아니오), 기록 제어부(37)는 폰트 지정 커맨드(FC)가 지정하는 폰트로 문자를 기록했다고 가정한 경우의 기록 가능 자리수를 산출한다(스텝 SA5).
스텝 SA5의 처리에 대하여 상세하게 설명한다. 상술한 바와 같이, 기록 가능 자리수는, 기록 가능 영역에 관계된 설정값과, 문자의 폰트 데이터의 가로의 크기의 관계에 의해서 규정된다. 그리고, 본 예에서는, 기록 가능 영역에 관계된 설정값은 400도트이고, 폰트 지정 커맨드(FC)에 의해서 지정된 폰트 A'의 가로의 크기는 13도트이기 때문에, 스텝 SA5에서 기록 제어부(37)에 의해 산출되는 기록 가능 자리수는, 30자리수(400÷13=30.7…)이다. 즉, 호스트 컴퓨터(10)는 기록 가능 자리수가 30자리수인 것을 전제로 해서 문자열의 기록을 지시하고 있고, 이 기록 가능 자리수에 준하여 문자열을 기록할 필요가 있다. 한편, 폰트 지정 커맨드(FC)에 폰트 A'의 가로의 크기를 나타내는 정보가 포함되어 있는 경우에는, 기록 제어부(37)는 상기 정보에 기초해서 폰트 A'의 가로의 크기를 취득해도 되고, 또한 폰트 A'의 가로의 크기를 나타내는 정보가 사전에 기억되어 있는 경우에는 이것을 이용해서 상기 정보를 취득해도 되며, 또한 호스트 컴퓨터(10)와 소정의 타이밍에 소정의 프로토콜에 준하여 통신을 행하여 상기 정보를 취득해도 된다. 즉, 폰트 A'의 가로의 크기를 나타내는 정보의 취득 수단은 임의이다.
이어서, 기록 제어부(37)는, 폰트 A로 1행에 문자를 기록했다고 한 경우의 기록 가능 자리수가, 스텝 SA5에서 산출한 기록 가능 자리수(30자리수)가 되는, 기록 가능 영역의 설정값을 산출한다(스텝 SA6). 상세하게 설명하면, 폰트 A의 가로의 크기는 12도트이다. 따라서, 폰트 A로 1행에 문자를 기록했다고 한 경우의 기록 가능 자리수를 30자리수로 하기 위해서는, 기록 가능 영역의 설정값을 360도트 (12도트×30자리수)로 하면 된다. 이로써, 행 버퍼(45)를 형성할 때의 가로의 크기가 360도트가 되고, 행 버퍼(45)에 전개 가능한 폰트 A의 폰트 데이터의 최대수(=기록 가능 자리수)가 '30'이 된다. 이상을 토대로 해서, 스텝 SA6에서, 기록 제어부(37)는, 스텝 SA5에서 산출한 기록 가능 자리수에 폰트 A의 가로의 크기를 곱함으로써 기록 가능 영역의 설정값을 산출한다.
이어서, 기록 제어부(37)는, 변수 H1에 저장된 값을 스텝 SA6에서 산출한 기록 가능 영역의 설정값으로 변경한다(스텝 SA7).
이어서, 기록 제어부(37)는 소정의 기억 영역에 행 버퍼(45)를 형성한다(스텝 SA8). 행 버퍼(45)의 가로의 크기는, 변수 H1에 저장된 변경후의 기록 가능 영역의 설정값에 기초해서 규정된다. 이와 같이, 각종 처리의 실행시에, 실제로 사용되는 설정값은, 설정 데이터(41)에 기술되어 있는 것이 아니라, 프로그램 상의 각종 변수로 저장되어 있는 것이다.
이어서, 기록 제어부(37)는, 문자열 기록 지시 커맨드(MC) 및 폰트 A 테이블(40)에 대해서, 기록할 문자열을 구성하는 각 문자의 폰트 A의 폰트 데이터를, 차례로 행 버퍼(45)에 전개하고(스텝 SA9), 행 버퍼(45)에 전개한 데이터에 기초해서 문자열의 기록을 실행한다(스텝 SA10). 상술한 바와 같이, 행 버퍼(45)는 기록 가능 자리수가 30자리수가 되는 크기이기 때문에, 기록 가능 자리수가 30자리수가 되는 형태로 기록이 실행된다. 즉, 폰트 A'로 문자를 기록했을 때의 기록 가능 자리수와, 폰트 A로 문자를 기록했을 때의 기록 가능 자리수가 모두 30자리수로, 각 폰트로 기록했을 때의 기록 결과가 근사한다.
이어서, 기록 제어부(37)는, 호스트 컴퓨터(10)로부터 어느 한 설정의 설정값에 대해서, 문의가 있었는지 여부를 감시한다(스텝 SA11). 이 문의는, 기록 실행후에 자동으로 행해지는 것이어도 되고, 유저에 의한 명시적인 지시에 기초해서 행해지는 것이어도 된다. 또한, 문의는, 소정의 프로토콜에 준거한 제어 커맨드로, 설정의 설정값에 대해서 응답을 요구하는 제어 커맨드에 의해 행해진다.
스텝 SA11에 있어서, 호스트 컴퓨터(10)로부터 어느 한 설정의 설정값에 대해서 문의가 있는 경우(스텝 SA11:예), 기록 제어부(37)는 이하의 처리를 행한다(스텝 SA12). 한편, 이하의 설명에서는, 설명을 명확하게 하게 위해서, 스텝 SA11에서 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있었던 것으로 한다.
즉, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대해서 문의가 있는 경우, 기록 제어부(37)는 설정 데이터(41)를 참조하는 것이 아니라, 기록 가능 영역의 설정값이 저장된 변수 H1에 저장된 값을 취득하여, 기록 가능 영역의 설정값으로서 응답한다.
이로써, 이하의 효과를 낼 수 있다. 즉, 기록 가능 영역의 설정값에 대해서는, 설정 데이터(41)에 기술된 값이 아니라, 변수 H1에 저장되어 있는 값이, 행 버퍼(45)의 형성이나, 그 밖의 기록에 따른 처리에서 실제로 참조되는 값이다. 그리고, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대해서 문의가 있는 경우, 종래와마찬가지로 설정 데이터(41)에 기술된 값을 응답하는 것은 아니고, 변수 H1에 저장된 값을 응답함으로써 제어 커맨드의 내용에 따라 기록 가능 영역의 설정값을 변경해서 사용하는 것을 토대로 해서, 실제로 사용하는 설정값을 적절하게 응답하는 것이 가능하게 된다.
이상 설명한 바와 같이, 본 실시예에 의하면, 프린터(11)는 감열롤지(24)에의 기록에 관한 각종 설정에 관계된 설정값이 기술된 설정 데이터(41)가 기억되는 기억부(35)와, 설정 데이터(41)에 기술된 각종 설정에 관계된 설정값을, 프로그램 상에서 정의된 변수에의 저장이라는 형태로 일시 기억 영역에 기억하고, 호스트 컴퓨터(10)로부터 수신한 제어 커맨드에 기초해서, 변수에 저장한 설정값을 참조하면서, 감열롤지(24)에 기록하는 기록 제어부(37)를 구비하고 있다. 그리고, 기록 제어부(37)는, 호스트 컴퓨터(10)로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라 변수에 저장한 소정의 설정에 관계된 설정값을 변경하고, 상기 소정의 설정에 대해서는, 변경후의 설정값을 참조하면서 기록을 행하여, 호스트 컴퓨터(10)로부터 설정값을 변경한 설정에 대한 문의가 있는 경우에는, 변경후의 설정값을 응답한다.
보다 구체적으로는, 기록 제어부(37)는, 호스트 컴퓨터(10)로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라 변수 H1에 저장한 기록 가능 영역에 관계된 설정값을 변경하고, 기록 가능 영역에 대해서는 변경후의 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있는 경우에는, 변수 H1에 저장된 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답한다.
이 구성에 의하면, 기록 가능 영역의 설정값에 대해, 소정의 형태로써 기록을 행하기 때문에, 일시적인 변경이 행해진 경우에, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있는 경우, 프린터(11)의 기록 제어부(37)는, 일시적인 변경후의 기록 가능 영역의 설정값을 응답하기 때문에, 기록시에 실제로 사용하는 기록 가능 영역의 설정값을 적절하게 응답 가능하게 된다.
또한, 본 실시예에서는, 기록 제어부(37)는, 호스트 컴퓨터(10)로부터 1행분의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 1행에 기록되는 문자의 기록 가능 자리수가 소정의 값이 되도록 변수 H1에 저장한 기록 가능 영역에 관계된 설정값을 변경하고, 기록 가능 영역에 대해서는, 변경후의 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있는 경우에는, 변수 H1에 저장된 변경후의 기록 가능 영역에 관계된 설정값을 응답한다.
보다 구체적으로는, 기록 제어부(37)는, 호스트 컴퓨터(10)로부터 커맨드군(CG)을 수신한 경우, 상기 커맨드군(CG)에서의 폰트 지정 커맨드(FC)가 지정하는 폰트의 종류에 따라, 지정된 폰트(상기 예에서는 폰트 A')로 1행에 문자를 기록했을 때의 기록 가능 자리수와, 프린터(11)가 대응하고 있는 폰트(상기 예에서는 폰트 A)로 1행에 문자를 기록했을 때의 기록 가능 자리수가 일치하도록, 변수 H1에 저장한 기록 가능 영역에 관계된 설정값을 변경하고, 기록 가능 영역에 대해서는 변경후의 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있는 경우에는, 변경후의 기록 가능 영역에 관계된 설정값을 응답한다.
이 구성에 의하면, 기록 가능 자리수의 조정을 위해, 변수 H1에 저장한 기록 가능 영역의 설정값에 대해 일시적으로 변경이 행해진 경우에 있어서, 호스트 컴퓨터(10)로부터 기록 가능 영역에 대한 문의가 있는 경우, 기록 제어부(37)는 일시적인 변경후의 기록 가능 영역의 설정값을 응답하기 때문에, 기록시에 실제로 사용하는 기록 가능 영역의 설정값을 적절하게 응답 가능하게 된다.
한편, 상술한 실시예는, 어디까지나 본 발명의 한 측면을 나타내는 것으로, 본 발명의 범위 내에서 임의로 변형 및 응용이 가능하다.
즉, 상술한 실시예에서는, '설정'의 일례로서, '기록 가능 영역'을 들었지만, '설정'은 '기록 가능 영역'으로 한하지 않고, 예컨대 기록 속도나, 기록 농도, 좌우의 마진 등이어도 된다. 일례로서, 호스트 컴퓨터(10)로부터 수신한 제어 커맨드의 내용에 따라, 일시적으로 왼쪽 마진의 설정값을 변경하는 구성의 경우에 있어서, 호스트 컴퓨터(10)로부터 왼쪽 마진의 설정값에 대한 문의가 있는 경우, 기록 제어부(37)는 일시적인 변경후의 왼쪽 마진의 설정값을 응답한다. 이러한 동작이 행해짐으로써, 상술한 효과와 같은 효과를 낼 수 있다.
또한 예컨대, 프린터(11)는 서멀식의 기록 장치였지만, 기록 방식은 이것으로 한하지 않고, 잉크젯식, 도트 임팩트식 등 어떤 것이어도 된다. 또한 예컨대, 도 1에 나타내는 각 기능 블록은 하드웨어와 소프트웨어의 협동에 의해 임의로 실현 가능하고, 특정의 하드웨어 구성을 시사하는 것이 아니다. 또한, 프린터(11)의 각 기능 블록의 기능을, 프린터(11)에 외부 접속된 별도의 장치가 갖도록 해도 된다. 또한, 프린터(11)는, 외부 접속되는 기억 매체에 기억시킨 프로그램을 실행함으로써도, 5의 흐름도에 따른 동작을 포함한 각종 동작을 실행하도록 해도 된다.
<실시예 2>
도 6은, 본 실시예에 따른 기록 시스템(101)의 기능적 구성을 나타내는 블록도이다.
기록 시스템(101)은, 수퍼마켓이나 편의점 등의 점포에 적용되어, 점포에 내점한 고객의 대금의 지불에 따라 영수증을 발행하는 기능을 적어도 갖는 시스템으로, 도 6에 나타낸 바와 같이, 호스트 컴퓨터(110)(제어 장치)와, POS 서버(111)와, 프린터(112)(기록 장치)를 구비하고 있다.
POS 서버(111)는, 네트워크를 통해서 호스트 컴퓨터(110)에 통신 가능하게 접속되어 있고, 점포에서 판매하고 있는 상품의 상품 코드나, 명칭, 금액 등의 영수증의 발행을 위해 필요한 정보를 나타내는 데이터를 데이터 베이스로서 기억한다. 호스트 컴퓨터(110)는, 영수증의 발행시에, 적절하게 POS 서버(111)에 기억된 데이터 베이스를 참조해서, 필요한 정보를 취득한다.
호스트 컴퓨터(110)는, 호스트측 제어부(115)와, 호스트측 표시부(116)와, 호스트측 입력부(117)와, 인터페이스(I/F)부(118)와, 호스트측 기억부(119)를 구비한다.
호스트측 제어부(115)는, 호스트 컴퓨터(110)의 각 부를 중추적으로 제어하는 것으로, 연산 실행부로서의 CPU나, 이 CPU에 실행되는 기본 제어 프로그램이나,이 기본 제어 프로그램에 따른 데이터 등을 비휘발적으로 기억하는 ROM, CPU에 실행되는 프로그램이나 이 프로그램에 따른 데이터 등을 일시적으로 기억하는 RAM, 그 밖의 주변 회로 등을 구비한다. 호스트측 제어부(115)는, POS 애플리케이션 실행부(120)와, 프린터 스크류 드라이버 실행부(121)를 구비하고 있지만, 이들에 관해서는 후술한다. 호스트측 표시부(116)는, 액정 디스플레이 패널이나, 유기 EL 패널 등의 표시 패널을 구비하며, 호스트측 제어부(115)의 제어하에서, 표시 패널에 각종 정보를 표시한다. 호스트측 입력부(117)는, 키보드나, 마우스, 바코드 판독기, 카드 판독기 등의 입력 디바이스에 접속되어, 이들 입력 디바이스의 출력 신호를 호스트측 제어부(115)에 출력한다. 바코드 판독기는 상품의 포장지 등에 기록된 바코드의 판독에 이용되고, 카드 판독기는 신용 카드나, 회원 카드 등에 기록된 정보의 판독에 이용된다. 바코드 판독기나 카드 판독기 등의 입력 디바이스를 이용해서 취득한 정보는, 영수증의 발행에 따른 처리에 이용된다. 인터페이스부(118)는, 호스트측 제어부(115)의 제어하에서, 프린터(112)와의 사이에서 통신 규격에 준거한 통신을 행한다. 호스트측 기억부(119)는, 각종 데이터를 덮어쓰기 가능하게 기억하는 부위로, 하드디스크나, EEPROM 등의 기억 장치를 구비한다.
한편, 프린터(112)는, 롤형상으로 감긴 감열롤지를 롤러 상의 압반(platen)에 의해 반송하고, 이 감열롤지의 기록면에 발열 소자를 구비한 라인 서멀 헤드에 의해 열을 가함으로써 화상을 기록한 후에, 소정의 위치에서 감열롤지를 절단함으로써 영수증을 발행하는 서멀 헤드식 프린터이다.
도 6에 나타낸 바와 같이, 프린터(112)는, 제어부(130)와, 표시부(131)와, 입력부(132)와, 프린트 엔진(133)과, 기억부(135)와, 인터페이스(I/F)부(136)를 구비한다.
제어부(130)는, 프린터(112)의 각 부를 중추적으로 제어하는 것으로, CPU나, ROM, RAM, 그 밖의 주변 회로 등을 구비하고 있다. 제어부(130)는 처리 실행부(130a)를 구비하고 있지만, 이에 관해서는 후술한다. 표시부(131)는, 프린터(112)의 동작 상태 등의 각종 정보를 표시하는 액정 패널이나 유기 EL 패널 등의 표시 패널이나, LED 등을 구비하고, 제어부(130)의 제어하에서, 상기 표시 패널에 각종 정보를 표시하거나, 또는 LED를 점등/소등한다. 입력부(132)는 프린터(112)에 마련된 각종 조작 스위치에 접속되어, 조작 스위치에 대한 조작을 검출하여 조작 신호로서 제어부(130)에 출력한다. 프린트 엔진(133)은 제어부(130)의 제어하에서, 각종 센서의 검출값을 감시하면서, 상술한 라인 서멀 헤드 이외에, 감열롤지를 반송하는 압반 롤러를 구동하기 위한 반송 모터나, 절단 기구가 구비하는 커터를 구동하기 위한 커터 구동 모터를 동작시켜서, 감열롤지에 화상을 기록하고, 화상을 기록한 감열롤지를 절단함으로써 영수증을 발행한다. 기억부(135)는, EEPROM 등의 메모리를 구비하여, 각종 데이터를 덮어쓰기 가능하게 기억한다. 기억부(135)에는, 프린터(112)의 동작을 제어하기 위한 펌웨어(141)가 기억되는 것 외에 코드 페이지(140)와, 초기 실행 커맨드 데이터(143)(모두 후술함)가 기억된다. 인터페이스부(136)는, 제어부(130)의 제어하에서, 호스트 컴퓨터(110)와의 사이에서 통신 규격에 준거한 통신을 행한다.
도 7은, 코드 페이지(140)의 내용을 모식적으로 나타내는 도면이다.
코드 페이지(140)란, 프린터(112)에 의해서 기록 가능한 문자의 각각의 폰트 데이터를 집합해서 기억하는 테이블이다. 폰트 데이터란, 문자를 기록 매체에 기록 가능한 형태로 표현하는 실제 데이터(비트맵 폰트 데이터나, 스케일러블 폰트 데이터 등)이다.
도 7에 나타낸 바와 같이, 코드 페이지(140)는 그 기억 영역이 분할됨으로써, 복수의 저장 영역(K)이 형성되어 있고, 하나의 저장 영역(K)에, 하나의 폰트 데이터를 저장할 수 있다. 저장 영역(K) 각각은, 각 영역을 일의적으로(uniquely) 나타내는 번지가 배당되어 있고, 하나의 번지를 특정함으로써 하나의 저장 영역(K)이 특정된다.
본 실시예에서는, 도 7에 나타낸 바와 같이, 코드 페이지(140)에 형성된 저장 영역(K) 중, 번지 XX의 저장 영역(K1)에는, 통화 기호를 나타내는 폰트 데이터가 저장된다. 이 저장 영역(K1)에 저장되는 데이터에 대해서는 후술한다.
코드 페이지(140)는, 후술하는 초기 처리에 의해서 RAM 등의 일시 기억 영역에 전개된 후에, 사용된다.
이어서, POS 애플리케이션 실행부(120) 및 프린터 스크류 드라이버 실행부(121)의 설명을 통해서, 기록 시스템(101)이 영수증을 발행할 때의 기본적인 동작에 대해서 설명한다.
POS 애플리케이션 실행부(120)는, 호스트 컴퓨터(110)에 미리 인스톨된 POS 애플리케이션을 실행함으로써 거래마다, 적절하게 POS 서버(111)에 액세스한 후에, 거래에서 구입된 상품을 나타내는 정보나, 상품의 단가를 나타내는 정보, 구입 금액을 나타내는 정보 등의 영수증에 기재할 정보를 취득한다. 그리고, POS 애플리케이션 실행부(120)는, 취득한 정보에 기초해서, 영수증에 기록할 화상에 따른 기록 데이터를 생성하여, 프린터 스크류 드라이버 실행부(121)에 출력한다. 영수증에 기록할 화상에는, 상품의 명칭을 나타내는 문자에 따른 화상이나, 값을 나타내는 문자에 따른 화상 등의 문자에 따른 화상이 포함되어 있다. POS 애플리케이션 실행부(120)가 생성하는 기록 데이터에 있어서는, 이들 문자는, 아스키 코드나 유니코드 등의 소정의 문자 코드로서 표현되어 있다.
프린터 스크류 드라이버 실행부(121)는, 호스트 컴퓨터(110)에 미리 인스톨된 프린터 스크류 드라이버를 실행함으로써 POS 애플리케이션 실행부(120)로부터 입력된 기록 데이터에 기초해서, 프린터(112)의 커맨드 수단에 대응한 기록 커맨드를 생성하여, 프린터(112)의 제어부(130)에 출력한다. 이 기록 커맨드에는, 반송 기구에 감열롤지를 반송시키는 커맨드나, 라인 서멀 헤드를 구동시키는 커맨드, 절단 기구에 감열롤지를 절단시키는 커맨드 등의, 프린터(112)에 영수증을 발행시키기 위한 각종 커맨드가 포함되어 있다.
기록 커맨드가 입력된 제어부(130)는, 이 기록 커맨드에 기초해서 프린터(112)의 각 부를 제어하여 영수증을 발행한다.
이어서, 프린터 스크류 드라이버 실행부(121)에 의한 문자 코드에 관한 처리에 대해서 설명한다.
POS 애플리케이션 실행부(120)로부터 기록 데이터가 입력된 경우, 프린터 스크류 드라이버 실행부(121)는, 상기 기록 데이터를 해석하여, 기록 데이터에 포함된 문자 코드를 추출한다. 이어서, 프린터 스크류 드라이버 실행부(121)는, 추출한 문자 코드를 번지 정보로 변환한다. 번지 정보란, 코드 페이지(140)에 있어서, 추출한 문자 코드의 문자에 대응하는 폰트 데이터가 저장된 저장 영역(K)의 번지를 나타내는 정보이다. 한편, 문자 코드와, 번지 정보가 대응지어진 테이블이 호스트측 기억부(119)에 기억되어 있고, 프린터 스크류 드라이버 실행부(121)는, 상기 테이블을 참조하여, 문자 코드를 번지 정보로 변환한다. 예컨대, 도 7을 참조하여, 문자로서의 '¥'을 나타내는 문자 코드에 대해서는, 프린터 스크류 드라이버 실행부(121)는, 상기 문자 코드를, 번지 XX를 나타내는 번지 정보로 변환한다. 프린터 스크류 드라이버 실행부(121)는 문자 코드를 번지 정보로 변환한 후에, 기록 커맨드를 프린터(112)에 출력한다.
상술한 바와 같이, 기록 커맨드가 입력되면, 프린터(112)의 제어부(130)는 기록 커맨드에 기초해서 프린트 엔진(133)을 제어하여 영수증을 발행한다. 이 때, 제어부(130)는 영수증에 기록할 문자에 대해서는, 번지 정보에 기초해서, RAM 등의 일시 기억 영역에 전개되어 있는 코드 페이지(140)에 있어서의 저장 영역(K)을 특정하고, 특정한 저장 영역(K)에 저장되어 있는 폰트 데이터에 기초해서, 문자에 따른 화상의 기록을 실행한다. 예컨대, 제어부(130)는 번지 XX를 나타내는 번지 정보에 기초해서, 코드 페이지(140)에 있어서의 저장 영역(K1)을 특정하고, 특정한 저장 영역(K1)에 저장되어 있는 폰트 데이터를 취득하여, 상기 폰트 데이터를 소정의 화상 버퍼에 전개하며, 전개한 데이터에 기초해서 라인 서멀 헤드 구동용 구동 회로를 제어하여, 통화 기호의 화상을 감열롤지에 기록한다.
이어서, 초기 실행 커맨드 데이터(143)에 대해서 설명한다.
도 8은 기억부(135)에 기억되어 있는 초기 실행 커맨드 데이터(143)를 모식적으로 나타내는 도면이다.
초기 실행 커맨드 데이터(143)란, 전원 투입 후, 또는 리셋 후에 실행할 커맨드의 리스트를 기억한 데이터이다. 리셋이란, 프린터(112)의 전원이 온인 상태일 때에, 전원이 온인 상태를 유지하면서, 프린터(112)를 다시 시동의 상태에 되돌리는 것을 말하며, 본 실시예에서는 호스트 컴퓨터(110)로부터 리셋를 지시하는 커맨드가 입력되는 것에 의해, 리셋에 따른 처리가 시작된다. 이 리셋 후에는 전원 도입 후와 같은 처리가 행해진다.
초기 처리란, 전원의 투입후, 또는 리셋후에 실행해야 하는 처리로서 미리 정해져 있는 처리의 일로, 예컨대 CPU나 RAM에 대한 리셋 등의, 필요한 초기 처리나, 각종 프로그램에 관한 소정의 초기 처리 등의 각종 초기화에 따른 처리, 프린트 엔진(133)의 각종 기구의 초기 동작 확인에 따른 처리 등이다.
그리고, 초기 실행 커맨드 데이터(143)에는, 초기 처리를 실행하는 경우, 프린터(112)를 정상적으로 작동시키기 위해서 반드시 실행해야 하는 처리로서, 펌웨어(141)의 기능에 의해서 행해지는 처리와는 별도로, 부가적으로 실행해야 하는 처리의 커맨드(이하, '초기 실행 커맨드'라고 함)가 리스트로 기억되어 있다. 즉, 초기 실행 커맨드 데이터(143)에 하나의 커맨드가 등록되어 있는 경우, 프린터(112)는 초기 처리의 실행시에 펌웨어(141)의 기능에 의해 행해지는 초기 처리와 함께, 상기 하나의 커맨드를 실행한다.
도 8에 나타낸 바와 같이, 초기 실행 커맨드 데이터(143)는, 정보부(143a)와 데이터부(143b)로 구성되어 있다.
데이터부(143b)에는, 초기 실행 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입되어 있다. 도 8의 예에서는, 데이터부(143b)에는, 각각 8 바이트로 이루어지는 초기 실행 커맨드를 나타내는 데이터가, 실행 순서대로, 5개, 연속해서 기입되어 있다.
정보부(143a)에는, 데이터부(143b)의 크기를 나타내는 정보인 크기 정보가 기입되어 있다. 도 8의 예에서는, 데이터부(143b)의 크기는 40 바이트(8 바이트×5)이기 때문에, 정보부(143a)에는, 데이터부(143b)의 크기가 40 바이트인 것을 나타내는 크기 정보가 기입되어 있다.
한편, 정보부(143a) 및 데이터부(143b)가 기억되어 있는 기억 영역의 선두 어드레스는 고정이다.
이와 같이 본 실시예에서는, 초기 실행 커맨드 데이터(143)에 있어서의 데이터부(143b)에, 각 초기 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입되어 있기 때문에, 상기 데이터부(143b)가 차지하는 기억 영역이 필요 최소한이면 되는 것과 아울러, 각 커맨드를 실행하는 순서를 관리하기 위한 정보를 기억할 필요가 없다. 또한, 초기 실행 커맨드 데이터(143)에 있어서의 정보부(143a)는, 데이터부(143b)의 크기를 나타내는 정보라는, 기억 영역에서 데이터부(143b)가 기억되어 있는 영역을 특정하기 위해서 필요한 최소한의 정보를 유지하고 있다. 이 때문에, 이 정보부(143a)의 크기 자체가 작아서, 기억부(135)의 효율적인 이용을 실현할 수 있다. 여기서, 초기 실행 커맨드 데이터(143)를, 관계 데이터 베이스로 하고, 이로써, 초기 실행 커맨드 데이터(143)에 기술된 각 초기 실행 커맨드의 관리를 용이하게 하는 것도 생각할 수 있지만, 이 경우, 관계 데이터 베이스의 관리 정보(예컨대, 기억 영역에서의 각 필드의 어드레스와, 각 필드에 저장된 데이터를 대응지은 정보)를 기억할 필요가 있고, 또한 불필요하게 기억 영역을 확보하는 사태가 발생할 수 있기 때문에, 기억부(135)의 효율적인 이용에 과제가 있다.
이 초기 실행 커맨드 데이터(143)는, 이하의 점을 목적으로 해서 생성된 데이터이다.
즉, 상위 기종의 프린터 및 하위 기종의 프린터 등, 기본적인 플랫폼이 공통되고, 플랫폼 상에서 움직이는 소프트웨어의 체계가 공통되는 것에 있어서, 프린터 간에, 초기 처리에서 행해야 하는 처리의 대부분이 공통되는 경우가 있다. 이러한 경우에, 각각 다른 초기 처리를 행하는 펌웨어(141)를 별개로 프로그래밍해서, 인스톨하면, 개발 용이성이 저해되고, 또한 개발 비용의 증가를 초래할 우려가 있다.
본 실시예에서는, 초기 실행 커맨드 데이터(143)를 미리 기억부(135)에 기억하는 구성으로 해서, 초기 처리에서 행해야 하는 처리 중, 다른 기종의 프린터 간에 공통하는 처리에 대해서는, 펌웨어(141)의 기능으로서 실행할 수 있도록 펌웨어(141)를 프로그래밍하고, 한편 공통되지 않는 처리에 관해서는, 상기 처리에 따른 커맨드를, 각각의 프린터의 초기 실행 커맨드 데이터(143)에 기술한다. 이로써, 적어도 펌웨어(141)의 초기 처리에 따른 프로그램에 관해서는, 다른 기종의 프린터 간에 공통화할 수 있어, 별개의 프로그램을 개발하는 경우에 비교해서 개발 용이성의 향상, 및 개발 비용의 삭감을 실현할 수 있다.
또한, 동일 기종의 프린터이더라도, 프린터가 출시되는 발송지에 따라서, 초기 처리에서 행해야 하는 처리가 다른 경우가 있다. 본 실시예에서는, 초기 실행 커맨드 데이터(143)를 미리 기억부(135)에 기억하는 구성으로 하고, 초기 처리에서 행해야 하는 처리 중, 발송지에 관계없이 공통되는 처리에 관해서는, 펌웨어의 기능으로서 실행할 수 있도록 펌웨어를 프로그래밍하며, 한편 발송지에 따라서 다른 처리에 관해서는, 각각의 프린터의 초기 실행 커맨드 데이터(143)에 등록한다. 이로써, 적어도 펌웨어의 초기 처리에 따른 프로그램에 관해서는, 발송지에 관계없이 공통화할 수 있어, 발송지에 따라 별개의 프로그램을 개발하는 경우에 비교해서 개발 용이성의 향상, 및 개발 비용의 삭감을 실현하고 있다.
본 실시예에서는, 초기 실행 커맨드 데이터(143)에는, 통화(通貨) 기호 덮어쓰기 처리 실행 커맨드(TC)(발송지 대응 커맨드)가 기술되어 있다. 도 8의 예에서는, 초기 실행 커맨드 데이터(143)에 기술된 초기 실행 커맨드 중, 최초로 기술되어 있는 초기 실행 커맨드가, 통화 기호 덮어쓰기 처리 실행 커맨드(TC)이다.
통화 기호 덮어쓰기 처리 실행 커맨드(TC)란, 코드 페이지(140)를 RAM 등의 일시 기억 영역에 전개시킴과 아울러, 발송지에 대응하여, 코드 페이지(140)에 있어서의 통화 기호를 나타내는 폰트 데이터의 덮어쓰기(폰트 데이터의 변경)을 실행시키는('코드 페이지의 내용을 특정의 발송지용의 내용으로 변경시킨다', 및, '특정의 폰트 데이터를, 발송지에 따른 폰트 데이터로 변경시킨다'에 포함되는 개념이다) 커맨드이다.
즉, 일본의 통화 기호는 '¥'이고, 또한, 북미의 통화 기호는 '$'인 것 같이, 통화 기호는 발송지에 따라 다르다. 그리고, 통화 기호 덮어쓰기 처리 실행 커맨드(TC)에 따른 처리는, 코드 페이지(140)를 RAM 등의 일시 기억 영역에 전개함과 아울러, 코드 페이지(140)에 형성된 저장 영역(K) 중, 통화 기호의 폰트 데이터가 저장되는 저장 영역(K)으로서 미리 정해져 있는 영역(도 7의 예에서는 저장 영역(K1))에 대해, 발송지에 대응한 통화 기호의 폰트 데이터를 기입하는 처리이다.
예컨대, 발송지가 일본인 프린터(112)에 있어서의 통화 기호 덮어쓰기 처리 실행 커맨드(TC)는, 코드 페이지(140)를 일시 기억 영역에 전개시킴과 아울러, 코드 페이지(140)의 저장 영역(K1)에 '¥'를 나타내는 폰트 데이터를 덮어쓰기(폰트 데이터의 변경)시키는 커맨드이다. 상기 커맨드를 판독한 제어부(130)는, 코드 페이지(140)를 일시 기억 영역에 전개함과 아울러, 상기 코드 페이지(140)에 있어서의 저장 영역(K1)에 '¥'를 나타내는 폰트 데이터를 덮어쓰기(폰트 데이터의 변경)한다. 또한 예컨대, 발송지가 북미인 프린터(112)에 있어서의 통화 기호 덮어쓰기 처리 실행 커맨드(TC)는, 코드 페이지(140)를 일시 기억 영역에 전개시킴과 아울러, 코드 페이지(140)의 저장 영역(K1)에 '$'를 나타내는 폰트 데이터를 기입하게 하는 커맨드로, 상기 커맨드를 판독한 제어부(130)는, 코드 페이지(140)를 일시 기억 영역에 전개함과 아울러, 상기 코드 페이지(140)에 있어서의 저장 영역(K1)에 '$'를 나타내는 폰트 데이터를 덮어쓰기(폰트 데이터의 변경)한다.
이어서, 제어부(130)가 구비하는 처리 실행부(130a)의 동작에 대해서 설명한다.
도 9는 처리 실행부(130a)의 동작을 나타내는 흐름도이다.
처리 실행부(130a)의 기능은, CPU가 프로그램을 판독해서 실행하는 등, 하드웨어와 소프트웨어의 협동에 의해 실현된다. 우선, 처리 실행부(130a)는, 전원이 투입되었는지 여부, 또는, 리셋이 지시되었는지 여부를 감시한다(스텝 SB1). 전원이 투입되었거나, 또는 리셋이 지시된 경우(스텝 SB1:예), 처리 실행부(130a)는 초기 실행 커맨드 데이터(143)의 정보부(143a)에 액세스하여, 데이터부(143b)의 크기를 취득한다(스텝 SB2).
이어서, 처리 실행부(130a)는, 데이터부(143b)의 선두 어드레스에 액세스해서, 선두 어드레스 직후에 기입되어 있는 초기 실행 커맨드를 하나, 판독, 실행한다(스텝 SB3). 이 때, 처리 실행부(130a)는, 판독한 초기 실행 커맨드를 나타내는 데이터의 크기를 취득하여, 크기를 나타내는 정보를 RAM의 소정의 기억 영역에 기억한다. 이후, 처리 실행부(130a)는, 초기 실행 커맨드를 판독할 때마다, 판독한 초기 실행 커맨드를 나타내는 데이터의 크기를 취득하여, RAM에 기억된 크기를 나타내는 정보에 가산해 나간다. 이하의 설명에서는, 판독한 초기 실행 커맨드를 나타내는 데이터의 크기의 누계를, '누계 크기'라고 한다. RAM의 소정의 기억 영역에 기억된 크기를 나타내는 정보는, 누계 크기를 나타내고 있다.
스텝 SB3에 있어서 데이터부(143b)의 선두 어드레스 직후에 기입되어 있는 초기 실행 커맨드를 실행한 후, 처리 실행부(130a)는, 누계 크기가, 스텝 SB2에서 취득한 데이터부(143b)의 크기가 되었는지 여부를 판별한다(스텝 SB4).
누계 크기가, 스텝 SB2에서 취득한 데이터부(143b)의 크기로 되어 있다는 것은, 데이터부(143b)에 기입되어 있는 초기 실행 커맨드 모두에 대해, 판독 및 실행이 완료되었다는 것이다.
스텝 SB4에서, 누계 크기가, 스텝 SB2에서 취득한 데이터부(143b)의 크기로 되어 있지 않는 경우(스텝 SB4:아니오), 처리 실행부(130a)는 직전에 판독, 실행한 초기 실행 커맨드의 다음으로 기입되어 있는 초기 실행 커맨드를, 판독해서 실행하고(스텝 SB5), 처리 순서를 스텝 SB4으로 이행한다.
스텝 SB4에 있어서, 누계 크기가, 스텝 SB2에서 취득한 데이터부(143b)의 크기가 된 경우, 환언하면, 초기 실행 커맨드 데이터(143)에 기술된 모든 초기 실행 커맨드에 대해, 각 초기 실행 커맨드에 따른 초기 처리가 완료된 경우(스텝 SB4:예), 처리 실행부(130a)는 처리 순서를 스텝 SB6으로 이행한다.
한편, 상술한 바와 같이, 본 예에서는, 초기 실행 커맨드 데이터(143)에는, 통화 기호 덮어쓰기 처리 실행 커맨드(TC)가 기술되어 있다. 따라서, 스텝 SB4에서 '예'라고 판정된 시점에는, 코드 페이지(140)가 일시 기억 영역에 전개되고, 또한 코드 페이지(140)에서의 저장 영역(K1)에 저장된 폰트 데이터는, 발송지에 따른 통화 기호를 나타내는 폰트 데이터로 변경되어 있다.
스텝 SB6에서, 처리 실행부(130a)는, 호스트 컴퓨터(110)로부터 통화 기호에 대한 문의, 보다 구체적으로는, 번지 XX를 나타내는 번지 정보를 지정하여 폰트 데이터에 기초한 문자를 기록시켰을 때, 기록되는 통화 기호가 어떤 것인지에 대한 문의가 있었는지 여부를 감시한다.
본 실시예에서는, 호스트 컴퓨터(110)에, 초기 처리의 완료 후의 적절한 타이밍에 상기 문의를 행하는 기능, 및 상기 문의에 대한 응답에 따라, 실제로 기록되는 통화 기호를 나타내는 화상을 호스트측 표시부(116)의 표시 패널에 표시하는 기능이 새롭게 실장되어 있다. 유저는, 상기 기능을 이용해서 프린터(112)에 실제로 기록을 행하게 하기 전에, 통화 기호가, 발송지에 따른 적절한 것으로 되어 있는지를 확실하게 확인할 수 있다.
그런데, 호스트 컴퓨터(110)로부터 통화 기호의 문의가 있는 경우(스텝 SB6:예), 처리 실행부(130a)는, 기억부(135)에 기억되어 있는 코드 페이지(140)에 액세스하는 것은 아니고, 일시 기억 영역에 전개되어 있는 코드 페이지(140), 즉 발송지에 따른 개변이 가해진 이후의 코드 페이지(140)에 액세스한다(스텝 SB7). 이어서, 처리 실행부(130a)는, 코드 페이지(140)의 번지 XX의 저장 영역(K1)으로부터 통화 기호를 나타내는 폰트 데이터를 취득하여, 상기 폰트 데이터를, 소정의 프로토콜에 준거하여 호스트 컴퓨터(110)에 송신한다(스텝 SB8).
이와 같이, 처리 실행부(130a)는, 호스트 컴퓨터(110)로부터 통화 기호에 관해서 문의가 있는 경우에는, 변경 후, 일시 기억 영역에 전개된 코드 페이지(140),즉, 실제로 사용하는 코드 페이지(140)의 내용에 기초해서, 상기 문의에 대해 응답한다. 이 때문에, 코드 페이지(140)의 사용 형태에 따른 적절한 응답이 가능하다.
이상 설명한 바와 같이, 본 실시예에 따른 프린터(112)는, 전원 투입 후, 또는, 리셋 후에 실행해야 하는 초기 처리를 실행시키는 초기 실행 커맨드가 하나 또는 복수 기술된 초기 실행 커맨드 데이터(143), 및 폰트 데이터가 저장된 코드 페이지(140)가 기억된 기억부(135)를 구비하고 있다. 또한, 초기 실행 커맨드에는, 코드 페이지(140)를 일시 기억 영역에 전개시킴과 아울러, 코드 페이지(140)의 내용을 특정의 발송지용의 내용으로 변경시킬 것을 지시하는 통화 기호 덮어쓰기 처리 실행 커맨드(TC)가 포함되어 있다. 그리고, 처리 실행부(130a)는, 전원 투입 후, 또는, 리셋 후 초기 실행 커맨드 데이터(143)에 기초해서, 초기 실행 커맨드를 차례로 실행하는 한편, 호스트 컴퓨터(110)로부터 코드 페이지(140)에 대한 문의가 있는 경우, 특정의 발송지용으로 그 내용을 변경하여, 일시 기억 영역에 전개한 코드 페이지(140)에 기초해서 상기 문의에 대해 응답한다.
이 구성에 의하면, 프린터(112)는, 호스트 컴퓨터(110)로부터 코드 페이지(140)에 관해서 문의가 있는 경우에는, 변경 후, 일시 기억 영역에 전개된 코드 페이지(140), 즉 실제로 사용하는 코드 페이지(140)의 내용에 기초해서, 상기 문의에 대해 응답하기 때문에, 코드 페이지(140)의 사용 형태에 따른 적절한 응답이 가능하다.
또한, 본 실시예에서는, 초기 실행 커맨드 데이터(143)에 기술된 통화 기호 덮어쓰기 처리 실행 커맨드(TC)에는, 코드 페이지(140)에 저장된 폰트 데이터 중, 통화 기호에 따른 특정의 폰트 데이터를, 발송지에 따른 폰트 데이터로 변경시키는 지시가 포함되어 있다. 그리고, 처리 실행부(130a)는, 호스트 컴퓨터(110)로부터, 통화 기호(특정의 폰트 데이터)에 대해서 문의가 있는 경우, 일시 기억 영역에 전개한 코드 페이지(140)를 참조해서, 발송지에 따른 변경 후의 폰트 데이터에 기초해 상기 문의에 대해 응답한다.
이 구성에 의하면, 프린터(112)는, 특정의 폰트 데이터에 대해 문의가 있는 경우, 초기 처리에 의해서 발송지에 따라 변경된 후의 폰트 데이터에 기초해서 응답하기 때문에, 실제로 사용하는 폰트 데이터의 내용에 따른 적절한 응답이 가능하다.
또한, 본 실시예에서는, 초기 실행 커맨드 데이터(143)는, 기억부(135)의 소정의 기억 영역에, 각 초기 실행 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입된 데이터부(143b)와, 상기 기억 영역에서의 데이터부(143b)의 크기를 나타내는 정보를 포함하는 정보부(143a)를 포함해서 구성되어 있다.
이 구성에 의하면, 초기 실행 커맨드 데이터(143)에 있어서의 데이터부(143b)에서는, 각 초기 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입되어 있기 때문에, 상기 데이터부(143b)가 차지하는 기억 영역이 필요 최소한이면 됨과 아울러, 각 커맨드를 실행하는 순서를 관리하기 위한 정보를 기억할 필요가 없다. 또한, 초기 실행 커맨드 데이터(143)에 있어서의 정보부(143a)는, 데이터부(143b)의 크기를 나타내는 정보라는, 기억 영역에서 데이터부(143b)가 기억되어 있는 영역을 특정하기 위해서 필요한 최소한의 정보를 유지하고 있다. 이 때문에, 이 정보부(143a)의 크기 자체가 작아서, 기억부(135)이 효율적인 이용을 실현할 수 있다.
한편, 상술한 실시의 형태는, 어디까지나 본 발명의 일 측면을 나타내는 것으로, 본 발명의 범위 내에서 임의로 변형 및 응용이 가능하다.
예컨대, 상술한 실시예에서는, 코드 페이지(140)의 내용을 특정의 발송지용의 내용으로 변경시키는 구체적인 예, 및 특정의 폰트 데이터를 발송지에 따른 폰트 데이터로 변경시키는 구체적인 예로서, 통화 기호를 나타내는 폰트 데이터의 변경을 들어서 설명했지만, 이것으로 한정되지 않는다. 즉, 초기 실행 커맨드 데이터(143)를 이용한 초기 처리에 있어서, 발송지에 따라, 코드 페이지(140)의 개변을 행하는 기록 장치에 널리 본 발명을 적용 가능하다.
또한 예컨대, 호스트 컴퓨터(110)에 접속된 프린터(112)는 서멀식의 기록 장치이었지만 기록 방식은 이것으로 한정되지 않고, 잉크젯식, 도트 임팩트식 등 어떤 것이어도 된다. 또한 예컨대, 도 6에 나타내는 각 기능 블록은 하드웨어와 소프트웨어의 협동에 의해 임의로 실현 가능하고, 특정의 하드웨어 구성을 시사하는 것이 아니다. 또한, 프린터(112)의 각 기능 블록의 기능을, 프린터(112)에 외부 접속되는 별도의 장치가 갖도록 해도 된다. 또한, 프린터(112)는, 외부 접속되는 기억 매체에 기억시킨 프로그램을 실행함으로써 도 9의 흐름도에 따른 동작을 포함한 각종 동작을 실행하도록 해도 된다.

Claims (16)

  1. 제어 장치에 접속 가능한 기록 장치로서,
    데이터를 기억하는 기억부를 구비하고,
    상기 기억부에 기억한 데이터에 대해서, 일시 기억 영역에 기억하고, 상기 제어 장치로부터 상기 기억부에 기억한 데이터에 관한 문의가 있는 경우에, 상기 일시 기억 영역에 기억한 변경후의 데이터에 기초해서, 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치.
  2. 제 1 항에 있어서,
    상기 기억부에는, 기록 매체로의 기록에 관한 설정에 관계된 설정값이 기술된 설정 데이터가 기억되고,
    상기 설정 데이터에 기술된 상기 설정값을 상기 일시 기억 영역에 기억하며, 상기 제어 장치로부터 수신한 제어 커맨드에 기초해서, 상기 일시 기억 영역에 기억한 상기 설정값을 참조하면서, 상기 기록 매체에 기록하는 기록 제어부를 구비하고,
    상기 기록 제어부는,
    상기 제어 장치로부터 상기 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라 상기 일시 기억 영역에 기억한 소정의 설정에 관계된 설정값을 변경하며, 상기 소정의 설정에 대해서는 변경후의 상기 설정값을 참조하면서 기록을 행하고, 설정값을 변경한 설정에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 설정값을 응답하는
    것을 특징으로 하는 기록 장치.
  3. 제 2 항에 있어서,
    상기 설정 데이터에는 기록 가능 영역에 관계된 설정값이 기술되고,
    상기 기록 제어부는,
    상기 제어 장치로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 일시 기억 영역에 기억한 기록 가능 영역에 관계된 설정값을 변경하며, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하고, 상기 제어 장치로부터 상기 기록 가능 영역에 대한 문의가 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는
    것을 특징으로 하는 기록 장치.
  4. 제 3 항에 있어서,
    상기 기록 제어부는,
    상기 제어 장치로부터 1행분의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 1행에 기록되는 문자의 기록 가능 자리수가 소정의 값이 되도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에관계된 설정값을 응답하는
    것을 특징으로 하는 기록 장치.
  5. 제 4 항에 있어서,
    상기 기억부에는 폰트 데이터가 더 기억되고,
    상기 기록 제어부는,
    상기 제어 장치로부터 1행분의 소정의 폰트의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 소정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수와, 다른 특정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수가 일치하도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는
    것을 특징으로 하는 기록 장치.
  6. 제 1 항에 있어서,
    상기 기억부에는, 초기 처리를 실행시키는 초기 실행 커맨드가 하나 또는 복수 기술된 초기 실행 커맨드 데이터, 및 폰트 데이터가 저장된 코드 페이지가 기억되고,
    전원 투입후, 또는 리셋후, 상기 기억부에 기억된 상기 초기 실행 커맨드 데이터에 기초해서, 상기 초기 실행 커맨드를 차례로 실행하는 처리 실행부를 구비하고,
    상기 초기 실행 커맨드는, 상기 코드 페이지를 상기 일시 기억 영역에 전개시킴과 아울러, 상기 코드 페이지의 내용을 특정의 발송지용의 내용으로 변경시킬 것을 지시하는 발송지 대응 커맨드를 포함하며,
    상기 처리 실행부는,
    상기 제어 장치로부터 상기 코드 페이지에 관한 문의가 있는 경우, 특정의 발송지용으로 내용이 변경되고, 상기 일시 기억 영역에 전개된 상기 코드 페이지에 기초해서 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치.
  7. 제 6 항에 있어서,
    상기 발송지 대응 커맨드는, 상기 코드 페이지에 저장된 폰트 데이터 중, 특정의 폰트 데이터를, 발송지에 따른 폰트 데이터로 변경시키는 지시를 포함하고,
    상기 처리 실행부는,
    상기 제어 장치로부터, 상기 특정의 폰트 데이터에 대해서 문의가 있는 경우, 발송지에 따른 변경후의 폰트 데이터에 기초해서 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치.
  8. 제 6 항에 있어서,
    상기 초기 실행 커맨드 데이터는,
    상기 기억부의 소정의 기억 영역에, 각 상기 초기 실행 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입된 데이터부와,
    상기 기억 영역에서의 상기 데이터의 크기를 나타내는 정보를 포함하는 정보부
    를 포함해서 구성되어 있는
    것을 특징으로 하는 기록 장치.

  9. 제어 장치에 접속 가능하게 구성되며, 데이터를 기억하는 기억부를 구비하는 기록 장치의 제어 방법으로서,
    상기 기억부에 기억한 데이터에 대해서, 일시 기억 영역에 기억하고, 상기 제어 장치로부터 상기 기억부에 기억한 데이터에 관한 문의가 있는 경우, 상기 일시 기억 영역에 기억한 변경후의 데이터에 기초해서, 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  10. 제 9 항에 있어서,
    상기 기억부에는, 기록 매체로의 기록에 관한 설정에 관계된 설정값이 기술된 설정 데이터가 기억되고,
    상기 설정 데이터에 기술된 상기 설정값을 일시 기억 영역에 기억하며, 상기 제어 장치로부터 수신한 제어 커맨드에 기초해서, 상기 일시 기억 영역에 기억한 설정값을 참조하면서 상기 기록 매체에 기록하는 한편,
    상기 제어 커맨드의 내용에 따라 상기 일시 기억 영역에 기억한 소정의 설정에 관계된 설정값을 변경하고, 상기 소정의 설정에 대해서는, 변경후의 상기 설정값을 참조하면서 기록을 행하며, 설정값을 변경한 설정에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 설정값을 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  11. 제 10 항에 있어서,
    상기 설정 데이터에는 기록 가능 영역에 관계된 설정값이 기술되고,
    상기 제어 장치로부터 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 일시 기억 영역에 기억한 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하고, 상기 제어 장치로부터 상기 기록 가능 영역에 대한 문의가 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  12. 제 11 항에 있어서,
    상기 제어 장치로부터 1행분의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 1행에 기록되는 문자의 기록 가능 자리수가 소정의 값이 되도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는 것을 특징으로 하는 기록 장치의 제어 방법.
  13. 제 10 항에 있어서,
    상기 기억부에는, 폰트 데이터가 더 기억되고,
    상기 제어 장치로부터 1행분의 소정의 폰트의 문자의 기록을 지시하는 제어 커맨드를 수신한 경우, 상기 제어 커맨드의 내용에 따라, 상기 소정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수와, 다른 특정의 폰트로 1행에 문자를 기록했을 때의 기록 가능 자리수가 일치하도록 상기 일시 기억 영역에 기억한 상기 기록 가능 영역에 관계된 설정값을 변경하고, 상기 기록 가능 영역에 대해서는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 참조하면서 기록을 행하며, 상기 기록 가능 영역에 대한 문의가 상기 제어 장치로부터 있는 경우에는, 변경후의 상기 기록 가능 영역에 관계된 설정값을 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  14. 제 9 항에 있어서,
    상기 기억부에는, 초기 처리를 실행시키는 초기 실행 커맨드가 하나 또는 복
    수 기술된 초기 실행 커맨드 데이터, 및 폰트 데이터가 저장된 코드 페이지가 기억되고,
    상기 초기 실행 커맨드는, 상기 코드 페이지를 일시 기억 영역에 전개시킴과 아울러, 상기 코드 페이지의 내용을 특정의 발송지용의 내용으로 변경시킬 것을 지시하는 발송지 대응 커맨드를 포함하며,
    전원의 투입후, 또는 리셋후, 상기 기억부에 기억된 상기 초기 실행 커맨드 데이터에 기초해서, 상기 초기 실행 커맨드를 차례로 실행하고, 상기 제어 장치로부터 상기 코드 페이지에 관한 문의가 있는 경우, 특정의 발송지용으로 내용이 변경되며, 상기 일시 기억 영역에 전개된 상기 코드 페이지에 기초해서 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  15. 제 14 항에 있어서,
    상기 발송지 대응 커맨드는, 상기 코드 페이지에 저장된 폰트 데이터 중, 특정의 폰트 데이터를, 발송지에 따른 폰트 데이터로 변경시키는 지시를 포함하고,
    상기 제어 장치로부터, 상기 특정의 폰트 데이터에 대해서 문의가 있는 경우, 발송지에 따른 변경후의 폰트 데이터에 기초해서 상기 문의에 대해 응답하는
    것을 특징으로 하는 기록 장치의 제어 방법.
  16. 상기 초기 실행 커맨드 데이터는,
    상기 기억부의 소정의 기억 영역에, 각 상기 초기 실행 커맨드를 나타내는 데이터가 실행 순서대로 연속해서 기입된 데이터부와,
    상기 기억 영역에서의 상기 데이터의 크기를 나타내는 정보를 포함하는 정보부
    를 포함해서 구성되어 있는
    것을 특징으로 하는 기록 장치의 제어 방법.
KR1020130032012A 2012-03-26 2013-03-26 기록 장치, 및 기록 장치의 제어 방법 KR101429850B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP-P-2012-069210 2012-03-26
JP2012069210A JP5987389B2 (ja) 2012-03-26 2012-03-26 記録装置、記録装置の制御方法、及び、プログラム
JPJP-P-2012-079660 2012-03-30
JP2012079660A JP5987415B2 (ja) 2012-03-30 2012-03-30 記録装置、記録装置の制御方法、及び、プログラム

Publications (2)

Publication Number Publication Date
KR20130109067A true KR20130109067A (ko) 2013-10-07
KR101429850B1 KR101429850B1 (ko) 2014-08-12

Family

ID=47912961

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130032012A KR101429850B1 (ko) 2012-03-26 2013-03-26 기록 장치, 및 기록 장치의 제어 방법

Country Status (4)

Country Link
US (1) US9613302B2 (ko)
EP (1) EP2645306A3 (ko)
KR (1) KR101429850B1 (ko)
CN (1) CN103358727B (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160148948A (ko) * 2015-06-17 2016-12-27 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
JP2017167770A (ja) * 2016-03-15 2017-09-21 株式会社リコー 情報処理装置、方法、及びプログラム
JP2018069512A (ja) 2016-10-27 2018-05-10 セイコーエプソン株式会社 印刷装置、及び、印刷装置の制御方法
JP7147405B2 (ja) * 2018-09-18 2022-10-05 セイコーエプソン株式会社 印刷装置の制御方法および印刷装置
JP7153190B2 (ja) * 2018-11-22 2022-10-14 京セラドキュメントソリューションズ株式会社 画像形成装置
US11126385B1 (en) * 2020-08-10 2021-09-21 Kyocera Document Solutions, Inc. Firmware upgrade system and associated methods for printing devices

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0373374A (ja) 1989-05-08 1991-03-28 Seiko Epson Corp 画像形成装置
US5050098A (en) * 1989-08-25 1991-09-17 Lexmark International, Inc. Printer initialization system
JPH07195741A (ja) * 1994-01-06 1995-08-01 Canon Inc シリアルプリンタのフォント展開方法およびフォント格納方法
GB9505741D0 (en) * 1995-03-21 1995-05-10 Maid Plc Image data transfer
US6246485B1 (en) * 1996-05-23 2001-06-12 Lexmark International, Inc. Printer communication system and method
JPH10305642A (ja) 1997-05-02 1998-11-17 Ricoh Co Ltd Lanシステムのプリント出力方法およびプリンタ
JP2001266259A (ja) 2000-03-15 2001-09-28 Sharp Corp 取引処理装置
EP1187058A3 (en) * 2000-08-30 2003-01-02 Seiko Epson Corporation Printing apparatus, data storage medium, interface device, printer control method, and interface control method
US20050198566A1 (en) 2002-04-10 2005-09-08 Kouichi Takamine Content generator, receiver, printer, content printing system
JP2004046625A (ja) 2002-07-12 2004-02-12 Seiko Epson Corp 商品販売データ処理装置、そのレシート印刷における制御方法、その制御方法を実現するプログラム、および、そのプログラムを記録した記録媒体
JP2005324445A (ja) 2004-05-14 2005-11-24 Seiko Epson Corp プリンタ及びプリンタの制御方法
JP2006285476A (ja) 2005-03-31 2006-10-19 Canon Inc 情報処理装置、方法、制御プログラム、媒体
JP4715278B2 (ja) * 2005-04-11 2011-07-06 ソニー株式会社 情報処理装置および情報処理方法、プログラム格納媒体、プログラム、並びに提供装置
JP4451814B2 (ja) 2005-06-07 2010-04-14 大日本印刷株式会社 印刷システム及びプログラム
JP2007102497A (ja) 2005-10-04 2007-04-19 Konica Minolta Business Technologies Inc データ処理プログラム、データ処理方法、およびデータ処理装置
JP2007206811A (ja) * 2006-01-31 2007-08-16 Brother Ind Ltd ネットワークシステム、印刷装置、及び、プログラム
JP4143661B2 (ja) * 2006-09-11 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション テスト用リソース・ファイル及びテスト用フォントを用いた国際化ソフトウェアのテスト方法、装置及びプログラム
JP2008203926A (ja) * 2007-02-16 2008-09-04 Ricoh Printing Systems Ltd 印刷制御装置
JP4978304B2 (ja) * 2007-05-15 2012-07-18 村田機械株式会社 印刷制御装置および印刷制御プログラム
JP4832361B2 (ja) 2007-05-30 2011-12-07 株式会社沖データ 情報処理装置
GB2460084A (en) * 2008-05-16 2009-11-18 Software 2000 Ltd Method and apparatus for providing and managing fonts
JP4702399B2 (ja) * 2008-05-29 2011-06-15 ブラザー工業株式会社 通信装置および通信装置制御プログラム
US8149431B2 (en) * 2008-11-07 2012-04-03 Citrix Systems, Inc. Systems and methods for managing printer settings in a networked computing environment
JP2010122809A (ja) 2008-11-18 2010-06-03 Canon Inc 情報処理装置、情報処理方法、プログラム、及び記憶媒体
JP5418018B2 (ja) * 2009-06-29 2014-02-19 セイコーエプソン株式会社 出力制御データ生成装置、データ生成方法およびプログラム
JP5391956B2 (ja) * 2009-09-15 2014-01-15 セイコーエプソン株式会社 記録装置、記録装置の制御方法、及び、プログラム
JP5493764B2 (ja) * 2009-11-20 2014-05-14 セイコーエプソン株式会社 制御装置、制御装置の制御方法、及び、プログラム
JP5359912B2 (ja) * 2010-02-09 2013-12-04 セイコーエプソン株式会社 設定情報管理システム、プリンターおよび電子機器の制御方法
JP2012003627A (ja) 2010-06-18 2012-01-05 Konica Minolta Business Technologies Inc 印刷設定プログラム、及び印刷設定装置
JP5842335B2 (ja) * 2011-02-08 2016-01-13 セイコーエプソン株式会社 画像記録装置、画像記録装置の制御方法、及び、プログラム
CN102231137B (zh) * 2011-05-26 2014-04-02 浪潮(北京)电子信息产业有限公司 一种数据存储系统及方法

Also Published As

Publication number Publication date
CN103358727B (zh) 2017-09-19
US20130250323A1 (en) 2013-09-26
KR101429850B1 (ko) 2014-08-12
US9613302B2 (en) 2017-04-04
EP2645306A2 (en) 2013-10-02
EP2645306A3 (en) 2017-12-27
CN103358727A (zh) 2013-10-23

Similar Documents

Publication Publication Date Title
KR101429850B1 (ko) 기록 장치, 및 기록 장치의 제어 방법
JP5810609B2 (ja) 記録装置、記録装置の制御方法、及び、プログラム
US20050286079A1 (en) Printing apparatus and printing method
JP5909871B2 (ja) 記録装置
US10210438B2 (en) Printer and control method of a printer
US9898691B2 (en) Control device, control system, and control method of a control device
US10046577B2 (en) Printing device, printing system, and control method of a printing device
JP2014215865A (ja) 制御装置、制御システム、制御装置の制御方法、および、プログラム
EP2889753A1 (en) Receipt printing system, control method for receipt printing system, and control device
JP5862045B2 (ja) 記録装置、記録装置の制御方法、及び、プログラム
JP6986948B2 (ja) プリンタ装置
JP5987415B2 (ja) 記録装置、記録装置の制御方法、及び、プログラム
JP5987389B2 (ja) 記録装置、記録装置の制御方法、及び、プログラム
CN107111919B (zh) 打印数据处理装置、打印数据处理方法、程序以及打印系统
JP5828398B2 (ja) 記録装置、記録装置の制御方法、及び、プログラム
JP6186846B2 (ja) 制御装置、制御システム、および制御装置の制御方法
JP6032334B2 (ja) 制御装置、及び、記録システム
JP2014054846A (ja) 制御装置、制御装置の制御方法、及び、プログラム
JP2013129066A (ja) 記録装置、記録装置の制御方法、及び、プログラム
JP6127638B2 (ja) 印刷装置、印刷装置の制御方法、及び、プログラム
JP5838742B2 (ja) 制御装置、制御装置の制御方法、及び、プログラム
JP6459260B2 (ja) 記録システム、記録制御方法、及び、記録装置
JP5857656B2 (ja) 制御装置、制御装置の制御方法、及び、プログラム
BR102013008672A2 (pt) Recording device and method of control of a recording device
JP2017091403A (ja) 印刷制御装置の制御方法、及び、印刷制御装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190722

Year of fee payment: 6