100% found this document useful (1 vote)
28 views

Real time digital signal processing from MATLAB to C with the TMS320C6x DSPs 2nd ed Edition Wright - The ebook with rich content is ready for you to download

The document promotes the book 'Real-Time Digital Signal Processing from MATLAB to C with the TMS320C6x DSPs, 2nd Edition' and provides links to download it along with other related ebooks. It highlights the importance of digital signal processing in modern technology and emphasizes the book's practical approach to teaching both theory and real-time applications. Additionally, it includes information about the authors and their qualifications in the field of digital signal processing.

Uploaded by

idskoucruise
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
28 views

Real time digital signal processing from MATLAB to C with the TMS320C6x DSPs 2nd ed Edition Wright - The ebook with rich content is ready for you to download

The document promotes the book 'Real-Time Digital Signal Processing from MATLAB to C with the TMS320C6x DSPs, 2nd Edition' and provides links to download it along with other related ebooks. It highlights the importance of digital signal processing in modern technology and emphasizes the book's practical approach to teaching both theory and real-time applications. Additionally, it includes information about the authors and their qualifications in the field of digital signal processing.

Uploaded by

idskoucruise
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

Visit ebookfinal.

com to download the full version and


explore more ebooks or textbooks

Real time digital signal processing from MATLAB to


C with the TMS320C6x DSPs 2nd ed Edition Wright

_____ Click the link below to download _____


https://ebookfinal.com/download/real-time-digital-signal-
processing-from-matlab-to-c-with-the-tms320c6x-dsps-2nd-ed-
edition-wright/

Explore and download more ebooks or textbook at ebookfinal.com


Here are some recommended products that we believe you will be
interested in. You can click the link to download.

Real Time Digital Signal Processing Implementation and


Application 2nd Edition Sen M. Kuo

https://ebookfinal.com/download/real-time-digital-signal-processing-
implementation-and-application-2nd-edition-sen-m-kuo/

Digital Signal Processing using MATLAB 2nd Edition Vinay


K. Ingle

https://ebookfinal.com/download/digital-signal-processing-using-
matlab-2nd-edition-vinay-k-ingle/

Signals Systems Transforms and Digital Signal Processing


with MATLAB 1st Edition Michael Corinthios

https://ebookfinal.com/download/signals-systems-transforms-and-
digital-signal-processing-with-matlab-1st-edition-michael-corinthios/

Real Time Digital Signal Processing Fundamentals


Implementations and Applications 3rd Edition Sen M. Kuo

https://ebookfinal.com/download/real-time-digital-signal-processing-
fundamentals-implementations-and-applications-3rd-edition-sen-m-kuo/
Digital Signal Processing using MATLAB 3rd Edition Robert
J. Schilling

https://ebookfinal.com/download/digital-signal-processing-using-
matlab-3rd-edition-robert-j-schilling/

Digital Image Processing Using Matlab 2nd Edition Rafael


C. Gonzalez

https://ebookfinal.com/download/digital-image-processing-using-
matlab-2nd-edition-rafael-c-gonzalez/

Digital Signal and Image Processing Using MATLAB Gérard


Blanchet

https://ebookfinal.com/download/digital-signal-and-image-processing-
using-matlab-gerard-blanchet/

Discrete time signal processing 3rd ed Edition Buck

https://ebookfinal.com/download/discrete-time-signal-processing-3rd-
ed-edition-buck/

The digital signal processing fundamentals 2ed Edition


Madisetti V. (Ed.)

https://ebookfinal.com/download/the-digital-signal-processing-
fundamentals-2ed-edition-madisetti-v-ed/
Real time digital signal processing from MATLAB to C
with the TMS320C6x DSPs 2nd ed Edition Wright Digital
Instant Download
Author(s): Wright, Cameron H. G.; Welch, Thad B.; Morrow, Michael G
ISBN(s): 9781439883037, 1439883033
Edition: 2nd ed
File Details: PDF, 30.22 MB
Year: 2012
Language: english
Second Edition

Real-Time
Digital Signal Processing
from MATLAB® to C with
the TMS320C6x DSPs
This page intentionally left blank
Second Edition

Real-Time
Digital Signal Processing
from MATLAB® to C with
the TMS320C6x DSPs
Thad B. Welch
Boise State University, Boise, Idaho
Cameron H.G. Wright
University of Wyoming, Laramie, Wyoming
Michael G. Morrow
University of Wisconsin, Madison, Wisconsin

Boca Raton London New York

CRC Press is an imprint of the


Taylor & Francis Group, an informa business
MATLAB® is a trademark of The MathWorks, Inc. and is used with permission. The MathWorks does not warrant the
accuracy of the text or exercises in this book. This book’s use or discussion of MATLAB® software or related products
does not constitute endorsement or sponsorship by The MathWorks of a particular pedagogical approach or particular
use of the MATLAB® software.

CRC Press
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742
© 2012 by Taylor & Francis Group, LLC
CRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works


Version Date: 20111129

International Standard Book Number-13: 978-1-4398-8305-1 (eBook - PDF)

This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been
made to publish reliable data and information, but the author and publisher cannot assume responsibility for the valid-
ity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright
holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this
form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may
rectify in any future reprint.

Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or uti-
lized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopy-
ing, microfilming, and recording, or in any information storage or retrieval system, without written permission from the
publishers.

For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://
www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923,
978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For
organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for
identification and explanation without intent to infringe.
Visit the Taylor & Francis Web site at
http://www.taylorandfrancis.com
and the CRC Press Web site at
http://www.crcpress.com
To Donna. . .

To Robin and little Jacob. . .

To all those people whose friendship, counsel, and criticism have helped us
along the way. . .

v
This page intentionally left blank
Foreword

Digital signal processing is at the “heart” of most technologies that we use today. Our
cell phones use digital signal processing to generate the DTMF (dual tone multi-frequency)
tones that are sent to wireless networks. Our noise-canceling headphones use adaptive
digital signal processing to cancel the noise in the environment around us. Digital cameras
use digital signal processing to compress images into JPEG formats for efficient storage so
that we can store hundreds of images in a single memory card. It is digital signal processing
that allows us to play compressed music in our iPods. Digital signal processing controls
even the anti-lock brakes in our cars today. And these are just a few of the examples of
real-time signal processing in the world around us.
There are many good textbooks today to teach digital signal processing—but most of
them are content to teach the theory, and perhaps some MATLAB simulations. This
book has taken a bold step forward. It not only presents the theory, it reinforces it with
simulations, and then it shows us how to actually use the results in real-time applications.
This last step is not a trivial step, and that is why so many books, and courses, present
only theory and simulations. With the combined expertise of the three authors of this
text—Thad Welch, Cam Wright, and Mike Morrow—the reader can step into the real-time
world of applications with a text that presents an accessible path. This Second Edition
continues to support the C6713 DSK, but it also includes support for the new multi-core
OMAP-L138 board from Texas Instruments. The multi-core OMAP-138 chip includes both
a C6784 DSP core and an ARM9 GPP core, making it very powerful and attractive to a
wide variety of users. New project chapters cover QPSK and QAM transmitters, QPSK
receivers, and a new section on pseudonoise signal generation for spread spectrum.
I have been fortunate to co-author several papers with the authors of this text, and can
speak from first-hand experiences of their dedication to engineering education. They go the
extra mile to continue to expand their understanding and their abilities to present com-
plex material in a logical, straightforward manner. They attend conferences on engineering
education; they chair sessions on engineering education; they write papers on engineering
education; they live engineering education! (One of the co-authors, Thad Welch, was re-
cently selected as the first Signal Processing Engineering Network Fellow to recognize his
leadership and contributions.). I am delighted to be able to have an opportunity to tell the
readers of this text that they are in for, in the authors’ own words, “a ride. . . ”.

Delores M. Etter
Texas Instruments Distinguished Chair in Electrical Engineering
Executive Director, Caruth Institute for Engineering Education
Lyle School of Engineering
Southern Methodist University
Dallas, Texas

(Dr. Etter is a member of the National Academy of Engineering and is a Fellow of the IEEE and of
the American Society of Engineering Education. She served as the Assistant Secretary of the Navy
for Research, Development and Acquisitions from 2005–2007, and as the Deputy Under Secretary
of Defense for Science and Technology from 1998–2001. She is also the author of a number of
engineering textbooks, including several on MATLAB.)

vii
About the Authors

Thad B. Welch, Ph.D., P.E., is a Professor and past Chair of the Department of Elec-
trical and Computer Engineering at Boise State University. He previously taught
in the Department of Electrical and Computer Engineering at both the U.S. Naval
Academy (USNA) and the U.S. Air Force Academy (USAFA). A retired Comman-
der in the U.S. Navy, he was the inaugural 2011 SPEN Fellow, won the 2001 ECE
Outstanding Educator Award, the 2002 Raouf Award for Excellence in the Teaching
of Engineering, the John A. Curtis Lecture Award from the Computers in Education
Division of ASEE in 1998, 2005, and 2010, the 2003 ECE Outstanding Researcher
Award at USNA, and the 1997 Clements Outstanding Educator Award at USAFA.
Dr. Welch is the former Chair and a founding member of the Technical Committee
on Signal Processing Education for the Institute of Electrical and Electronic Engi-
neers (IEEE) Signal Processing Society. He is a senior member of the IEEE and a
member of the American Society for Engineering Education (ASEE), Tau Beta Pi
(the engineering honor society), and Eta Kappa Nu (the electrical engineering honor
society).
Cameron H. G. Wright, Ph.D., P.E., is an Associate Professor and Associate Depart-
ment Head in the Department of Electrical and Computer Engineering at the Uni-
versity of Wyoming, and previously taught for nearly 10 years at the U.S. Air Force
Academy (USAFA) in the Department of Electrical and Computer Engineering where
he was Professor and Deputy Department Head. A retired Lieutenant Colonel in the
U.S. Air Force, he won the Brigadier General R. E. Thomas Award for Outstanding
Contributions to Cadet Education in 1992 and 1993. In 2005 and 2008, he won the
IEEE Student Choice Award for Outstanding Professor of the Year, the Mortar Board
“Top Prof” Award at the University of Wyoming in 2005 and 2007, the Outstanding
Teaching Award from the ASEE Rocky Mountain Section in 2007, the John A. Curtis
Lecture Award from the Computers in Education Division of ASEE in 1998, 2005, and
2010, and the Tau Beta Pi WY-A chapter Undergraduate Teaching Award in 2011.
Dr. Wright is a founding member of the Technical Committee on Signal Processing
Education for the IEEE Signal Processing Society, a senior member of the IEEE, and a
member of ASEE, the National Society of Professional Engineers, the Biomedical En-
gineering Society, SPIE–The International Society of Optical Engineering, Tau Beta
Pi, and Eta Kappa Nu.
Michael G. Morrow, M.Eng.E.E., P.E., is a Faculty Associate in the Department of
Electrical and Computer Engineering at the University of Wisconsin–Madison. A re-
tired Lieutenant Commander in the U.S. Navy, he previously taught in the Electrical
and Computer Engineering Engineering Department at the U.S. Naval Academy and
in the Department of Electrical and Computer Engineering at Boise State University.
Mr. Morrow won both the 2002 Department of Electrical and Computer Engineering
Outstanding Educator Award and the 2003 Gerald Holdridge Teaching Excellence

