This is poke.info, produced by makeinfo version 7.1 from poke.texi.

This manual describes GNU poke (version 4.2, 30 June 2024).

   Copyright © 2019, 2020, 2021, 2022, 2023, 2024 The poke authors.

     You can redistribute it and/or modify this manual under the terms
     of the GNU General Public License as published by the Free Software
     Foundation, either version 3 of the License, or (at your option)
     any later version.
INFO-DIR-SECTION GNU poke
START-INFO-DIR-ENTRY
* poke: (poke). Interactive editor for binary files.
END-INFO-DIR-ENTRY


Indirect:
poke.info-1: 558
poke.info-2: 301541
poke.info-3: 600702

Tag Table:
(Indirect)
Node: Top558
Node: Introduction9970
Node: Motivation10273
Node: Decode-Compute-Encode11051
Node: Describe-Compute14304
Node: Nomenclature16363
Node: Invoking poke17850
Node: Commanding poke20154
Node: The REPL20740
Node: Evaluation22124
Node: Commands and Dot-Commands23341
Node: Command Files26794
Node: Scripts28146
Node: Setting Up29123
Node: Setting up Hyperlinks29378
Node: Simple Init File32394
Node: Basic Editing34415
Node: Binary Files35730
Node: Files as IO Spaces38212
Node: Dumping File Contents42681
Ref: Dumping File Contents-Footnote-150562
Ref: Dumping File Contents-Footnote-250816
Node: Poking Bytes51034
Node: Values and Variables55437
Node: From Bytes to Integers58107
Ref: From Bytes to Integers-Footnote-163913
Node: Big and Little Endians64154
Ref: Big and Little Endians-Footnote-170501
Node: Negative Integers70560
Node: Weird Integers74152
Node: Unaligned Integers83133
Node: Integers of Different Sizes87537
Node: Offsets and Sizes88097
Ref: Offsets and Sizes-Footnote-194942
Ref: Offsets and Sizes-Footnote-295055
Node: Buffers as IO Spaces95093
Node: Copying Bytes97340
Node: Saving Buffers in Files99707
Node: Character Sets100986
Node: From Bytes to Characters103394
Node: ASCII Strings106556
Node: From Strings to Characters111563
Node: Strings are not Arrays112354
Node: Structuring Data113631
Node: The SBM Format114849
Node: Poking a SBM Image118883
Node: Modifying SBM Images132134
Ref: Modifying SBM Images-Footnote-1146999
Node: Defining Types147037
Node: Pickles150508
Node: Poking Structs160955
Node: How Structs are Built164364
Node: Variables in Structs167633
Node: Functions in Structs169899
Node: Struct Methods172481
Node: Padding and Alignment180810
Node: Esoteric and exoteric padding181875
Node: Reserved fields182630
Node: Payloads186095
Node: Aligning struct fields190558
Node: Padding array elements192291
Node: Dealing with Alternatives195251
Ref: Dealing with Alternatives-Footnote-1201171
Node: Structured Integers201209
Node: Working with Incorrect Data206614
Node: Maps and Map-files210313
Node: Editing using Variables211231
Node: poke Maps215709
Node: Loading Maps219267
Node: Multiple Maps223886
Node: Auto-map226350
Node: Constructing Maps227530
Node: Predefined Maps229131
Node: Writing Pickles229433
Node: Pretty-printers230724
Node: Setters and Getters236203
Node: Writing Binary Utilities238787
Node: Poke Scripts239735
Node: Command-Line Arguments241534
Node: Exiting from Scripts242753
Node: Loading pickles as Modules243741
Node: elfextractor245402
Node: Filters252579
Node: Stream IO Spaces253503
Node: Reading from Streams255423
Node: Writing to Streams256975
Node: pk-strings257863
Node: pokerc258532
Ref: pokerc-Footnote-1259654
Node: Load Path259740
Node: Styling260982
Node: Changing the Prompt261101
Node: IOS262187
Node: ios_dump_bytes262580
Node: ios_copy_bytes264661
Node: ios_save_bytes265527
Node: Data Encodings266316
Node: base64266624
Ref: base64-Footnote-1266974
Node: Time267028
Node: POSIX Time267274
Node: Colors267743
Node: The Color Registry268105
Node: RGB24 Encoding270020
Node: Audio270985
Node: MP3271125
Node: ID3V1 Tags271238
Node: Object Formats274014
Node: ELF274383
Node: Dwarf274659
Node: Programs274753
Node: argp275020
Node: poked278357
Node: pokefmt282152
Node: Programming Emacs Modes284175
Node: poke-mode284683
Node: poke-map-mode285264
Node: poke-ras-mode285532
Node: Vim Syntax Highlighting285886
Node: poke.vim286345
Node: Dot-Commands286877
Node: load command287971
Node: source command288665
Node: file command288993
Node: mem command290441
Node: mmap command291011
Node: nbd command294458
Node: proc command295374
Node: sub command295748
Node: ios command296156
Node: close command296671
Node: doc command297139
Node: editor command298200
Node: info command298782
Node: set command301541
Node: vm command307691
Node: .vm disassemble308212
Node: .vm profile308923
Node: .vm dispatch309449
Node: compiler command310067
Node: .compiler ast310450
Node: exit command310775
Node: quit command311110
Node: Commands311305
Node: dump311707
Node: Information dump shows313630
Node: Presentation options for dump317562
Node: copy319794
Node: save320738
Node: sdiff322125
Node: extract322886
Node: scrabble323529
Node: The Poke Language324952
Node: Source Code Encoding326288
Node: Integers326762
Node: Integer Literals327940
Ref: Integer Literals-Footnote-1331162
Node: Characters331307
Node: Booleans332077
Node: Integer Types332380
Node: Casting Integers334069
Node: Relational Operators335665
Node: Arithmetic Operators336342
Node: Bitwise Operators337486
Node: Boolean Operators338759
Node: Integer Attributes339253
Node: Offsets340000
Node: Offset Literals340504
Node: Offset Units341442
Node: Offset Types344280
Node: Casting Offsets345784
Node: Offset Operations346405
Node: Offset Attributes348959
Node: Strings350206
Node: String Literals350939
Node: String Types351866
Node: String Indexing352062
Node: String Concatenation353219
Node: String Attributes354463
Node: String Formatting355168
Node: Arrays355799
Node: Array Literals356564
Node: Array Types358186
Node: Casting Arrays362928
Node: Array Constructors364652
Node: Array Comparison366326
Node: Array Indexing366740
Node: Array Trimming368264
Node: Array Elements369943
Node: Array Concatenation370453
Node: Array Attributes370921
Node: Arrays as Stacks372650
Node: Structs373613
Node: Struct Types375053
Node: Struct Constructors376138
Node: Struct Comparison378204
Node: Field Endianness378635
Node: Accessing Fields380238
Node: Field Constraints380768
Node: Field Initializers382330
Node: Field Labels385809
Node: Pinned Structs388875
Node: The OFFSET variable389658
Node: Integral Structs390616
Node: Unions400532
Node: Union Constructors401664
Node: Integral Unions403164
Node: Optional Fields404344
Node: Casting Structs407309
Node: Declarations in Structs408922
Node: Methods409390
Node: Struct Pretty Printers410137
Node: Computed Fields411718
Node: Struct Attributes413896
Node: Types416167
Node: type416457
Node: The any Type417238
Node: The isa Operator418187
Node: typeof418572
Node: Assignments423610
Node: Simple Assignments423899
Node: Bit Assignments424691
Node: Compound Statements425758
Node: Conditionals426369
Node: if-else426741
Node: Conditional Expression427225
Node: Loops427654
Node: while428040
Node: for428751
Node: for-in429144
Node: Expression Statements430111
Node: Functions430675
Node: Function Declarations431277
Node: Optional Arguments432633
Node: Variadic Functions433415
Node: Calling Functions433814
Node: Function Types435141
Node: Lambdas435955
Node: Function Comparison436586
Node: Function Attributes437121
Node: Assembler437387
Node: Endianness439356
Node: set endian440008
Node: Endian in Fields440903
Node: Endian built-ins441171
Node: Mapping445570
Node: IO Spaces446412
Node: open447573
Node: opensub449678
Node: openproc450738
Node: close451178
Node: flush451745
Node: get_ios452432
Node: set_ios452897
Node: iosearch453471
Node: iolist453891
Node: openset454343
Node: iosize454955
Node: iohandler455348
Node: ioflags455744
Node: IO Space Hooks456174
Node: The Map Operator457379
Node: Mapping Simple Types460595
Node: Mapping Structs461037
Node: Mapping Arrays461502
Node: Array maps bounded by number of elements461940
Node: Array maps bounded by size463340
Node: Unbounded array maps466793
Node: Mapped bounds in bounded arrays468279
Node: Mapping Functions469832
Node: Non-strict Mapping470551
Node: Auto-Remapping471340
Node: Unmapping472772
Node: Exception Handling473317
Node: Exceptions473917
Node: try-catch476778
Node: try-until477793
Node: raise478681
Node: exception-predicate479249
Node: assert480949
Node: Terminal481635
Node: Terminal Colors482164
Node: Terminal Styling483368
Node: Terminal Hyperlinks484572
Node: Printing485166
Node: print485474
Node: printf485962
Node: Comments491100
Node: Multi-line comments491492
Node: Single line comments491782
Node: Vertical separator492146
Node: Modules492482
Node: System494204
Node: getenv494517
Node: rand494873
Node: VM495418
Node: vm_obase496569
Node: vm_set_obase496842
Node: vm_opprint497376
Node: vm_set_opprint497720
Node: vm_oacutoff498110
Node: vm_set_oacutoff498452
Node: vm_odepth498888
Node: vm_set_odepth499223
Node: vm_oindent499688
Node: vm_set_oindent499987
Node: vm_omaps500579
Node: vm_set_omaps500911
Node: vm_omode501244
Node: vm_set_omode501652
Node: vm_autoremap502047
Node: vm_set_autoremap502392
Node: Debugging502713
Node: __LINE__ and __FILE__503007
Node: strace503641
Node: rtrace503973
Node: The Standard Library504229
Node: Standard Integral Types505377
Node: Standard Offset Types506120
Node: Standard Units506477
Node: Conversion Functions507182
Node: catos507827
Node: stoca508483
Node: strtoi509326
Node: atoi510551
Node: ltos511180
Node: stof511610
Node: stod511934
Node: Array Functions512245
Node: reverse512556
Node: String Functions512805
Node: ltrim513372
Node: rtrim513720
Node: strchr514084
Node: strrchr514515
Node: strstr514928
Node: strtok515405
Node: Character Functions518517
Node: isdigit518911
Node: isxdigit519210
Node: Values Functions519515
Node: eoffset519835
Node: IO Space Functions520260
Node: with_cur_ios520567
Node: with_temp_ios521383
Node: Sorting Functions522794
Node: qsort523016
Node: CRC Functions523975
Node: Dates and Times524636
Node: Offset Functions526365
Node: alignto526603
Node: Other Functions526906
Node: Version Tools527259
Node: The Poke Virtual Machine531018
Node: PVM Instructions531257
Node: VM instructions532351
Node: Instruction canary533079
Node: Instruction exit533484
Node: Instruction pushend533834
Node: Instruction popend534170
Node: Instruction pushob534563
Node: Instruction popob534961
Node: Instruction pushom535451
Node: Instruction popom535869
Node: Instruction pushoo536382
Node: Instruction popoo536774
Node: Instruction pushoi537203
Node: Instruction popoi537690
Node: Instruction pushod538190
Node: Instruction popod538543
Node: Instruction pushoac538917
Node: Instruction popoac539334
Node: Instruction pushopp539756
Node: Instruction popopp540131
Node: Instruction pushoc540537
Node: Instruction popoc540851
Node: Instruction pushobc541186
Node: Instruction popobc541515
Node: Instruction sync541863
Node: Instruction pusharem542341
Node: Instruction poparem542701
Node: IOS related instructions543061
Node: Instruction open543551
Node: Instruction close544519
Node: Instruction flush545031
Node: Instruction pushios545586
Node: Instruction popios545973
Node: Instruction ioflags546411
Node: Instruction iosize546917
Node: Instruction ionum547398
Node: Instruction ioref547683
Node: Instruction iohandler548147
Node: Instruction iogetb548641
Node: Instruction iosetb549256
Node: Function management instructions549846
Node: Instruction call550153
Node: Instruction prolog550580
Node: Instruction return551000
Node: Environment instructions551294
Node: Instruction pushf551695
Node: Instruction popf552100
Node: Instruction pushvar552356
Node: Instruction pushtopvar552788
Node: Instruction popvar553319
Node: Instruction regvar553734
Node: Instruction duc554081
Node: Instruction pec554382
Node: Printing Instructions554664
Node: Instruction printi555308
Node: Instruction printiu555626
Node: Instruction printl555978
Node: Instruction printlu556315
Node: Instruction prints556665
Node: Instruction beghl556948
Node: Instruction endhl557243
Node: Instruction begsc557664
Node: Instruction endsc558073
Node: Format Instructions558545
Node: Instruction formati559148
Node: Instruction formatiu559483
Node: Instruction formatl559853
Node: Instruction formatlu560208
Node: Instruction formatf32560578
Node: Instruction formatf64561673
Node: Floating-point conversion instructions562796
Node: Instruction stof563103
Node: Instruction stod563574
Node: Main stack manipulation instructions564047
Node: Instruction push564706
Node: Instruction drop564984
Node: Instruction drop2565289
Node: Instruction drop3565609
Node: Instruction drop4565936
Node: Instruction swap566260
Node: Instruction nip566558
Node: Instruction nip2566856
Node: Instruction nip3567164
Node: Instruction dup567476
Node: Instruction over567777
Node: Instruction oover568092
Node: Instruction rot568417
Node: Instruction nrot568736
Node: Instruction tuck569060
Node: Instruction quake569384
Node: Instruction revn569694
Node: Instruction push32570003
Node: Registers manipulation instructions570352
Node: Instruction pushr570691
Node: Instruction popr570973
Node: Instruction setr571297
Node: Return stack manipulation instructions571593
Node: Instruction saver571988
Node: Instruction restorer572305
Node: Instruction tor572675
Node: Instruction fromr573010
Node: Instruction atr573345
Node: Integer overflow checking instructions.573639
Node: Instruction addiof574325
Node: Instruction addlof574689
Node: Instruction subiof575081
Node: Instruction sublof575477
Node: Instruction muliof575874
Node: Instruction mullof576270
Node: Instruction diviof576667
Node: Instruction divlof577060
Node: Instruction modiof577454
Node: Instruction modlof577867
Node: Instruction negiof578283
Node: Instruction neglof578684
Node: Instruction powiof579072
Node: Instruction powlof579477
Node: Arithmetic instructions579859
Node: Instruction addi580772
Node: Instruction addiu581285
Node: Instruction addl581620
Node: Instruction addlu582162
Node: Instruction subi582499
Node: Instruction subiu582941
Node: Instruction subl583281
Node: Instruction sublu583725
Node: Instruction muli584067
Node: Instruction muliu584509
Node: Instruction mull584851
Node: Instruction mullu585297
Node: Instruction divi585641
Node: Instruction diviu586316
Node: Instruction divl586879
Node: Instruction divlu587556
Node: Instruction modi588121
Node: Instruction modiu588787
Node: Instruction modl589341
Node: Instruction modlu589999
Node: Instruction negi590555
Node: Instruction negiu590990
Node: Instruction negl591326
Node: Instruction neglu591761
Node: Instruction powi592092
Node: Instruction powiu592640
Node: Instruction powl593085
Node: Instruction powlu593633
Node: Relational instructions594053
Node: Instruction eqi594960
Node: Instruction eqiu595274
Node: Instruction eql595629
Node: Instruction eqlu595969
Node: Instruction eqs596324
Node: Instruction nei596661
Node: Instruction neiu597003
Node: Instruction nel597361
Node: Instruction nelu597705
Node: Instruction nes598064
Node: Instruction nn598406
Node: Instruction nnn598731
Node: Instruction lti599059
Node: Instruction ltiu599413
Node: Instruction ltl599791
Node: Instruction ltlu600702
Node: Instruction lei601079
Node: Instruction leiu601443
Node: Instruction lel601831
Node: Instruction lelu602193
Node: Instruction gti602579
Node: Instruction gtiu602937
Node: Instruction gtl603319
Node: Instruction gtlu603675
Node: Instruction gei604051
Node: Instruction geiu604418
Node: Instruction gel604809
Node: Instruction gelu605174
Node: Instruction lts605563
Node: Instruction gts605939
Node: Instruction ges606317
Node: Instruction les606704
Node: Instruction eqc607088
Node: Instruction nec607427
Node: Concatenation instructions607746
Node: Instruction sconc607987
Node: Logical instructions608260
Node: Instruction and608523
Node: Instruction or608804
Node: Instruction not609105
Node: Bitwise instructions609373
Node: Instruction bxori609925
Node: Instruction bxoriu610227
Node: Instruction bxorl610572
Node: Instruction bxorlu610903
Node: Instruction bori611249
Node: Instruction boriu611563
Node: Instruction borl611892
Node: Instruction borlu612207
Node: Instruction bandi612530
Node: Instruction bandiu612849
Node: Instruction bandl613187
Node: Instruction bandlu613511
Node: Instruction bnoti613851
Node: Instruction bnotiu614164
Node: Instruction bnotl614487
Node: Instruction bnotlu614796
Node: Shift instructions615093
Node: Instruction bsli615466
Node: Instruction bsliu615949
Node: Instruction bsll616472
Node: Instruction bsllu616981
Node: Instruction bsri617504
Node: Instruction bsriu617879
Node: Instruction bsrl618268
Node: Instruction bsrlu618643
Node: Compare-and-swap instructions619007
Node: Instruction swapgti619327
Node: Instruction swapgtiu619687
Node: Instruction swapgtl620091
Node: Instruction swapgtlu620481
Node: Branch instructions620858
Node: Instruction ba621291
Node: Instruction bn621530
Node: Instruction bnn621834
Node: Instruction bzi622146
Node: Instruction bziu622454
Node: Instruction bzl622776
Node: Instruction bzlu623084
Node: Instruction bnzi623406
Node: Instruction bnziu623723
Node: Instruction bnzl624054
Node: Instruction bnzlu624373
Node: Conversion instructions624680
Node: Instruction ctos625258
Node: Instruction itoi625600
Node: Instruction itoiu625970
Node: Instruction itol626353
Node: Instruction itolu626721
Node: Instruction iutoi627103
Node: Instruction iutoiu627490
Node: Instruction iutol627890
Node: Instruction iutolu628275
Node: Instruction ltoi628672
Node: Instruction ltoiu629045
Node: Instruction ltol629429
Node: Instruction ltolu629798
Node: Instruction lutoi630181
Node: Instruction lutoiu630569
Node: Instruction lutol630970
Node: Instruction lutolu631314
Node: String instructions631645
Node: Instruction strref632002
Node: Instruction strset632577
Node: Instruction substr633135
Node: Instruction muls633766
Node: Instruction sprops634294
Node: Instruction sproph634651
Node: Instruction spropc635048
Node: Closure instructions635352
Node: Instruction cgetn635569
Node: Array instructions635856
Node: Instruction mka636173
Node: Instruction ains636728
Node: Instruction arem637478
Node: Instruction aset637948
Node: Instruction aref638339
Node: Instruction arefo638813
Node: Struct instructions639266
Node: Instruction mksct639726
Node: Instruction sset640422
Node: Instruction sseti640890
Node: Instruction sref641355
Node: Instruction srefo641865
Node: Instruction srefmnt642369
Node: Instruction srefnt642806
Node: Instruction srefi643281
Node: Instruction srefia643777
Node: Instruction srefio644297
Node: Instruction srefin644801
Node: Instruction smodi645343
Node: Offset Instructions645824
Node: Instruction mko646164
Node: Instruction mkoq646484
Node: Instruction ogetm646843
Node: Instruction osetm647139
Node: Instruction ogetu647461
Node: Instruction ogetbt647756
Node: Instructions to handle mapped values648031
Node: Instruction mm648707
Node: Instruction map649005
Node: Instruction unmap649346
Node: Instruction reloc649700
Node: Instruction ureloc650233
Node: Instruction mgets650649
Node: Instruction msets651041
Node: Instruction mgeto651438
Node: Instruction mseto651834
Node: Instruction mgetios652231
Node: Instruction msetios652626
Node: Instruction mgetm653115
Node: Instruction msetm653498
Node: Instruction mgetw653885
Node: Instruction msetw654266
Node: Instruction mgetsel654655
Node: Instruction msetsel655200
Node: Instruction mgetsiz655713
Node: Instruction msetsiz656215
Node: Type related instructions656663
Node: Instruction isa657709
Node: Instruction typof658034
Node: Instruction isty658409
Node: Instruction tyisi658731
Node: Instruction tyisiu659052
Node: Instruction tyisl659378
Node: Instruction tyislu659701
Node: Instruction tyiso660028
Node: Instruction tyiss660353
Node: Instruction tyisa660676
Node: Instruction tyisc661001
Node: Instruction tyissct661329
Node: Instruction tyisv661662
Node: Instruction mktyv661989
Node: Instruction mktyi662279
Node: Instruction tyigetsz662723
Node: Instruction tyigetsg663057
Node: Instruction mktys663417
Node: Instruction mktyo663697
Node: Instruction tyogetm664120
Node: Instruction tyogetu664439
Node: Instruction tyogetrt664754
Node: Instruction tyosetrt665146
Node: Instruction mktya665605
Node: Instruction tyagett666093
Node: Instruction tyagetb666422
Node: Instruction tyasetb666746
Node: Instruction mktyc667196
Node: Instruction mktysct667583
Node: Instruction tysctgetc668092
Node: Instruction tysctsetc668502
Node: Instruction tysctgetn668850
Node: Instruction tysctgetnf669223
Node: Instruction tysctgetfn669566
Node: Instruction tysctgetft669968
Node: IO instructions670298
Node: Instruction write670932
Node: Instruction peeki671308
Node: Instruction peekiu671914
Node: Instruction peekl672504
Node: Instruction peeklu673108
Node: Instruction peekdi673698
Node: Instruction peekdiu674256
Node: Instruction peekdl674805
Node: Instruction peekdlu675361
Node: Instruction pokei675907
Node: Instruction pokeiu676474
Node: Instruction pokel677024
Node: Instruction pokelu677587
Node: Instruction pokedi678136
Node: Instruction pokediu678658
Node: Instruction pokedl679171
Node: Instruction pokedlu679691
Node: Instruction peeks680201
Node: Instruction pokes680673
Node: Exceptions handling instructions681076
Node: Instruction pushe681397
Node: Instruction pope681811
Node: Instruction raise682155
Node: Instruction popexite682472
Node: Debugging Instructions682801
Node: Instruction strace683140
Node: Instruction rtrace683529
Node: Instruction disas683913
Node: Instruction note684247
Node: Instruction vmdisp684672
Node: System Interaction Instructions684955
Node: Instruction getenv685217
Node: Miscellaneous Instructions685645
Node: Instruction nop685967
Node: Instruction rand686182
Node: Instruction time686594
Node: Instruction sleep686989
Node: Instruction siz687552
Node: Instruction sel687917
Node: Table of ASCII Codes688424
Node: GNU Free Documentation License692648
Node: Indices717817
Node: Concept Index718066
Node: PVM Instruction Index748079

End Tag Table


Local Variables:
coding: utf-8
End:
