about summary refs log tree commit diff stats
path: root/050scenario.cc
Commit message (Expand)AuthorAgeFilesLines
...
* 3177Kartik K. Agaram2016-08-131-1/+2
* 3176Kartik K. Agaram2016-08-131-7/+9
* 3175Kartik K. Agaram2016-08-131-1/+0
* 3172Kartik K. Agaram2016-08-121-4/+0
* 3170 - multiple --options at the commandlineKartik K. Agaram2016-08-121-1/+8
* 3169Kartik K. Agaram2016-08-121-15/+19
* 3161Kartik K. Agaram2016-08-091-5/+0
* 3137Kartik K. Agaram2016-07-221-0/+9
* 3126Kartik K. Agaram2016-07-221-4/+1
* 3122Kartik K. Agaram2016-07-221-16/+4
* 3120Kartik K. Agaram2016-07-211-1/+1
* 3118Kartik K. Agaram2016-07-211-2/+2
* 3115Kartik K. Agaram2016-07-201-10/+10
* 3114Kartik K. Agaram2016-07-201-2/+8
* 3108Kartik K. Agaram2016-07-101-1/+3
* 3101 - purge .traces/ dir from repo historyKartik K. Agaram2016-07-051-5/+5
* 3022Kartik K. Agaram2016-05-271-8/+74
* 2990Kartik K. Agaram2016-05-201-16/+16
* 2987Kartik K. Agaram2016-05-201-0/+699
* 2971Kartik K. Agaram2016-05-171-699/+0
* 2965 - update refcounts when copying containersKartik K. Agaram2016-05-151-3/+3
* 2924Kartik K. Agaram2016-05-051-1/+4
* 2864 - replace all address:shared with just addressKartik K. Agaram2016-04-241-2/+2
* 2848Kartik K. Agaram2016-04-201-0/+1
* 2803Kartik K. Agaram2016-03-211-3/+3
* 2773 - switch to 'int'Kartik K. Agaram2016-03-131-14/+14
* 2735 - define recipes using 'def'Kartik K. Agaram2016-03-081-18/+18
* 2712Kartik K. Agaram2016-02-261-18/+18
* 2709Kartik K. Agaram2016-02-251-2/+1
* 2707Kartik K. Agaram2016-02-251-5/+0
* 2704 - eradicate all mention of warnings from coreKartik K. Agaram2016-02-251-5/+4
* 2703Kartik K. Agaram2016-02-251-1/+1
* 2702Kartik K. Agaram2016-02-251-3/+3
* 2700 - fail tests on unexpected errors or warningsKartik K. Agaram2016-02-251-0/+5
* 2698Kartik K. Agaram2016-02-241-1/+36
* 2685Kartik K. Agaram2016-02-221-2/+1
* 2681 - drop reagent types from reagent propertiesKartik K. Agaram2016-02-211-4/+3
* 2685Kartik K. Agaram2016-02-191-1/+1
* 2610 - warn when recipes don't use default-spaceKartik K. Agaram2016-01-271-2/+5
* 2579Kartik K. Agaram2016-01-201-0/+8
* 2576 - distinguish allocated addresses from othersKartik K. Agaram2016-01-191-2/+2
* 2561Kartik K. Agaram2016-01-171-1/+0
* 2606 - handle cycles inside stashKartik K. Agaram2015-11-291-6/+3
* 2483 - to-text can now handle listsKartik K. Agaram2015-11-271-2/+2
* 2466 - eliminate ':string' from scenariosKartik K. Agaram2015-11-211-3/+6
* 2458 - edit/: recipe side free of sandbox errorsKartik K. Agaram2015-11-181-0/+4
* 2454Kartik K. Agaram2015-11-171-1/+1
* 2379 - further improvements to map operationsKartik K. Agaram2015-11-061-2/+2
* 2377 - stop using operator[] in mapKartik K. Agaram2015-11-061-17/+17
* 2313Kartik K. Agaram2015-10-291-3/+3
w-grapheme-on-screen-buffer:continue: # --x 48/decrement-eax # eb/jump loop/disp8 } # reclaim row-bitmap 5b/pop-to-ebx # ++y 42/increment-edx # next bitmap row 46/increment-esi # e9/jump loop/disp32 } $draw-grapheme-on-screen-buffer:end: # . restore registers 5e/pop-to-esi 5b/pop-to-ebx 5a/pop-to-edx 59/pop-to-ecx 58/pop-to-eax # . epilogue 89/<- %esp 5/r32/ebp 5d/pop-to-ebp c3/return cursor-position-on-real-screen: # -> _/eax: int, _/ecx: int # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp # TODO: support fake screen; we currently assume 'screen' is always 0 (real) 8b/-> *Real-screen-cursor-x 0/r32/eax 8b/-> *Real-screen-cursor-y 1/r32/ecx $cursor-position-on-real-screen:end: # . epilogue 89/<- %esp 5/r32/ebp 5d/pop-to-ebp c3/return set-cursor-position-on-real-screen: # x: int, y: int # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp # . save registers 50/push-eax # 8b/-> *(ebp+8) 0/r32/eax 89/<- *Real-screen-cursor-x 0/r32/eax 8b/-> *(ebp+0xc) 0/r32/eax 89/<- *Real-screen-cursor-y 0/r32/eax $set-cursor-position-on-real-screen:end: # . restore registers 58/pop-to-eax # . epilogue 89/<- %esp 5/r32/ebp 5d/pop-to-ebp c3/return # Not a real `show-cursor` primitive: # - does not clear previous location cursor was shown at. # - does not preserve what was at the cursor. Caller is responsible for # tracking what was on the screen at this position before and passing it # in again. # - does not stop showing the cursor at this location when the cursor moves draw-cursor-on-real-screen: # g: grapheme # . prologue 55/push-ebp 89/<- %ebp 4/r32/esp # . save registers 50/push-eax 51/push-ecx # (cursor-position-on-real-screen) # => eax, ecx (draw-grapheme-on-real-screen *(ebp+8) %eax %ecx 0 7) $draw-cursor-on-real-screen:end: # . restore registers 59/pop-to-ecx 58/pop-to-eax # . epilogue 89/<- %esp 5/r32/ebp 5d/pop-to-ebp c3/return == data # The cursor is where certain Mu functions (usually of the form # 'draw*cursor*') print to by default. # # We don't bother displaying the cursor when drawing. It only becomes visible # on draw-cursor, which is quite rickety (see above) # # It's up to applications to manage cursor display: # - clean up where it used to be # - display the cursor before waiting for a key # - ensure its location appropriately suggests the effect keystrokes will have # - ensure its contents (and colors) appropriately reflect the state of the # screen # # There's no blinking, etc. We aren't using any hardware-supported text mode # here. Real-screen-cursor-x: 0/imm32 Real-screen-cursor-y: 0/imm32