ix
x

Award at the University of Wisconsin–Madison. He is the founder and president of


Educational DSP (eDSP), LLC, a company devoted to the development of affordable
DSP solutions for educators and students worldwide. He is a member of the Tech-
nical Committee on Signal Processing Education for the Institute of Electrical and
Electronic Engineers (IEEE) Signal Processing Society, a senior member of the IEEE,
and a member of the American Society for Engineering Education (ASEE).
Contents

List of Figures xix

List of Tables xxv

List of Program Listings xxvii

Preface xxxi

Acknowledgments xxxv

Section I: Enduring Fundamentals 1

1 Introduction and Organization 3


1.1 Why Do You Need This Book? . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Other DSP Books . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Demos and DSP Hardware . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.3 Philosophy of This Book . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Real-Time DSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 How to Use This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Supported Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 Host Computer to DSP Board Communication . . . . . . . . . . . . 6
1.3.3 Transition to Real-Time . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.4 Chapter Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.5 Hardware and Software Installation . . . . . . . . . . . . . . . . . . 11
1.3.6 Reading Program Listings . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4 Get Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2 Sampling and Reconstruction 15


2.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.1.1 Choosing a Sampling Frequency . . . . . . . . . . . . . . . . . . . . 15
2.1.2 Input/Output Issues: Samples or Frames? . . . . . . . . . . . . . . . 15
2.1.3 The Talk-Through Concept . . . . . . . . . . . . . . . . . . . . . . . 16
2.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1 Starting winDSK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.2 Talk-Thru Application . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Talk-Through Using Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Talk-Through Using MATLAB and Windows . . . . . . . . . . . . . . . . . 22
2.4.1 Talk-Through Using MATLAB Only . . . . . . . . . . . . . . . . . . 24

xi
xii CONTENTS

2.4.2 Talk-Through Using MATLAB and the DSK . . . . . . . . . . . . . 26


2.5 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3 FIR Digital Filters 31


3.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.1 Traditional Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.2 FIR Filters Compared to IIR Filters . . . . . . . . . . . . . . . . . . 32
3.1.3 Calculating the Output of a Filter . . . . . . . . . . . . . . . . . . . 32
3.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.1 Graphic Equalizer Application . . . . . . . . . . . . . . . . . . . . . 34
3.2.2 Notch Filter Application . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2.3 Audio Effects Application . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3.1 Built-In Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3.2 Creating Your Own Filter Algorithm . . . . . . . . . . . . . . . . . . 43
3.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4.1 Brute-Force FIR Filtering in C: Part 1 . . . . . . . . . . . . . . . . . 45
3.4.2 Brute-Force FIR Filtering in C: Part 2 . . . . . . . . . . . . . . . . . 47
3.4.3 Circular Buffered FIR Filtering . . . . . . . . . . . . . . . . . . . . . 49
3.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.6 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

4 IIR Digital Filters 55


4.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2 winDSK Demonstration: Notch Filter Application . . . . . . . . . . . . . . 58
4.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3.1 Filter Design and Analysis . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3.2 IIR Filter Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3.3 Block Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.3.4 Built-In Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.3.5 Creating Your Own Filter Algorithm . . . . . . . . . . . . . . . . . . 78
4.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.4.1 Brute-Force IIR Filtering . . . . . . . . . . . . . . . . . . . . . . . . 79
4.4.2 More Efficient IIR Filtering . . . . . . . . . . . . . . . . . . . . . . . 81
4.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.6 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

5 Periodic Signal Generation 83


5.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.1.1 Periodic Signals in DSP . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.1.2 Signal Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.1 Arbitrary Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.2 DTMF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.3.1 Direct Digital Synthesizer Technique . . . . . . . . . . . . . . . . . . 94
5.3.2 Table Lookup Technique . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.4.1 Direct Digital Synthesizer Technique . . . . . . . . . . . . . . . . . . 96
CONTENTS xiii

5.4.2 Table Lookup Technique . . . . . . . . . . . . . . . . . . . . . . . . . 98


5.4.3 Table Lookup Technique with Table Creation . . . . . . . . . . . . . 99
5.4.4 Digital Resonator Technique . . . . . . . . . . . . . . . . . . . . . . 100
5.5 Pseudonoise Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.5.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.5.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.5.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . 107
5.5.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . 112
5.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.7 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

6 Frame-Based DSP 121


6.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.1.1 Drawbacks of Sample-Based DSP . . . . . . . . . . . . . . . . . . . . 121
6.1.2 What Is a Frame? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4.1 Triple Buffering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.4.2 A Frame-Based DSP Example . . . . . . . . . . . . . . . . . . . . . 126
6.4.3 Using Direct Memory Access . . . . . . . . . . . . . . . . . . . . . . 130
6.5 Summary of Frame-Based Processing . . . . . . . . . . . . . . . . . . . . . . 138
6.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
6.7 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

7 Digital Filters Using Frames 141


7.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
7.4.1 Understanding the FIR Process for Frames . . . . . . . . . . . . . . 142
7.4.2 How to Avoid the “Edge” Problems . . . . . . . . . . . . . . . . . . 143
7.4.3 Explanation of the C Code . . . . . . . . . . . . . . . . . . . . . . . 143
7.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7.6 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

8 The Fast Fourier Transform 147


8.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.1.1 Defining the FFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.1.2 The Twiddle Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
8.1.3 The FFT Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
8.1.4 Bit-Reversed Addressing . . . . . . . . . . . . . . . . . . . . . . . . . 151
8.1.5 Using the FFT for Filtering . . . . . . . . . . . . . . . . . . . . . . . 151
8.1.6 Avoiding Circular Convolution . . . . . . . . . . . . . . . . . . . . . 152
8.1.7 Real-Time Fast Convolution . . . . . . . . . . . . . . . . . . . . . . . 154
8.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.4 Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.6 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
xiv CONTENTS

9 Spectral Analysis and Windowing 163


9.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
9.1.1 Power Spectrum of a Signal . . . . . . . . . . . . . . . . . . . . . . . 163
9.1.2 The Need for Windowing . . . . . . . . . . . . . . . . . . . . . . . . 165
9.1.3 Window Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . 167
9.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
9.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
9.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
9.7 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174

Section II: Projects 177

10 Project 1: Guitar Special Effects 179


10.1 Introduction to Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
10.2 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
10.2.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
10.2.2 How the Effects Work . . . . . . . . . . . . . . . . . . . . . . . . . . 180
10.3 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
10.4 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
10.4.1 FIR Comb Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
10.4.2 IIR Comb Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
10.4.3 Notch Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
10.4.4 Flanger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
10.4.5 Tremelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
10.5 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.5.1 Real-Time Comb Filters . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.5.2 Other Real-Time Special Effects . . . . . . . . . . . . . . . . . . . . 201
10.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

11 Project 2: Graphic Equalizer 203


11.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
11.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
11.2.1 Graphic Equalizer Application . . . . . . . . . . . . . . . . . . . . . 204
11.2.2 Effect of the Graphic Equalizer . . . . . . . . . . . . . . . . . . . . . 205
11.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
11.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
11.4.1 Applying Gain to Filter Bands . . . . . . . . . . . . . . . . . . . . . 209
11.4.2 GEL File Slider Control . . . . . . . . . . . . . . . . . . . . . . . . . 210
11.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

12 Project 3: Peak Program Meter 213


12.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
12.2 winDSK Demonstration: commDSK . . . . . . . . . . . . . . . . . . . . . . 214
12.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
12.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
12.4.1 Example PPM Code . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
12.4.2 DSK LED Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
12.4.3 Another PPM Code Version . . . . . . . . . . . . . . . . . . . . . . . 217
12.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
CONTENTS xv

13 Project 4: AM Transmitters 219


13.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
13.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
13.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
13.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
13.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

14 Project 5: AM Receivers 227


14.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
14.1.1 Envelope Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
14.1.2 The Hilbert-Based AM Receiver . . . . . . . . . . . . . . . . . . . . 233
14.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
14.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
14.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
14.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

15 Project 6: Phase-Locked Loop 243


15.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
15.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
15.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
15.3.1 PLL Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
15.3.2 A Few Updates to the MATLAB Implementation . . . . . . . . . . . 250
15.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
15.4.1 Components of the PLL . . . . . . . . . . . . . . . . . . . . . . . . . 253
15.4.2 System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
15.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

16 Project 7: BPSK Digital Transmitters 259


16.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
16.1.1 Random Data and Symbol Generation . . . . . . . . . . . . . . . . . 259
16.1.2 BPSK Using Antipodal Rectangularly Shaped Bits . . . . . . . . . . 261
16.1.3 BPSK Using Impulse Modulated Raised-Cosine Shaped Bits . . . . 261
16.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
16.2.1 commDSK: Unfiltered BPSK . . . . . . . . . . . . . . . . . . . . . . 263
16.2.2 commDSK: Raised-Cosine Filtered BPSK . . . . . . . . . . . . . . . 264
16.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
16.3.1 Rectangular Shaped BPSK Signal Generator . . . . . . . . . . . . . 268
16.3.2 Impulse Modulated Raised-Cosine BPSK Signal Generator . . . . . 269
16.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
16.4.1 A Rectangular Pulse Shaped BPSK Transmitter . . . . . . . . . . . 273
16.4.2 A Raised-Cosine Pulse Shaped BPSK Transmitter . . . . . . . . . . 274
16.4.3 Summary of Real-Time Code . . . . . . . . . . . . . . . . . . . . . . 276
16.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

17 Project 8: BPSK Digital Receivers 279


17.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
17.1.1 The Output of the Matched Filter . . . . . . . . . . . . . . . . . . . 281
17.1.2 The Eye-Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
17.1.3 Maximum Likelihood Timing Recovery . . . . . . . . . . . . . . . . 283
17.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
17.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
xvi CONTENTS

17.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290


17.4.1 Components of the Digital Receiver . . . . . . . . . . . . . . . . . . 290
17.4.2 System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
17.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

18 Project 9: MPSK and QAM Digital Transmitters 297


18.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
18.1.1 I- and Q-Based Transmitters . . . . . . . . . . . . . . . . . . . . . . 297
18.1.2 A Few Constellation Diagrams . . . . . . . . . . . . . . . . . . . . . 299
18.2 winDSK Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
18.2.1 commDSK: Root-Raised-Cosine Filtered QPSK . . . . . . . . . . . . 303
18.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
18.3.1 Impulse Modulated Root-Raised-Cosine QPSK Signal Generator . . 306
18.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
18.4.1 A Root-Raised-Cosine Pulse Shaped QPSK Transmitter . . . . . . . 310
18.4.2 A More Efficient RRC Pulse Shaped QPSK Transmitter . . . . . . . 312
18.4.3 Summary of Real-Time Code . . . . . . . . . . . . . . . . . . . . . . 315
18.5 Higher-Order Modulation Schemes . . . . . . . . . . . . . . . . . . . . . . . 315
18.6 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316

19 Project 10: QPSK Digital Receivers 317


19.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
19.2 winDSK8 Demonstration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
19.3 MATLAB Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
19.3.1 Through the AGC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
19.3.2 A complete QPSK receiver . . . . . . . . . . . . . . . . . . . . . . . 323
19.4 DSK Implementation in C . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
19.4.1 Through the AGC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
19.4.2 A complete QPSK receiver . . . . . . . . . . . . . . . . . . . . . . . 333
19.4.3 System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
19.5 Follow-On Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340

Section III: Appendices 343

A Code Composer Studio: An Overview 345


A.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
A.2 Starting Code Composer Studio . . . . . . . . . . . . . . . . . . . . . . . . . 345
A.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

B DSP/BIOS 349
B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
B.1.1 DSP/BIOS Major Features . . . . . . . . . . . . . . . . . . . . . . . 349
B.1.2 DSP/BIOS Threads . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
B.2 DSP/BIOS Sample Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . 350

C Numeric Representations 351


C.1 Endianness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
C.2 Integer Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
C.3 Integer Division and Rounding . . . . . . . . . . . . . . . . . . . . . . . . . 353
C.4 Floating-Point Representations . . . . . . . . . . . . . . . . . . . . . . . . . 354
C.5 Fixed-Point Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
CONTENTS xvii

C.6 Summary of Numeric Representations . . . . . . . . . . . . . . . . . . . . . 357

D TMS320C6x Architecture 359


D.1 Computer Architecture Basics . . . . . . . . . . . . . . . . . . . . . . . . . . 359
D.1.1 Instruction Set Architecture . . . . . . . . . . . . . . . . . . . . . . . 360
D.1.2 Register Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . 360
D.1.3 Memory Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . 361
D.1.4 Fetch-Execute Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
D.1.5 Pipelining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
D.1.6 Single- versus Multiple-Issue . . . . . . . . . . . . . . . . . . . . . . 365
D.1.7 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
D.2 TMS320C671x Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
D.2.1 Memory System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
D.2.2 Pipeline and Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . 369
D.2.3 Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
D.2.4 Host Port Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
D.3 TMS320C674x Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . 370

E Related Tools for DSKs 373


E.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
E.2 Windows Control Applications . . . . . . . . . . . . . . . . . . . . . . . . . 373
E.2.1 Sample Windows Control Application . . . . . . . . . . . . . . . . . 374
E.3 MATLAB Exports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
E.3.1 Exporting Direct-Form II Implementations . . . . . . . . . . . . . . 374
E.3.2 Exporting Second-Order Section Implementations . . . . . . . . . . 375
E.4 MATLAB Real-Time Interface . . . . . . . . . . . . . . . . . . . . . . . . . 376

F Programming Perils and Pitfalls 377


F.1 Debug versus Release Builds . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
F.2 The Volatile Keyword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
F.3 Function Prototypes and Return Types . . . . . . . . . . . . . . . . . . . . 378
F.4 Arithmetic Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
F.5 Controlling the Location of Variables in Memory . . . . . . . . . . . . . . . 380
F.6 Real-Time Schedule Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
F.7 Variable Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
F.8 Integer Data Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383

G Abbreviations, Acronyms, and Symbols 385

References 391

Index 397
This page intentionally left blank
List of Figures

1.1 The supported DSK circuit boards. . . . . . . . . . . . . . . . . . . . . . . 7


1.2 The HPI interface board on the C6713 DSK. . . . . . . . . . . . . . . . . . 8

2.1 A generic DSP system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16


2.2 A talk-through system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 The winDSK program ready to load the Talk-Thru application. . . . . . . 17
2.4 winDSK running the Talk-Thru application. . . . . . . . . . . . . . . . . . 18
2.5 Various types of audio mini-plugs used with devices such as MP3 players
and CD players. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.6 The Windows sound recorder program. . . . . . . . . . . . . . . . . . . . . 21
2.7 A freely available sound recorder, mixer, and editing program called Audacity. 21
2.8 MATLAB command window with the help pull-down menu open. . . . . . 23
2.9 MATLAB interface to the PC sound card. . . . . . . . . . . . . . . . . . . 24
2.10 Simulink model of a PC-based talk-through system. . . . . . . . . . . . . . 26
2.11 Block parameters from the wave device in Figure 2.10. . . . . . . . . . . . 26
2.12 Click on the start simulation icon on the Simulink toolbar. . . . . . . . . . 27

3.1 A summary of the continuous-time and discrete-time notation. . . . . . . . 32


3.2 Block diagram associated with the implementation of an FIR filter. . . . . 34
3.3 winDSK running the Graphic Equalizer application. . . . . . . . . . . . . . 34
3.4 Block diagram associated with winDSK’s Graphic Equalizer application. . 35
3.5 Frequency response of winDSK’s 5-band Graphic Equalizer application. . . 35
3.6 winDSK running the Notch Filter application with r = 0. . . . . . . . . . . 36
3.7 The frequency response of four different notch filters. . . . . . . . . . . . . 37
3.8 winDSK running the Audio Effects application. . . . . . . . . . . . . . . . 38
3.9 The block diagram of the flanging effect. . . . . . . . . . . . . . . . . . . . 38
3.10 The block diagram of the chorus effect. . . . . . . . . . . . . . . . . . . . . 38
3.11 Stem plot of the filtering of x with B. . . . . . . . . . . . . . . . . . . . . 40
3.12 Magnitude of the frequency response for MA filters. . . . . . . . . . . . . . 41
3.13 Filtered and unfiltered closing values of the NASDAQ composite index. . . 42
3.14 One method of listening to the unfiltered and filtered audio signals. . . . . 47
3.15 The MATLAB FDATool for designing digital filters. . . . . . . . . . . . . . 48
3.16 The linear memory concept with static memory location labeling. . . . . . 50
3.17 Static circular buffer concept. . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.18 Dynamic circular buffer concept. . . . . . . . . . . . . . . . . . . . . . . . 51

4.1 Schematic for a continuous-time (analog) first-order RC filter. . . . . . . . 55


4.2 Linear plot of the impulse response for a first-order analog LPF. . . . . . . 56
4.3 Semilog plot of the impulse response for a first order LPF. . . . . . . . . . 57

xix
Discovering Diverse Content Through
Random Scribd Documents
Egészen meg voltam zavarodva, azt sem tudtam, melyik lábomra
álljak; ez a leány az egész gondolkozásomat kiforgatta. El voltam
ragadtatva, csodálatos öröm fogott el; ugy éreztem, mintha a
boldogságtól és gyönyörüségtől meg kellene halnom. Határozottan ő
maga akart velem visszajönni, nem az én eszmém volt, hanem az ő
saját kivánsága. És amint megyek és folyton őt nézem, mindig
bátrabb leszek, ő maga is bátorit s minden szavával közelebb von
magához. Egy pillanatra elfelejtem szegénységemet, semmiségemet,
egész nyomoruságos életemet; érzem, hogy a vér ugy kering, zug
bennem, mint a régi időben, mikor még nem estem igy össze és
elhatározom, hogy egy kis fogással próbálok előbbre jutni.
– Különben nem is önt üldöztem akkor, – mondtam; – hanem a
testvérét.
– Igazán? A testvéremet? – kérdi elképedve a csodálkozástól.
Megáll, reám néz, várja a feleletet; egészen komolyan kérdezte.
– Igen, – felelek. – Vagyis… hm, a fiatalabbik hölgyet a kettő
közül, akik előttem mentek.
– A fiatalabbikat! Aha-ha! – Hangosan, szivből nevetett, mint egy
gyermek. – Milyen ravasz ön! Ezt csak azért mondta, hogy
fölemeltesse velem a fátyolomat. Most már értem. De bizony
fölsült… büntetésből.
Elkezdtünk nevetni és tréfálni, szünet nélkül fecsegtünk az egész
idő alatt; azt sem tudtam, mit beszélek, olyan vidám voltam.
Elmesélte, hogy ő már látott engem egyszer régen a szinházban.
Három barátommal voltam együtt és ugy viseltem magam, mint egy
bolond; bizonyosan akkor is ittas voltam, sajnos.
– Miből következteti ezt?
– Mert annyit nevetett.
– Vagy ugy? Hja, akkor még sokat nevettem.
– Most már nem?
– Dehogy, most is. Olyan nagyszerü élni!
Leértünk a Karl Johan-utcáig. Akkor azt mondta:
– Most már nem megyünk tovább. – Visszafordultunk és ujra
fölsétáltunk az Egyetem-utcán. Mikor megint a szökőkuthoz
érkeztünk, meglassitottam kissé a lépteimet, tudtam, hogy tovább
nem szabad kisérnem.
– Most már önnek is vissza kell fordulnia, – mondta és megállt.
– Magam is azt hiszem, – feleltem.
De a másik percben már azt gondolta, hogy miért ne kisérhetném
el a kapuig. Istenem, hiszen ebben csak nincs semmi rossz, ugy-e?
– Hogy volna, – feleltem.
De mikor a kapuban álltunk, egész nyomoruságom ujra reám
zudult. Hogyan is tarthatná fönn az ember a bátorságát, ha annyira
össze van törve, mint én voltam? Itt álltam egy fiatal hölgy előtt
piszkosan, rongyosan, az éhségtől tönkre téve, mosdatlanul, félig
felöltözve, – jobb volna a föld alá sülyedni. Összehuztam magam és
önkénytelenül lekushadtam, mikor megkérdeztem:
– Nem fogunk találkozni többé?
Nem volt semmi reményem rá, hogy beleegyezzék az ujabb
találkozásba; csaknem azt kivántam, hogy egy éles nem-mel feleljen,
ami megerősithetne és közönyössé tenne iránta.
– De igen, – mondta.
– Mikor?
– Nem tudom.
Hallgatás.
– Nem volna olyan jó, hogy csak egyetlen pillanatra fölemelje a
fátyolát, – mondtam, – hogy legalább meglássam, kivel beszéltem.
Csak egy pillanatra. Tudnom kell, hogy kivel beszéltem.
Hallgatás.
– Itt találkozhatnánk kedden este, – mondta végre. – Ha ugy
akarja.
– Igen, kedves, ha megengedi.
– Nyolc órakor.
– Nagyon jó lesz.
Kezemmel végigsimitgattam a kabátját, levertem a havat róla,
csak azért, hogy valami kifogásom legyen, hogy megérinthessem;
olyan gyönyörüség volt ennyire közel lenni hozzá.
– De azért nem szabad semmi rosszat gondolnia rólam. – Megint
mosolygott.
– Ó, dehogy!…
Hirtelen egy elhatározott mozdulattal földobta a fátyolt a
homlokára; egy pillanatig mozdulatlanul néztünk egymásra. Ylajali!
mondtam. Ekkor lábujjhegyre emelkedett, karjával átölelte a
nyakamat és megcsókolta a szájam. Éreztem, hogy a melle hogyan
piheg, milyen nehezen, mélyen lélegzik.
A másik pillanatban kiragadta magát a karomból, jó éjt mondott,
suttogva, lélegzetvesztetten; aztán megfordult és szó nélkül
fölszaladt a lépcsőn…
A kapu becsapódott.

Másnap még erősebben havazott; nehéz, esővel vegyes hó volt,


nagy, kékesfehér cafatokban hullott le és sárrá változott. Az idő
élesen fagyos volt.
Kissé későn ébredtem föl, a fejem csodálatosan zavaros volt a
tegnap esti izgatottságtól, a lelkem boldogan ittas a szép
találkozástól. Elragadtatásomban egy darabig ébren fekve maradtam
az ágyban és magam mellé képzeltem Ylajalit; kitártam a karomat,
megöleltem saját magam és megcsókoltam a levegőt. Végre mégis
fölkeltem, ujra megittam egy csésze tejet, mindjárt azután
elfogyasztottam egy beefsteaket és az éhségem egészen elmult;
csak az idegeim lettek megint nagyon izgatottak.
Elmentem a ruhabazárba. Eszembe jutott, hogy hátha kaphatnék
olcsón egy használt mellényt, hogy legyen valami a kabátom alatt,
akármi. Fölmentem a lépcsőn a bazárhoz, fölfedeztem egy mellényt,
amit mindjárt vizsgálgatni kezdtem. Mig ezzel motozgáltam, egy
ismerősöm ment el az utcán és fölkiáltott hozzám. A mellényt ott
hagytam csüngeni és lementem. Technikus volt és az irodába ment.
– Jöjjön velem egy pohár sört inni, – mondta. – De azonnal, mert
nincs sok időm… Miféle hölgy volt az, akivel tegnap este sétált?
– Tudja mit, – feleltem, féltékenyen még csak a gondolatára is, –
hátha éppen a menyasszonyom volt?
– Mi az ördög!
– Igen, tegnap este határoztuk el.
Teljesen le volt főzve, habozás nélkül elhitt mindent. Én pedig
telehazudtam a fejét, hogy minél hamarabb megszabaduljak tőle;
megkaptuk a sört, megittuk és elváltunk.
– Isten vele… Igaz, – fordult vissza egyszerre, – még tartozom
önnek egynéhány koronával; igazán szégyen, hogy eddig még vissza
nem adtam, de a legközelebbi alkalommal föltétlenül megadom.
– Igen, köszönöm, – feleltem. De nagyon jól tudtam, hogy
sohasem fogja megadni azt a pár koronát.
A sör azonban mindjárt a fejembe szállt és nagyon melegem lett.
A tegnap esti kalandra gondoltam s ez a visszaemlékezés teljesen
hatalmába keritett, egészen megzavart. Hátha nem is fog kedden
eljönni? Hátha meggondolja a dolgot és gyanakodni kezd?…
Gyanakodni, de mire?… Gondolataim egyszerre ujra elevenekké
lettek és megint a pénz körül kezdtek forogni. Félelem fogott el,
halálos rémület önmagam miatt. A lopás minden részletével együtt
kinzóan állt megint előttem; láttam a kis boltot, az asztalt, sovány
kezemet, amint a pénz után nyul és kifestettem magamnak a
rendőrség eljárását, ha eljönnek értem, hogy bevigyenek. Vasraverik
kezem-lábam, nem – csak a kezemre, talán csak az egyikre, tesznek
bilincset; a korlát, a napostiszt protokolluma, pennájának a hangja,
amely ugy karcolt; a tekintete, a veszedelmes tekintete: – Nos,
Tangen ur? – És a cella, az örökös sötétség…
Hm. Összeszoritottam az öklömet, hogy uj bátorságot kapjak,
mindig gyorsabban mentem, mig csak a Stortorvra nem értem. Itt
leültem egy padra.
Csak semmi gyerekesség! Hogy a pokolba tudnák bebizonyitani,
hogy loptam? Különben a boltossegéd sem merne lármát csapni, ha
valamikor rá is jönne, hogyan történt a dolog; ezzel az állását
veszélyeztetné. Csak semmi lárma, semmi jelenet, ha szabad
kérnem!
De ez a pénz mégis csak nyomta a zsebemet és nem hagyott
nyugtot. Kezdtem megvizsgálni a lelkiismeretemet és világosan
beláttam, hogy boldogabb voltam addig, mig becsülettel éltem és
szenvedtem. És Ylajali! Nem rántottam-e őt is le magamhoz bünös
kezemmel? Istenem, én istenem! Ylajali!
Tisztában voltam magammal, egyszerre fölugrottam és
egyenesen az Elefánt-gyógyszertár mellett ülő, süteményt áruló
asszonyhoz siettem. Még ki tudok menekülni a becstelenségből, még
semmi sem késő, meg fogom mutatni a világnak, hogy mindenre
képes vagyok! Ezalatt készen tartottam a pénzt, minden öre a
kezemben volt; lehajoltam az asszony asztala felé, mintha valamit
venni akarnék és habozás nélkül a kezébe löktem a pénzt. Egy szót
sem szóltam, csak továbbsiettem.
Milyen csodálatos érzés volt, megint becsületes embernek lenni!
Üres zsebem nem nyomott többé, mintha ujra születtem volna, hogy
megint nem volt pénzem. Ha jól meggondoltam, ez a pénz nagyon
sok titkos bánatot okozott, tulajdonképpen folyton borzalommal
gondoltam rá; hiszen nem voltam még olyan elvetemedett lélek,
igen, tisztességes természetem föllázadt bennem. Hála istennek,
megint fölemelhetem fejem lelkiismeretem előtt. Próbáljátok meg ezt
elérni, mondtam és végignéztem a nyüzsgő tömegen a piacon,
utánozzátok, ha tudjátok! Boldoggá tettem egy szegény öreg kofát
annak rendje és módja szerint; azt sem tudta, mit csináljon; ma este
a gyermekei nem fognak éhesen lefeküdni… Föltüzeltem magam
ezekkel a gondolatokkal és éreztem, hogy nagyszerüen jártam el.
Hála istennek, a pénz nem volt többé a kezemben.
Fölindultan és idegesen mentem tovább az utcán, a
megelégedettségtől fölfuvalkodva. Az öröm, hogy tisztán és
becsületesen léphetek megint Ylajali elé és bátran a szemébe
nézhetek, elragadott és ittassá tett; nem éreztem semmi fájdalmat
többé, fejem üres és tiszta volt, mintha ez a fej a vállam közt csupa
világosságot sugárzott volna szét. Kedvem jött bolond csinyeket
elkövetni, képtelen dolgokat csinálni, az egész várost fenekestől
fölforgatni. Az egész uton ugy viseltem magam, mint az őrült; a
fülem halkan zugott és mámorosságom tetőpontra hágott.
Merészségemtől elragadtatva az jutott eszembe, hogy odamenjek
egy hordárhoz, aki különben egy szót sem szólt, megmondjam a
koromat, megrázzam a kezét, erősen a szemébe nézzek s aztán
minden magyarázat nélkül otthagyjam. A járókelők hangjának és
nevetésének minden árnyalatát meg tudtam különböztetni,
megfigyeltem az apró madarakat, amelyek az utcán előttem
ugrándoztak, elkezdtem a kövezetkockák kifejezését tanulmányozni
és mindenféle különös jeleket és csodálatos alakzatokat födöztem föl
rajtuk. Igy jutottam el az Országház-térre.
Hirtelen megállottam és a kocsikra bámultam. A kocsisok
beszélgetve sétálnak körülöttünk, a lovak előrehajolva állanak a
rossz időben. Menjünk! mondom magamnak s könyökömmel
megütöm a saját oldalamat. Gyorsan az első kocsihoz lépek és
beszállok. – Ullevaals-ut 37. szám! – kiáltom és a kocsi megindul.
Utközben a kocsis kezdett hátrafelé tekintgetni, lehajolt és
benézegetett a kocsiba az ernyő alá, ahol ültem. Vajjon
gyanakodott? Kétségtelenül elhasznált öltözetem tette figyelmessé.
– Egy urral kell találkoznom, – kiáltottam ki, hogy megelőzzem és
körülményesen megmagyaráztam neki, hogy okvetlenül találkoznom
kell azzal az urral.
Megállunk a 37. szám előtt, kiugrom, fölsietek a lépcsőn, föl
egészen a harmadik emeletre, megfogok egy csengőhuzót és
megrázom; a csengő élesen lármáz odabent vagy hatszor-hétszer.
Egy leány jön és ajtót nyit; észreveszem, hogy arany a
fülbevalója és fekete szövetgombok vannak szürke ruhája derekán.
Ijedten néz rám.
– Kierulf urat keresem, Joachim Kierulfot, ha szabad igy
neveznem, a gyapjukereskedőt, egyszóval tudja már, hogy kiről van
szó…
A leány megrázza a fejét.
– Itt nem lakik semmiféle Kierulf, – mondja.
Rám bámul, kezét az ajtókilincsen tartja, készen rá, hogy
betegye. Egyáltalában nem erőlteti meg magát, hogy ezt az embert
megtalálja; pedig ugy tetszik, mintha ismerné, akiről
kérdezősködöm, csak egy kicsit gondolkoznia kellene a lusta
teremtésnek. Megharagudtam, hátat forditottam és megint
lefutottam a lépcsőn.
– Nem találtam meg, – kiáltottam a kocsisnak.
– Nem volt itt?
– Nem. Hajtson a Tomtegate 11. szám alá.
A leghevesebb fölindulás fogott el és ugy látszik, valami a
kocsisra is átragadt belőle; bizonyosan azt hitte, hogy élet-halálról
van szó, mert azonnal tovább hajtott. Ostorral kezdte ütni a lovat.
– Hogy hivják azt az embert? – kérdezte a bakon visszafordulva.
– Kierulf, Kierulf gyapjukereskedő.
A kocsis is azt találta, hogy itt szó sem lehet tévedésről. – Nem
világos kabátban szokott járni?
– Mit beszél, – kiáltottam, – világos kabátban? Megbolondult? Hát
azt hiszi, hogy egy teásfindzsát keresek? – Ez a világos kabát nagyon
alkalmatlanul jött közbe, egészen elrontotta az emberemet, akit már
elképzeltem.
– Hogy is tetszett mondani? Kierulfnak hivják?
– Igen, igen, – feleltem, – van ebben valami különös? A név csak
nem szégyen!
– Nem veres a haja?
Az nagyon könnyen lehet, hogy veres haja van és amint a kocsis
ezt a körülményt fölemlitette, egyszerre egészen bizonyos voltam
benne, hogy igaza van. Valósággal hálásan mondtam a derék
kocsisnak, hogy most elevenére tapintott az én emberemnek;
csakugyan ugy áll a dolog, amint mondta; különben is ritkaság
volna, ha ilyen embernek nem veres lenne a haja.
– Akkor az lehet, akit egynehányszor már vittem is a kocsimon, –
vélte a kocsis. – Mindig görcsös bottal szokott járni.
Most már világosan és elevenen magam előtt láttam az
emberemet és igy szóltam:
– He-he, ezt az embert ugyan még senki sem látta görcsös bot
nélkül a kezében. Ebben a tekintetben nincs tévedés, annyi bizonyos.
Világos, hogy ezt az embert vitte többször a kocsiján. Ő is
fölismerte…
És tovább robogtunk, hogy csak ugy szikrázott a ló patkója.
Ebben a fölhevült állapotban sem vesztettem el egy pillanatra
sem a lélekjelenlétemet. Elmegyünk egy rendőr előtt és azonnal
megfigyelem, hogy 69-es számu. Ez a szám kegyetlenül közelről
érint, ugy hatol az agyamba, mint egy üvegszilánk, 69, éppen 69, ezt
nem egyhamar fogom elfelejteni!
Hátrahuzódom a kocsiban, rabjául a legőrültebb eszméknek;
egészen bekuporodom a viaszosvászon fedél alá, hogy meg ne
lássák, ha a szájam mozog és elkezdek, mint egy hülye, magamban
beszélni. Az őrültség tombol az agyamban és én engedem tombolni;
teljes öntudatommal tudom, hogy olyan befolyások alatt állok, amik
fölött nem tudok urrá lenni. Elkezdek nevetni halkan, de odaadóan
minden elképzelhető ok nélkül, még mindig vidáman és mámorosan
attól a két pohár sörtől, amit megittam. Kis idő mulva izgatottságom
szünni kezdett, nyugalmam lassan-lassan visszatért. Csak
megharapott ujjam fázott és én bedugtam az ingem gallérja mögé,
hogy fölmelegitsem. Igy érkeztünk a Tomtegatera. A kocsi megállt.
Lassan kilépek a kocsiból, gondolatok nélkül, elpetyhüdten, nehéz
fejjel. Átmegyek a kapu alatt, bejutok a hátsó udvarba, amelyen
keresztülmenve egy ajtóba ütközöm; ezt kinyitom, belépek és egy
két ablakos folyosón vagy előszobafélében találom magamat. Két
utazótáska áll egymás tetején az egyik szögletben és a hosszabbik
falnál egy ócska festetlen lóca egy szőnyeggel leteritve. Jobbra a
szomszédos szobából hangokat és gyermeksirást hallok és fölöttem a
második emeleten olyan zajt, mintha vaslemezt vernének
kalapáccsal. Mindezt azonnal észreveszem, mihelyt belépek.
Nyugodtan végigmegyek a szobán egyenesen a szembelevő
ajtóhoz, minden sietség, a menekülés minden gondolata nélkül, ezt
is kinyitom és kint vagyok a Vognmandsgaten. Fölnézek a házra,
amelyen éppen keresztül jöttem és ezt olvasom az ajtó fölött: Szállás
és étkezés utazók részére.
Eszembe sem jutott, hogy menekülni akarjak, hogy ellopódzam a
kocsis elől, aki reám várt; elgondolkozva megyek végig az egész
utcán, nem félek és nem tudom, hogy valami rosszat teszek. Kierulf,
ez a gyapjukereskedő, aki olyan sokáig kisértett az agyamban, ez az
ember, akiről azt hittem, hogy komolyan létezik és hogy okvetetlenül
találkoznom kell vele, teljesen kiveszett a gondolatomból, elmosódott
többi őrült ötletemmel együtt, melyek egymást fölváltva üldöztek;
legföljebb, mint valami sejtelem, homályos emlék élt még bennem.
Amint tovább mentem, mindinkább kijózanodtam, nehéznek és
fáradtnak éreztem magam és csak ugy huztam a lábamat. A hó még
mindig nagy, nedves pelyhekben hullott. Végre kijutottam a
Grönlandra egészen a templomig, ahol leültem pihenni egy padra.
Mindenki, aki elment előttem, csodálkozva nézett rám. Gondolatokba
elmerülve maradtam ott.
Édes istenem, milyen szomoru állapotban is voltam! Belefáradtam
ebbe a nyomorult életbe, bensőleg undorodtam tőle és ugy éreztem,
nem érdemes tovább küzdeni azért, hogy megtarthassam. A
visszásságok tulságosan elhatalmasodtak, nagyon is keményekké
váltak; olyan rettenetesen tönkrementem, hogy csak árnyéka voltam
önmagamnak. Vállam beesett, féloldalra hajlott és már egészen
megszoktam, hogy előrehajolva járjak, ezzel kiméltem a mellem,
amennyire lehetett. Pár nappal ezelőtt déltájban megvizsgáltam a
testem fönt a szobámban és csak sirni tudtam fölötte, mig ott álltam.
Már néhány hete jártam ugyanabban az ingben; egészen
megkeményedett a régi izzadtságtól és nagyon földörzsölte a
köldökömet; egy kis vizes vér szivárgott ki a sebből, nem fájt, de
olyan szomoru volt ez a seb ott, a testem közepén. Nem tudtam
segiteni rajta, magától pedig nem akart begyógyulni; megmostam
hát és gondosan letörölgettem, aztán ujra fölhuztam ugyanazt az
inget. Mit tehettem volna egyebet…
Csak ültem a padon és mig mindezt végiggondoltam, nagyon
szomoru lettem. Sajnáltam magamat, még a kezem is
visszataszitónak látszott. A kezemfejének ez a löttyedt,
szemérmetlen kifejezése kinozni kezdett és szinte undorral töltött el;
sovány ujjaim durván hatottak rám, gyülölni kezdem összeesett
alakomat és összerázkódom, hogy ezt kell viselnem, hogy ez vesz
körül. Istenem, csak vége lenne már az egésznek! Egész lelkemből
meg szeretnék halni.
Teljesen letapodva, bepiszkolva és megalázva saját öntudatom
előtt, gépiesen álltam föl és hazafelé indultam. Utközben elmentem
egy kapu előtt, amelyen ezt olvastam: Halotti ruhák és szemfedők
Andersen kisasszonynál jobbra a kapu alatt. Régi emlékek!
gondoltam és visszaemlékeztem előbbi szobámra a Hammersbergen,
a kis hintaszékre, az ujságpapirral beragasztott falra az ajtó mellett,
a világitótorony igazgatójának a a körlevelére és Fabian Olsen pék
frissen sült kenyerére. Aj-haj, akkor még sokkal jobb dolgom volt,
mint most; egyetlen éjjel megirtam egy olyan tárcát, amiért tiz
koronát fizettek; most már nem tudok többé semmit sem irni,
egyáltalában nem tudok többé irni, a fejem azonnal teljesen üres
lesz, mihelyt megpróbálom. Legjobban szeretném, ha már az
egésznek vége volna! És csak mentem, mentem…
Minél közelebb jutottam az élelmiszerkereskedéshez, annál
jobban elfogott az az öntudatlan érzés, hogy valami veszélyhez
közeledem; de szilárdan ragaszkodtam ahhoz az elhatározásomhoz,
hogy ki fogom szolgáltatni magam. Nyugodtan fölmegyek a lépcsőn,
az ajtónál találkozom egy kis leánnyal, aki egy csészét visz a
kezében, elkerülök mellette és beteszem magam után az ajtót. A
segéd s én ujra szemben állunk egymással, egyedül.
– Na, – mondja, – ez aztán a rettenetes idő.
Mit kerülgeti a dolgot? Miért nem jön nekem egyenest? Dühös
lettem és fölkiáltottam:
– Nem azért jöttem, hogy az időről fecsegjek.
Hevességem meglepte, szük kis szatócsagya csődöt mondott;
eszébe sem jutott, hogy öt koronával megcsalhattam.
– Hát nem tudja, hogy rászedtem? – mondom türelmetlenül és
hevesen fujok, reszketek, kész vagyok erőszakot is használni, ha
nem tér azonnal át a dologra.
De a szegény ember semmit sem sejt.
Na, te nagy világ, micsoda ostoba lények közt kell élnie az
embernek! Összeszidom, pontról pontra megmagyarázom neki, hogy
történt az egész, megmutatom, hol állottam én s hol állott ő, mikor
az eset történt, hogy hol feküdt a pénz, hogyan szedtem össze az
egészet és hogy szoritottam bele a kezembe – mindent megért, de
semmit sem tesz. Ide-oda fordul, hallgatódzik a mellékszobából
hangzó lépésekre, csittit, hogy ne beszéljek olyan hangosan és végre
azt mondja:
– Ez igazán piszkos dolog volt öntől.
– Nem, várjunk csak egy kicsit! – kiáltottam, csakhogy
ellentmondjak és fölingereljem. Nem volt olyan alacsony és piszkos
eljárás, mint az ő nyavalyás élelmiszeres agya képzeli.
Természetesen nem tartottam meg a pénzt magamnak, ez eszembe
sem jutott; a magam részéről semmi hasznát sem akartam venni,
ezt nem engedte volna meg gyökeréig becsületes természetem…
– Hát akkor hova tette?
– Oda adtam egy szegény öreg asszonynak az utolsó öréig, tudja
meg! Mert én ilyen ember vagyok, sohasem feledkezem meg
teljesen a szegényekről…
Ezen egy darabig gondolkozik, ugy látszik, nagyon kétesnek
találja, hogy csakugyan becsületes ember vagyok-e vagy nem. Végre
azt mondja:
– Nem jobb lett volna inkább visszahozni a pénzt?
– No hallja, nem akartam én önnek bajt okozni, kiméletből nem
tettem, – felelek szemtelenül. – De ez a hála azért, hogy az ember
nagylelkü! Itt töltöm az időt, hogy önnek mindent megmagyarázzak
és ön nemhogy szégyelné magát, mint egy kutya, hanem még meg
sem próbálja ezt a vitás kérdést velem kiegyenliteni. De én mosom
kezemet. Különben vigye az ördög az egészet. Isten áldja!
Elmentem és keményen becsaptam az ajtót magam mögött.
De mikor hazaértem a szobámba, ebbe a szomoru lyukba, a vizes
hótól átnedvesedett ruhában, az egész napi vándorlástól reszkető
térdekkel, egyszerre elvesztettem elbizakodottságomat és megint
összeestem. Már megbántam, hogy a szegény kereskedősegédet ugy
megtámadtam; sirtam, a torkomat fojtogattam büntetésül
semmirekellő tréfámért és hangosan szidalmaztam magam.
Természetesen nagyon félt szegény, hogy elveszti az állását, azért
nem mert lármát ütni az öt korona miatt, amelyet az üzlet elvesztett.
Én pedig fölhasználtam a félelmét, jól megkinoztam kiabáló
hangommal, megsértettem minden szavammal, amit kimondtam. És
azalatt a főnöke talán a szomszéd szobában ült s csak egy hajszálon
mult, hogy ki nem jött megnézni, mi történik a boltban. Nem, annak
már igazán nincs határa, hogy milyen aljasságokra tudok vetemedni!
De hát miért nem fogtak el mindjárt? Akkor mindennek vége lett
volna legalább. Hiszen szinte kinyujtottam a kezemet a bilincsek
után. Nem állottam volna ellent, sőt inkább segitettem volna nekik.
Egek ura, egy egész napját életemnek odaadnám még egyetlen
boldog pillanatért! Fél életemet egy tál lencséért! Csak még most az
egyszer hallgass meg!…
Nedves ruháimban feküdtem le; valami bizonytalan gondolatom
jött, hogy talán meg fogok halni az éjjel; utolsó erőmet
összeszedtem tehát s egy kicsit rendbehoztam az ágyamat, hogy
valamennyire tisztességes látszata legyen reggel a környezetemnek.
Aztán összetettem a kezem és elhelyezkedtem a fekvésben.
Egyszerre Ylajali jutott eszembe. Hogy is felejthettem el olyan
teljesen az egész este! Uj világosság kelt az agyamban megint,
lassan, gyöngéden egy kis napsugár hatolt be, ami olyan áldottan
jólesett. És mindig növekszik a napfény, – meleg, finom, selymes
fény simogat kábitó kéjesen. És a napfény mindig erősebbé válik,
fájdalmasan kezdi égetni halántékomat, nehéz tüzzel forralja kiaszott
agyamat, mig végre őrületes máglya lobban föl szemem előtt
fénykévékből, ég és föld lángba borul, tüztől lobogó emberek és
állatok, tüzben lobogó hegyek, tüzet lobogtató ördögök, egy égő
orkán, égő mélység és magasság, egy égő világegyetem, egy
lángoló utolsó itélet.
És nem láttam s nem hallottam többé semmit…

Másnap reggel teljesen átizzadva ébredtem, egész testemről folyt


a viz; a láz kegyetlen erővel ragadott meg. Első pillanatban nem
tudtam, mi történt velem, csodálkozva néztem körül, teljesen
megváltozottnak éreztem egész lényemet, nem ismertem rá
magamra. Megtapogattam fölfelé a karomat, lefelé a lábamat, meg
voltam lepve, hogy az ablak azon az oldalon van és nem éppen az
ellenkező falon és a lovak dobogását az udvarból ugy hallottam,
mintha felülről jönne.
A hajam nedvesen és hidegen tapadt a halántékomra;
fölemelkedtem a félkönyökömre és lenéztem a párnára: ott is nedves
haj feküdt kis csomókban. A lábam egészen beledagadt az éj
folyamán a cipőmbe, de nem fájt, csak nem tudtam mozgatni az
ujjaimat.
Mikor délutánra fordult az idő és már kissé sötétedni kezdett,
fölkeltem az ágyból és a szobában motozgattam. Eleinte apró,
elővigyázatos lépésekkel próbálkoztam meg, igyekeztem az
egyensulyt fönntartani és amennyire lehet, kiméltem a lábamat. Nem
nagyon szenvedtem és nem is sirtam; tulajdonképpen nem is voltam
szomoru, sőt ellenkezőleg, majdnem boldogan megelégedett; nem is
jutott abban a percben eszembe, hogy valami másként is lehetne.
Azután kimentem az utcára.
Az egyetlen, ami mégis kinzott egy kicsit, az volt, hogy habár
utáltam az ételt, mégis éhes voltam. Szégyenletes éhséget kezdtem
érezni, valami benső, sóvár ennivágyást, ami mindig követelőbb és
követelőbb lett. Kegyetlenül kezdett valami marni a mellemben,
hangtalan és gyorsan, különös munka folyt le benne. Vagy husz
apró, finom kis állat hajtotta az egyik oldalra a fejét és kezdett
rágcsálni, azután a másik oldalra hajtották a fejüket és ott rágcsáltak
egy kicsit, egy pillanatig nyugton voltak, majd ujra kezdték;
hangtalanul, sietség nélkül furták tovább magukat és üres helyet
hagytak mindenütt maguk után, ahol keresztülmentek…
Nem voltam beteg, csak gyönge és izzadni kezdtem. A Stortorvra
szerettem volna menni, hogy egy kicsit pihenjek, de az ut hosszu
volt és fáradtságos; végre már csaknem eljutottam odáig, a piac és
az utca szegleténél álltam. Az izzadtság a szememre folyt,
elhomályositotta a szemüvegemet és egészen megvakitott;
megálltam, hogy kissé letöröljem az arcomat. Nem vettem észre,
hogy hol állok, nem is gondoltam rá; rettenetes lárma volt
körülöttem.
Egyszerre egy kiáltás hangzik, egy éles, hideg „vigyázat“ kiáltás
és én hallom a kiáltást, nagyon is jól hallom; idegesen huzódom félre
és olyan gyorsan igyekszem egy lépést visszafelé tenni, amennyire
gyönge lábam megengedi. Egy óriási kocsiszörnyeteg tele kenyérrel
megy el olyan közel mellettem, hogy kereke a kabátomat surolja; ha
csak egy kicsit fürgébb lettem volna, minden baj nélkül kikerülöm.
Talán lehettem volna valamivel fürgébb, csak egy egészen kicsikét
gyorsabb, ha jobban megerőltetem magam; de már minden késő
volt, az egyik lábam rosszul járt, néhány ujjamat összezuzta;
éreztem, hogy görcsösen zsugorodnak össze a cipőben.
A kocsis nagy erőfeszitéssel állitotta meg a lovakat, visszafordult
a szekérről és ijedten kérdezte, hogy mi történt. Ó, még sokkal
rosszabb is lehetett volna… nem hiszem, hogy veszedelmes lenne…
remélem, nem tört el… ó, kérem…
Amilyen gyorsan csak tudtam, egy padhoz sántikáltam; ez a sok
ember, aki körülfogott és rám bámult, zavarba hozott. Hiszen nem
volt halálos baleset, aránylag szerencsésen folyt le, ha már a bajnak
be kellett következnie. A legrosszabb az volt, hogy a cipőm
szétrepedt, a talpa elszakadt a hegyétől. Föltartottam a lábamat és
vért láttam a repedésben. Nos, egyik részről sem akarattal történt,
végre is nem volt a kocsis szándéka, hogy még rosszabbá tegye a
helyzetemet, mint amilyen; látszott, hogy nagyon megijedt. Ha
kértem volna egy kenyeret a kocsijáról, talán adott volna.
Bizonyosan szivesen adott volna. Isten fizesse meg a jószivüségét!
Kegyetlenül éheztem és nem tudtam, mit csináljak ezzel a
szemérmetlen étvággyal. Ide-oda forgolódtam a padon és mellemet
egészen a térdemre hajtottam. Mikor besötétedett, a városházához
sántikáltam – isten tudja, hogyan jutottam el odáig, – és a
balüsztrád szélére ültem. Kitéptem a kabátomból az egyik zsebet és
azt kezdtem el rágcsálni, különben minden föltett szándék nélkül,
sötét arccal, kimeredt szemmel, anélkül, hogy láttam volna.
Hallottam, hogy kis gyermekek szaladgálnak körülöttem és
ösztönszerüen megéreztem, ha egy-egy sétáló elment mellettem;
egyebet nem vettem észre.
Egyszerre csak eszembe jut, hogy lemegyek valamelyik bazárba
és egy darab nyers hust kérek. Fölállok, keresztül megyek a
balüsztrádon, egészen a Bazártetők szomszédságáig, itt lemegyek a
lépcsőn. Mikor már közel jutottam a mészárosbódékhoz,
visszakiáltottam a lépcső felé, mintha egy kutyát kergetnék föl és
merészen oda fordultam az első mészároshoz, aki elém akadt.
– Nem volna olyan szives egy darab csontot adni a kutyámnak? –
mondtam. – Csak egy csontot, nem baj, ha nem is lesz rajta semmi;
csak hogy legyen valami, amit a szájában vigyen.
Megkaptam a csontot, egy pompás kis csontot, amin még maradt
egy kis hus is és a kabátom alá dugtam. Olyan szivesen köszöntem
meg, hogy az ember rám bámult:
– Nincs mit, – mondta.
– Ne mondjon ilyet, – mormogtam, – mégis szivesség volt
magától.
És ujra fölmentem. A szivem erősen dobogott.
Beosontam egy mellékutcába, amilyen messzire csak lehetett és
megállottam egy hátulsó udvar rozoga kapuja előtt. Sehol sem volt
világitás, áldott sötétség terjengett körülöttem; és elkezdtem a
csontot rágni.
Semmi ize sem volt, csak az állott vér szaga szállt föl belőle és
csaknem azonnal émelyegni kezdett a gyomrom. Ujra
megpróbáltam; ha képes volnék magamban tartani, megtenné a
hatását, a fő dolog az volna, hogy odabent maradjon. De ujra hányni
kezdtem. Dühös lettem, beleharaptam a husba, letéptem egy
darabkát és erőszakkal lenyeltem. Semmit sem használt; mihelyt a
kis husdarabok megmelegedtek a gyomromban, azonnal följöttek.
Őrjöngve szoritottam össze az öklömet, elkezdtem
gyámoltalanságomban sirni és mint egy vadállat, rágtam tovább;
ugy sirtam, hogy a csont vizes és piszkos lett a könnyeimtől; ujra
hánytam, káromkodtam és rágtam, sirtam, hogy a szivem majd
megszakadt és ujra hánytam. Végre a világ valamennyi hatalmát
megátkoztam.
Csönd. Egyetlen ember sincs a közelben, nincs sem világosság,
sem hang. A legrettenetesebb lelki izgalomban nehezen és hangosan
lélegzem és fogcsikorgatva sirok, valahányszor ki kell adnom a kis
husdarabokat, amelyek valamennyire táplálhattak volna. Miután
hiába kisérlem meg ujra és ujra, tehetetlen dühömben a csontot a
kapuhoz vágom, őrjöngve kiabálok és kegyetlenül fenyegetődzöm az
ég felé, isten nevét orditom rekedten és csökönyösen és mint
karmokat, görbitem meg az ujjaimat… Azt mondom neked, egek
szent Baalja, hogy nem is létezel, de ha léteznél, ugy elátkoználak,
hogy az eged a pokol tüzétől égne el. Azt mondom, hogy
fölajánlottam neked szolgálatomat és te visszautasitottál, visszalöktél
magadtól s én mindörökre hátat forditok neked, mert nem tudtad
megválasztani az időt, mikor meglátogattál. Azt mondom neked,
hogy tudom, hogy meg kell halnom és mégis kigunyollak, te égi
Apis, akinek foga a halál. Zsarnokoskodtál velem és nem vetted
észre, hogy nem hajlok meg előtted soha a szerencsétlenségben.
Hogy nem látod ezt? Álmodban alkottad a lelkemet? Azt mondom
neked, hogy egész testem és minden vércsepp benne örvend, hogy
kigunyolhat és leköpheti kegyelmedet. Ettől a perctől fogva
megtagadom egész lényedet és minden tettedet, elátkozom
gondolataimat, ha még egyszer eszembe jutsz és kitépem
nyelvemet, ha még egyszer kimondja a neved. Most mondom neked,
ha létezel, az utolsó szót életemben és halálomban, bucsut veszek
tőled örökre. Most hát elhallgatok, hátat forditok és megyek a
magam utján…
Csend.
Reszketek az izgatottságtól és a gémberedettségtől, ugyanazon a
helyen állva, még mindig átkokat és szidalmakat sziszegek, föl-
fölzokogok a heves sirás után, összeesve és megtörve az őrületes
dühkitöréstől. És még akkor is csak könyvfrázis és litteratura volt,
amit legnagyobb nyomoruságomban megpróbáltam, csak szó és szó.
Vagy egy félóráig álltam ott szipogva és suttogva s erősen
belekapaszkodtam az ajtóba. Ekkor hangokat hallottam, két ember
beszédjét, akik az utcán fölfelé jöttek. Elosontam az ajtótól, a fal
mellé huzódva mentem tovább s ujra a kivilágitott utcákra jutottam.
És mig a Youngsbakkenen lefelé igyekszem, az agyam egyszerre a
legcsodálatosabb irányba kezd fordulni. Eszembe jut, hogy azok a
nyomoruságos bódék a piac szélén, ezek a faviskók, ahol élelmiszert
és ócska ruhákat árulnak, szégyenfoltjai a helynek. Tönkreteszik az
egész tér hatását, elundokitják a várost, pfuj, el ezekkel a
rongyokkal! És mig tovább megyek, gondolatomban költségvetést
csinálok, hogy mibe kerülne, ha a Földrajzi Intézetet, ezt a szép
épületet, mely mindig olyan nagy hatást tett rám, valahányszor
elmentem előtte, ide letolnák. Egy ilyen fajta továbbcsusztatás
alighanem belekerülne hetven, hetvenkétezer koronába – csinos
összeg, meg kell hagyni, helyes kis zsebpénz ugy kezdetnek,
hahaha! És integettem üres fejemmel és beismertem, hogy
kezdetnek elég megfelelő kis zsebpénz. Közben még mindig
reszketett az egész testem és néha mélyen föl-fölzokogtam a sirás
után.
Ugy éreztem, hogy már alig van élet bennem és hogy az utolsó
versemet éneklem. De ez meglehetősen közönyös volt most előttem,
legalább is egy csöppet sem foglalkoztam vele; sőt ellenkezőleg,
lefelé indultam, neki a városnak a kikötő felé, mindig messzebb és
messzebb a szobámtól. Akár az utca szélére feküdtem volna le
meghalni. A szenvedés mindig érzéketlenebbé tett; megsebesült
lábam erősen lüktetett és a fájdalom elterjedt az egész lábszáramba,
de még ezt sem éreztem valami nagyon, kiállottam én már
rosszabbat is.
Igy jutottam el a vasuti hidhoz. Nem volt közlekedés, semmi
lárma, csak itt-ott lehetett magányos embereket látni, egy favágót
vagy tengerészt, aki zsebre dugott kézzel őgyelgett. Különösen egy
sánta ember tünt föl, aki meredten rám kancsalitott, mikor egymás
mellett elmentünk. Ösztönszerüen megállitottam, megérintettem a
kalapom és azt kérdeztem tőle, nem tudja-e, hogy az „Apáca“
elhajózott-e már? De nem tudtam ellentállni a vágynak, hogy az
ujjammal éppen az ember orra alatt ne csettintsek egyet, mikor azt
mondtam: – Ördög és pokol, igen, az „Apáca“! – Az „Apáca“! hiszen
egészen meg is feledkeztem róla! Legbensőbb gondolatomban
mindenesetre ott szunnyadt öntudatlanul, bizonyosan magamban
hordoztam, anélkül, hogy tutam volna róla.
– Hát bizony az „Apáca“ már elvitorlázott.
– Nem tudná megmondani, hogy hová ment?
Az ember elgondolkozik, a hosszabbik lábára áll, a rövidebb a
levegőben van, még lógázódik is egy kicsit.
– Nem, – feleli. – Nem tudja, mivel rakodott itt meg?
– Nem, – mondom én.
De ekkor már el is felejtettem az „Apácá“-t megint és azt
kérdeztem az embertől, hogy milyen messzire lehet ide Holmestrand,
régi, jó földrajzi mérföldben számitva.
– Holmestrand? Mindjárt csak…
– Vagy Veblungsnaes?
– Azt akartam az elébb mondani, ugy számitom, hogy
Holmestrand…
– Ó, hallja csak, hogy el ne felejtsem, – szakitom félbe megint, –
nem lenne olyan szives egy kis dohányt adni, csak egy kis csipetnyit!
Megkaptam a dohányt, melegen megköszöntem az embernek és
tovább mentem. Semmi szükségem sem volt a dohányra és mindjárt
a zsebembe is dugtam. Az ember tovább is rám meresztette a
szemét, ugy látszott, valami módon gyanut fogott ellenem; ahol
álltam és mentem, mindenütt követett gyanakvó tekintete és én nem
akartam türni, hogy ez az ember üldözzön. Visszafordulok,
odavonszolom magam megint hozzá és azt mondom:
– Tűcsináló.
Csak ezt az egy szót: tűcsináló. Semmit többet. Erősen ránézek,
mig ezt mondom, ugy éreztem, hogy rettenetes tekintetet vetek rá,
mintha egy másik világból nézném. Egy ideig állva maradok előtte,
miután ezt a szót kimondtam, azután ujra elvonszolom magam a
pályaudvar-térre. Az ember egy hangot sem szólt, csak tekintetét
nem vette le rólam.
Tűcsináló? Egyszerre megállottam. Hiszen akkor már sejtettem az
előbb, hogy már találkoztam valahol ezzel a nyomorékkal. Fönt a
vámháznál, egy napos reggelen, mikor zálogba tettem a
mellényemet. Mintha egy örökkévalóság mult volna el azóta!
Mig ott állok és ezen gondolkozom, – álltomban neki
támaszkodva egy házfalnak a tér és a kikötőut szegletén, –
egyszerre összerázkódom és megpróbálok elrejtőzni. De mivel ez
nem sikerül, merészen magam elé nézek, megfojtom minden
szégyenlősségemet, – nem volt más menekvés, – és szemtől
szemben állok a „Generális“-sal.
Tapintatlan merészséggel még egy lépést teszek a házfaltól előre,
hogy fölhivjam a figyelmét. És mindezt nem azért, hogy a szánalmát
fölkeltsem, hanem hogy önmagam kigunyoljam, pellengérre állitsam;
fetrengeni tudtam volna az utcán és kérni szerettem volna a
„Generális“-t, hogy gázoljon át rajtam, taposson az arcomba. Még
csak nem is köszöntem.
A „Generális“, ugy látszik, megsejtette, hogy valami nincs
rendben s meglassitotta a lépéseit, én pedig megszólaltam, hogy
megállitsam.
– Már föl akartam önt keresni, hogy elvigyek egy cikket, de még
nem sikerült megirnom.
– Igen? – kérdezte. – Tehát még nincs készen vele?
– Nem, eddig még nem készültem el.
De már könnyek tolulnak a szemembe a „Generális“ szives
szavaira és keservesen köhögök és reszelem a torkomat, hogy
megerősitsem magam. A „Generális“ egyet szuszog az orrán át és
rám néz:
– Van addig is miből élnie? – kérdi.
– Nincs, – felelem, – egyáltalában nincs. Ma még semmit sem
ettem, de…
– Isten ments! Az még sem járja, hogy ilyen halálra éhezve
jöjjön-menjen. – És ugyanakkor a zsebébe nyul.
A szégyen fölébred bennem, ujra visszahuzódom a házfalhoz,
nekitámaszkodom és látom, hogy a „Generális“ a tárcájában
keresgél; de egy szót sem szólok. És akkor átnyujt egy tizkoronást.
Minden további nélkül ide ad tiz koronát. Csak ujra elismétli, hogy
nem járja igy halálra éheztetni magam.
Valami ellenvetést dadogtam és nem vettem el azonnal a
bankjegyet: – mégis szégyen, hogy én… különben is ez nagyon
sok…
– Siessen! – mondja az óráját kihuzva. – A vonatra várok és már
hallom, hogy jön is.
Elvettem a pénzt, meg voltam bénulva az örömtől, egy szót sem
szóltam, még csak meg sem köszöntem.
– Igazán nem érdemes ezért restelkedni, – mondja a „Generális“
még utoljára; – majd irni fog érte valamit.
Ezzel el is ment.
Mikor már néhány lépésnyire volt, egyszerre eszembe jutott,
hogy meg sem köszöntem a segitségét. Megpróbáltam utólérni, de
nem tudtam elég gyorsan menni, a lábam összecsuklott és csaknem
az orromra buktam. A „Generális“ pedig mindjobban eltávolodott.
Már nem is igyekeztem elérni, arra gondoltam, hogy utána kiáltok,
de nem birtam és mire annyira összeszedtem magam, hogy egyszer-
kétszer kiáltani tudtam, akkor már tulságosan messze volt és az én
hangom nagyon gyönge, hogy elérje.
Ott állottam a járda szélén, utána néztem és halkan sirtam
magamban. Ilyet még sohasem láttam, – gondoltam, – tiz koronát
adott! Visszamentem arra a helyre, ahol állott és minden mozdulatát
utánoztam. Fölemeltem a tizkoronást nedves szemem elé,
megnéztem mind a két oldalát és elkezdtem káromkodni –
káromkodva bizonykodtam, hogy semmi kétség, az, amit a
kezemben tartok, tizkoronás bankó!
Nemsokára azután, – vagy talán jó sokára, mert már mindenütt
teljes csönd volt, – magam sem tudom, hogyan, a Tomtegate 11.
száma előtt állottam. Hiszen itt csaltam meg egy kocsist egyszer,
akivel jó sokáig kocsiztam, itt mentem át az egész házon, anélkül,
hogy valaki észrevette volna. Miután egy ideig ott állottam, hogy
összeszedjem magam és magamhoz térjek a csodálkozástól,
másodszor is bementem a kapun, egyenesen oda, ahol szállás és
étkezés volt utazók részére. Szállást kértem és azonnal ágyba
feküdtem.

Kedd.
Napsütés és csönd, csodálatosan tiszta délelőtt. A hó teljesen
elolvadt; mindenütt élet és fény és vidám arcok, mosolygás és
nevetés. A szökőkutakból magas ivben szálltak föl a vizsugarak a
naptól aranyosan és az ég kékjétől kékesen…
Délfelé kimentem lakásomról a városba; azóta a Tomtegaten
laktam s jó dolgom volt, hála a „Generális“ tiz koronájának. A
legvidámabb hangulatban járkáltam egész délután a
legmozgalmasabb utcákon s az embereket nézegettem. Este hét óra
előtt még elsétáltam a Szent Olaf-térre és titokban fölnézegettem a
második szám ablakaira. Egy óra mulva látni fogom! Az egész idő
alatt valami könnyü, boldog aggodalommal járkáltam. Hogyan is lesz
csak? Mit fogok mondani, mikor a lépcsőn lefelé jön? Jó estét,
kisasszony? Vagy csak mosolyogjak? Elhatároztam, hogy csak a
mosolygásnál maradok. De természetesen mélyen meg fogom
hajtani magam.
Azután tovább osontam, kissé szégyenkezve, hogy olyan korán
megjelentem; a Karl Johan-utcában járkáltam egy darabig és
folytonosan az egyetem óráját figyeltem. Pont nyolc órakor ujra
fölmentem az Egyetem-utcán. Közben eszembe jutott, hogy talán
pár perccel el is késem és amennyire csak birtam, sietni kezdtem. A
lábam még mindig sebes volt, de különben nem volt semmi bajom.
A szökőkuthoz állottam és kifujtam magam; elég sokáig vártam
már és néztem a 2. szám ablakait, de ő nem jött. Nos, hát várni
fogok tovább is, nem volt semmi sietős utam, talán föltartóztatta
valami. És megint vártam. Csak nem álmodtam talán az egészet?
Csak nem annak az éjszakának a képzelődése volt az egész első
találkozás, amikor lázban feküdtem? Gyámoltalanul gondolkozni
kezdek a dolgon és egyáltalában nem vagyok vele tisztában.
– Hm! – hallom magam mögött.
Jól hallom a torokköszörülést, hallom a könnyü lépteket is a
közelemben, de nem fordulok vissza, hanem tovább bámulok a
széles lépcsőre magam előtt.
– Jó estét, – mondja ekkor.
Elfelejtek mosolyogni, még a kalapom sem veszem le azonnal,
annyira meglep, hogy a másik oldalról jött.
– Sokáig várt? – kérdi s kissé gyorsan lélegzik a járás után.
– Egyáltalában nem, csak néhány perccel ezelőtt érkeztem, –
felelek. – Különben, ha még soká vártam volna is!? De azt hittem,
hogy a másik oldalról fog jönni.
– Mamát kisértem el egy ismerős családhoz; mama nem lesz
otthon ma este.
– Vagy ugy? – mondom.
Elkezdünk menni. Egy rendőr áll az utca szögletén és ránk néz.
– De hova megyünk tulajdonképpen? – mondja és megáll.
– Ahova akar, oda, ahova maga akarja.
– Juj, de olyan unalmas ezt magamnak kitalálni.
Hallgatás.
És akkor igy szólok, csak hogy mondjak valamit:
– Ugy látom, hogy maguknál sötétek az ablakok.
– Igen, – felel élénken. – A leány is elment. Egészen egyedül
volnék otthon.
Mind a ketten ott állunk és ugy nézünk föl a második szám
ablakaira, mintha egyikünk sem látta volna még soha.
– Nem mehetnénk föl magukhoz? – mondom végre. – Ha akarja,
el sem mozdulok az ajtó mellől egész idő alatt…
Szinte reszketni kezdtem az izgatottságtól és kétségbe voltam
esve a saját tolakodásom fölött. Hátha most megharagszik és
azonnal itt hagy? Mi lesz belőlem, ha soha többé nem fogom látni?
És ez a nyomorult öltözet, ami rajtam van! Elkeseredve várom a
feleletét.
– Egyáltalában nem szükséges, hogy az ajtó mellett üljön, – felel.
Fölmentünk.
Kint a folyosón már sötét volt; megfogta a kezemet és ugy
vezetett előre. – Nem szükséges hallgatni, – mondta, – egészen
bátran beszélhet. – És bementünk. Mig gyertyát gyujtott – nem
lámpát, hanem csak gyertyát, – mialatt ezt a gyertyát meggyujtotta,
halkan nevetve mondta:
– De most már nem szabad rám néznie. Huh, ugy szégyenlem
magam! De soha többé nem teszem.
– Mit nem tesz soha többé?
– Soha többé… Isten ments… soha többé nem csókolom meg.
– Nem teszi többé? – mondtam és mind a ketten nevetni
kezdtünk. Kinyujtottam a karomat utána, de ő oldalra siklott, az
asztal másik végére; egy kis ideig egymást néztük, a gyertya ott
állott közöttünk.
Elkezdte lebontani a fátyolát és levette a kalapját: ezalatt
tréfásan villámló tekintete rajtam függött és minden mozdulatomat
figyelte, hogy meg ne foghassam. Ujra megpróbáltam egy
kirohanást, megbotlottam a szőnyegben és elestem; fájós lábam
nem birt tovább fönntartani. Nagyon leverten állottam föl.
– Istenem, milyen vörös lett! – mondta. – De mennyire ügyetlen
is volt!
– Igaza van.
És megint elkezdtünk körbe futni.
– Ugy látom, hogy sántit.
– Igen, sántitok egy kicsit, de csak egy kicsit.
– A multkor az ujja fájt, most meg a lábának van valami baja;
mégis borzasztó, mennyi minden éri.
– Igen, pár nappal ezelőtt elgázolt egy kicsit egy szekér.
– Elgázolta? Hát megint ivott? Isten ments, milyen életet él
maga, fiatalember! – Megfenyegetett a mutatóujjával és igyekezett
komoly lenni. – Üljünk le, – mondta. – Nem, nem oda az ajtó mellé;
ne legyen olyan félénk; ide, ni; maga oda, én ide, igy… Juj, olyan
unalmasak a tartózkodó emberek! Az embernek mindent magának
kell megmondani és megtenni, semmi segitséget nem várhat tőlük.
Például most szépen rátehetné a kezét a székem támlájára és ezt
magától is kitalálhatta volna, ki bizony. Mert ha én mondok valami
ilyet, egyszerre olyan szemmel néz rám, mintha nem hinné, hogy
igaz; már többször észrevettem, most is ugy tesz. De csak ne akarja
elhitetni velem, hogy ilyen szerény akkor is, ha nem akar… Bezzeg
elég merész volt akkor nap, mikor részegen jött utánam egész
hazáig és a szellemességével üldözött: Kisasszony, elveszti a
könyvét, kisasszony, mindjárt elveszti a könyvét! Hahaha! Pfuj, ez
igazán illetlen volt!
Mintha eszemet vesztettem volna, ugy ültem ott és csak néztem
rá. A szivem hangosan dobogott, a vér melegen zugott ereimben.
Milyen csodálatos érzés megint egy emberi lakásban ülni, hallani,
hogy ketyeg az óra és egy eleven fiatal leánnyal beszélni, ahelyett,
hogy saját magammal vitázzam.
– Miért nem beszél semmit?
– Milyen bájos maga, – szóltam végre. – Itt ülök és érzem, hogy
hatalmában vagyok, egészen a hatalmában teljes lelkemmel. Ez ellen
nem lehet semmit sem tenni. Maga a legcsodálatosabb lény, aki…
Néha ugy sugárzik a szeme, amilyet még sohasem láttam, olyan,
mintha virág volna… Hogyan? Nem, nem – talán nem is virág,
hanem inkább… Olyan szerelmes vagyok és tudom, hogy egészen
hiába. Hogy hivják, mondja? Most már igazán meg kell mondania,
hogy hivják…
– Nem, előbb hogy hivják magát? Istenem, ezt majdnem
elfelejtettem! Tegnap egész nap arra gondoltam, hogy meg fogom
kérdezni. Vagyis tulajdonképpen nem is egész nap, hiszen csak nem
gondoltam egész nap magára!
– Tudja, hogy én hogyan neveztem el magát? Ylajalinak. Hogy
tetszik ez a név? Olyan lebegően hangzik…
– Ylajali?
– Igen.
– Valami idegen nyelven van?
– Nem, azt nem mondhatnám.
– Egészen csinos.
Hosszu alkudozások után megmondtuk egymásnak a nevünket.
Egészen mellém ült a pamlagra és lábával eltaszitotta a széket
magától. Azután ujra elkezdtünk beszélgetni.
– Ma este meg is borotválkozott, – mondta. – Egészben véve egy
kicsit csinosabb ma, mint a multkor, de csak egy kicsikét, hogy el ne
bizza magát… Na, mert a multkor igazán csuful jelent meg; még
hozzá egy rongy is volt az ujja körül csavarva. És ilyen állapotban
minden áron be akart valahová menni velem egy pohár borra. Nem,
köszönöm.
– Hát a nyomorult külsőm volt az oka, hogy nem akart velem
jönni? – mondtam.
– Nem, – felelt és lesütötte a szemét. – Isten a tanum, hogy
nem! Erre nem is gondoltam.
– Hallgasson meg, – szóltam; – maga bizonyosan abban a hitben
él, hogy én éppen ugy élhetek és öltözködhetem, mint ahogy
szeretnék. Pedig ezt nem tehetem, mert nagyon, nagyon szegény
vagyok.
Rám nézett.
– Igazán szegény? – kérdte.
– Igazán.
Hallgatás.
– Istenem, hiszen én is szegény vagyok, – mondta fejének egy
bátor mozdulatával.
Minden szava ittassá tett, mintha bort csepegtetett volna a
lelkembe, pedig aligha volt más, mint egy mindennapi krisztiániai
leány, azoknak a szokott zsargonjával, apró merészségeivel és
fecsegésével. Egészen elbájolt a mozdulataival, ahogy a fejét oldalt
hajtotta, mikor valamire hallgatott, amit mondtam. Éreztem a
lehelletét, amint az arcomba áramlott.
– Tudja, hogy, – kezdtem el, – hogy… de nem szabad
megharagudnia… mikor tegnap este lefeküdtem, a karomat ugy
helyeztem el, mintha maga… mintha… ott feküdt volna benne. És igy
aludtam el.
– Igazán? Ez már szép volt! – Csönd. – De csak a távolság volt az
oka, hogy meg merte tenni; mert különben…
– Nem hiszi, hogy különben is meg merném tenni?
– Nem, nem hiszem.
– Pedig mindenre el lehet készülve, – mondtam merészen és
körülfontam derekát a karommal.
– Igazán? – Csak ennyit kérdett.
Bosszantott és levert, hogy annyira tisztességesnek tart;
összeszedtem a bátorságom, megerősitettem a szivemet és
megfogtam a kezét. De szó nélkül elvonta tőlem és egy kissé
távolabb huzódott. Ez megint elvette minden bátorságomat,
elszégyeltem magam és az ablak felé néztem. Nagyon is
nyomoruságos alak lehettem, amint itt ültem, igazán nem volt jogom
képzelődőnek lenni. Minden más volna, ha akkor találkoztam volna
vele, amikor még emberi formám volt, a jólétem napjaiban, mikor
még volt valami, amire támaszkodhattam.
– No lássa! – mondta, – most láthatja, hogy igazam volt: egy
homlokráncolással el lehet kergetni, csak egy kicsit el kell huzódni,
hogy mindjárt megszégyelje magát… – Nevetett és erősen
beszoritotta a szemét, mintha nem tudná elviselni, hogy most
ránézzek.
– A mindenhatóra! – törtem ki, – hát majd meglátja! – És
hevesen körülöleltem a vállát mind a két karommal. Elvesztette az
eszét ez a lány! Vagy annyira tapasztalatlannak tart! Hah, majd
megmutatom… az élő istenre! Senki se mondhassa rólam, hogy nem
tudtam megfelelni… Az ördög bujt ebbe a leányba! Ha csak erről van
szó…
Mintha már semmire a világon nem volnék való!
Egészen nyugodtan ült ott és a szeme még mindig le volt csukva;
egyikünk sem beszélt. Erősen magamhoz szoritottam, testét a
mellemhez nyomtam és még mindig nem szólt egy szót sem.
Hallottam a szivünk verését, mindkettőnkét egyszerre, mint távoli
lódobogást.
Megcsókoltam.
Nem voltam teljes öntudatomnál; valami bolondot mondtam,
amin halkan nevetett, becéző neveket suttogtam a szájába,
megsimogattam az arcát és sokszor megcsókoltam. Fölnyitottam
egynéhány gombot a ruháján és a melle, két fehér kerek melle, mint
édes, csodálatos igéret, világitott elém a vászon közül.
– Engedje, hogy megnézzem, – mondom és megpróbálok még
több gombot fölnyitni, hogy a nyilást nagyobbá tegyem; de a
mozdulataim ügyetlenek, az utolsó gomboknál, ahol a ruhaderék
nagyon feszes, nem jutok tovább. Csak egy kicsit… egy kicsit
szeretném látni…
Egyik karját a nyakam köré fonja, lassan, gyöngéden; lehellete
egyenesen arcomat éri pirosló, reszkető orrlyukaiból; a másik
kezével maga kezdi fölnyitni a ruháját, egyik gombot a másik után.
Zavarában halkan, röviden fölnevet és többször rám néz, hogy
észreveszem-e, mennyire fél. Fölnyitja a derékszalagot, kikapcsolja a
füzőjét, boldog és remeg egyszerre. És én durva kezemmel szintén a
gombokkal és szalagokkal bibelődöm…
Hogy elvonja figyelmemet arról, amit csinál, bal kezével elkezdi a
vállamat simogatni és azt mondja:
– Mennyi kihullott haj van itt!
– Igen, – felelem és megpróbálom ajkamat a mellére nyomni.
Ebben a pillanatban nyitott ruhával fekszik előttem. Egyszerre,
mintha meggondolná, mintha most venné észre, hogy nagyon
messze ment, félig betakarja magát és kissé fölemelkedik. És hogy
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookfinal.com

You might also like