profile
viewpoint
Michael Lamparski ExpHP exphp.github.io A physicist, supposedly.

ExpHP/lammps-sys 3

Rust bindgen wrapper (and static lib builder) for LAMMPS

ExpHP/funky 1

do you smell that?

ExpHP/newtype-ops 1

Rust operator-deriving macro for newtypes

ExpHP/nippy 1

Fork of npy-rs where I prototype ideas

colin-daniels/sp2 0

Computational physics research application dealing mainly with carbon-based structures (e.g. graphene, carbon nanotubes).

ExpHP/android-rotate-trigger 0

Rotation on/off toggle for android

ExpHP/brighter.vim 0

A "background=dark" version of the default "background=light" colorscheme

ExpHP/calc-tblg 0

old Haskell code for working with twisted bilayer graphene

ExpHP/crank 0

Crank Nicolson project

ExpHP/cross-obscure 0

quick n dirty script to obscure the grid of a crossword puzzle

issue openedGeal/nom

ExtendInto<Extender=Vec<u8>> appears to have no useful implementors

It is unclear to me how to use bytes::complete::escape_transform on bytestrings, because the only implementors of ExtendInto<Extender=Vec<u8>> are [u8] and &[u8], neither of which can be returned without borrowing from the input.

  • Rust version : rustc 1.46.0
  • nom version : 5.0.0
  • nom compilation features used:

Test case

use nom::{
    bytes::complete::{escaped_transform, take, is_not},
    combinator::{map},
};

fn main() {
    escaped_transform(  // Error: ExtendInto is not implemented for u8
        is_not(r#"\""#),
        '\\',
        map(take(1), |bytes: &[u8]| match bytes[0] {
            b'n' => b'\n',
            b => b,
        }),
    )(b"sfjisoeg");
}

created time in 6 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 33c6b42cb753871c48c5e460c4447bba44df5923

th08 bomb update

view details

push time in 8 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha ebd43fc7ca31efdb96045a2e1c7fe22fa4f4d24e

bullet cap in th16 w/o lasers and cancels

view details

Michael Lamparski

commit sha 9cee6618488a08797ef0c0ae2012ffbc031d8013

use more .INTERMEDIATE instead of .gitignores

view details

Michael Lamparski

commit sha 439257a2de4f1d03574aeadeab893cf80474e7b0

add enemy counters Also refactors some logic concerning limit computation, as the heterogeny between the different specs was starting to get confusing.

view details

Michael Lamparski

commit sha 89cbeaa8df3c95b2f2fb46569365660baf3e1b86

use nasm .nolist There's no need for crazy hacks to compress macros into one line of list output, we can just use .nolist

view details

Michael Lamparski

commit sha 407dc137564e73ee701a0071b69f5247340885de

th16 sprite_death_fix

view details

Michael Lamparski

commit sha 26099027902f0f8e4887fec01c9f13f88da34b3c

add anm_buffers for TH16

view details

Michael Lamparski

commit sha 445e43997c4007a8c24a8bbe51e61ce3687d7860

anm_buffers: search optimization

view details

Michael Lamparski

commit sha b18050d2a10f536a7d6bbbd1c7e0b3ffb5756949

add th15+ effect counters

view details

Michael Lamparski

commit sha c0aeeadf81f2be0030b990636649b662cceebf92

add game ranges to yaml files This will help revent a repeat of the th128 cancel cap mistake, by helping reduce the need for not()

view details

Michael Lamparski

commit sha 4f0eece557e6a423e0051160cdc57ad0d1505912

th16 item cap and th15 caps

view details

Michael Lamparski

commit sha 6ac00b4a47a271a7004e76b1b2729ef8102b628f

bugfix: deactivate full batch before adding another

view details

Michael Lamparski

commit sha fcc7a5386c8a538b7efe3af8708816bdc4d33ac1

th165 bullet_bap

view details

Michael Lamparski

commit sha 4539d0441744f119809b8019dec8e09bad3a7388

th165 anm_leak

view details

Michael Lamparski

commit sha 2ddff0faaf088a0842af40592e8ce1abcf8739e0

test VD with low cap to fix more bugs

view details

Michael Lamparski

commit sha 853042138b3210e703666ddbb47993b612f0fe15

th17 bullet_cap

view details

Michael Lamparski

commit sha 8f6b7b0473584e7fd4dc18fce511ebe9ed2c37ad

rename anm_buffers to anm_leak

view details

Michael Lamparski

commit sha 47f9366996b4356cec616f07c7f8ff3dd8a83ded

call update.sh

view details

push time in 9 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 8d3243208d30e37021aa8c329e0a54835ad303e9

big update with info from zero318 renaming Lolidfk to GameManager

view details

push time in 10 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha d735e94498fcfd210848d89c3494b367e9b92d62

map out th165 inner enemy, other updates

view details

push time in 11 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 4e13b089aabfb39cf4a1b35ca4e132c62b00826d

add favicon

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha cf7c54e54cf470fe28c263ce2ab83b6b4a232a6d

fix bullet image error

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 7092b80e64dfff1b507c112842ffef6d8faad5a1

push hr down

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha c428f552589f9f48981d2c5e70cdb68423c3cde7

more portfolio fixes

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 91cd61f522d34ff4bf0b31ee84a046958c2d7c48

fix portfolio errors

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 8a925b5df24c9bf0163b7a19a390c332b0c67f3d

add portfolio

view details

push time in 13 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha efcc0bbc24678a2447ca72e0ec44077be028d978

fix typos

view details

push time in 14 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha ec97a3ff920ddd64155ffd2dfff7af7f0af7882b

update thpages to 3153c22

view details

push time in 14 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 41d2d815f5b3f42a9cc1dece9469d24fa091dbeb

short update, mostly th07

view details

push time in 19 days

push eventExpHP/thpages

Michael Lamparski

commit sha fc99ce2413a922ecfb371f4a5d8fa462a0513769

Allow disabling frozen header cells/rows I honestly don't know why it looks messed up in some browsers, so I'm providing an opt-out.

view details

push time in 20 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha ec571cd537d841060c706e62a70ecd896108d8bf

update thpages to fc99ce2413a

view details

push time in 20 days

push eventExpHP/thpages

Michael Lamparski

commit sha 0d84e57031447a26a4e6c371e432705fc74ebb07

make ins/var reference a lot nicer on mobile This significantly reduces the amount of wasted horizontal space on mobile platforms that are starved for it, by turning the instruction names into headers and letting the description take the full display width.

view details

push time in 21 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 5a87838386fe5bb453f10e8d999ebbf41f8fb1b8

update thpages to 0d84e5703

view details

push time in 21 days

push eventExpHP/thpages

Michael Lamparski

commit sha 06777d600ce567bfc29ef6a9d4d909b9e1208e4d

improve mobile experience maybe? Fixes an issue with the gear going on an... adventure at certain screen widths. I don't know if these changes make the overall experience better but I think at the very least they make it objectively *not worse.*

view details

push time in 21 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 7d54423bf7c851a1ff8f06da945f80a3c297fabc

update thpages to 06777d600

view details

push time in 21 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 9a44fd038bb95776dc9f55c5fb2557c755888861

move some info to site

view details

push time in 21 days

push eventExpHP/thpages

Michael Lamparski

commit sha 8b8a204c7e13023eb06345c302769e89d3a5dada

add some patch info to site I really just wanted some shorter urls for some of these old: https://github.com/ExpHP/thcrap-patches/tree/master/patches/bullet_cap#readme new: https://exphp.github.io/thpages/#/mods/bullet-cap

view details

push time in 21 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha eae1d91c8bc5fa5220387a67cb72a3c75f098c55

update thpages to 8b8a204c7

view details

push time in 21 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha a51b599f4d438492ef3b453638b31abc6831635a

Update README.md

view details

push time in 21 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha c4083fc0c560ba4fc7f53c9b0ef89c94001c13f3

actually publish base_exphp, oops

view details

push time in 21 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 7c31051470212847f5d746edc4a9eeb3c3252643

bullet_cap is feature complete

view details

Michael Lamparski

commit sha a9f2f814e5257becad66c4174a44abb353e32de6

final bugfix for th08 bullet_cap Also adds base_exphp, which debug_counters is about to use

view details

Michael Lamparski

commit sha 1b9b664ef10620fbf04e81e1720ddd2fcbc8b670

fix laser debug counter in th08

view details

Michael Lamparski

commit sha d8975b0c74b36721e5600acf1a4b464c0a2a9c1b

redesign base-exphp for less technical debt

view details

Michael Lamparski

commit sha 6fadba4c0a7aea71ea779140b97029712936b932

release bullet_cap for th08

view details

push time in 21 days

push eventExpHP/thpages

Michael Lamparski

commit sha de590319d16d0d3a808bbbc52f97e43bc58c8aa3

roll back accidental commit I did it in the wrong repo, this file's not supposed to be in VCS...

view details

push time in 23 days

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 2fae19c14232ffd323f27a6015b139c60c68ceb6

update thpages to fe8abe4a2

view details

push time in 23 days

push eventExpHP/thpages

Michael Lamparski

commit sha 429c5bef4b42e5f4632ebaa3ab037571c52d581c

some long overdue updates

view details

Michael Lamparski

commit sha fe8abe4a2bd94c881a62fb896c6bdfcffcf9bad0

update eclmap

view details

Michael Lamparski

commit sha e97f4e6705301053acefe73bcbef51dd5e18b5b1

update thpages to fe8abe4a2

view details

push time in 23 days

push eventPriw8/eclmap

Michael Lamparski

commit sha 72449c62930e7190814f07eb1be52068e5558407

some long overdue anm updates I've had most of this info on my site for a while, I just took forever to add it to anmmap

view details

push time in 23 days

push eventPriw8/eclmap

Michael Lamparski

commit sha e5929dfbc45ba650ac559c7425e87eab3a1357d8

v2 ANM blend mode

view details

push time in 23 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 5290c2844aea3e8a488d92daee89d420a40100b7

th08 bullet_cap preview

view details

Michael Lamparski

commit sha 62ba0edab04dc6bfa601cc0551eee9b52de766e1

refactor sprite_death_fix and add th08 to it

view details

Michael Lamparski

commit sha 820c7235884a0fe261f9c2a2ec7f64d30338dca2

disable th08 bullet cap so we can push I want to push the fix for the GFW cancel cap as soon as possible because it is technically a breaking change. (despite being a breaking change, I doubt it will affect anyone since GFW with bullet_cap is basically unplayable)

view details

push time in 24 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 4b931e40d9d26aad456ed501ef8f172cf780dc1d

Update README.md

view details

push time in 25 days

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 1705a50800b380e1c44604421e4c089e098125d5

update after bullet_cap This update includes: * Various things related to player, bullets, and layers in th11 and th14 (reversed while working on a secret project) * Labelling of lots of BulletManager and ItemManager fields across almost all games (while working on debug_counters and bullet_cap) Unfortunately binary ninja also changed the formatting of array sizes from decimal to hexadecimal. Sorry if this breaks anyone's scripts!

view details

push time in 25 days

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 9dc6a74164c2f810ede6bcd9dcb5b22360ba9fd2

th08 debug_counters

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 807b3882d5d24bf6a5b8807171f03f9179bfb42d

bullet_cap for TH13

view details

Michael Lamparski

commit sha 82527c3e849005736838c15a18e13786be1dffc2

run update.sh

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha dca0e21e6616a3c38413c4a6d457f268a5826afd

bullet_cap for th125

view details

Michael Lamparski

commit sha 660b037dd6a92acd37f6726d48f31d769a72b8ed

support th128 in bullet-cap

view details

Michael Lamparski

commit sha 0cdd51fc370f6b5caaaeebb49acd0854ae3e6e08

add debug_counters for 13, 14

view details

Michael Lamparski

commit sha 3e195c998b6aa480c831a4e418c479c274f88971

th15 debug counters

view details

Michael Lamparski

commit sha 8e17b138a6137eb5a68f91f8ee669f88b7d46fff

debug-counters: all remaining post th10 games

view details

Michael Lamparski

commit sha f97710ab4c709dccf5061019abb17557862c8109

run update.sh

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 25023002ab0b23f7098f7949b0866fe3f11ccd50

soften lag spikes in MoF and SA

view details

Michael Lamparski

commit sha 946250de9c63c8a40bc7cebf19bc665d3dd7db58

Merge branch 'master' of https://github.com/ExpHP/thcrap-patches

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha ca57f4a2c48ae481322b75303227e329c4466cf6

Update README.md

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha f31f715e393b6cfd3e857ecccea5e0fa4271b35b

bring sprite batching back Measured the performance and there is a slight hit without it when playing quad ultra. Meh.

view details

Michael Lamparski

commit sha 2b5ba916d51a505f34e05a0c605cc6263772682d

th11 counters and sprite fix

view details

Michael Lamparski

commit sha 073cc0a7adc6eaec66f88af02a4efe56403f00a8

refactor debug_counters a bit better even

view details

Michael Lamparski

commit sha 96839f18f1bc58f9fced92a7c6b54661d5f9ae91

add laser and cancel caps

view details

Michael Lamparski

commit sha f96f8e8ecf556ae4c972bb864d89b87026adda74

supporting item limit in debug counters

view details

Michael Lamparski

commit sha e7f2339656f63a630fed5514c4e232ac96202068

refactor bullet-cap like debug-counters

view details

Michael Lamparski

commit sha 390cdb48854e4fd3be2106224663dbf164a44067

laser and cancel caps in th11

view details

Michael Lamparski

commit sha b1a6bafd84561362b83ad8510873e7f03800dbcf

add th12 everything for bullet-cap

view details

Michael Lamparski

commit sha 1426886f90fb550e106620b6b64d398c98c64452

publish bullet_cap

view details

push time in a month

issue commentmicrosoft/vscode

Sticky folder path in Explorer

I often dream of a feature like this. I just wish that all ancestor directories of my current location in the file pane were sticky so that I could just click on the collapse button of the one I want to get out of.

However, it turns out there is another solution:

image

If you click on any of the files in the folder and then press the left arrow key, it will jump out to select the containing folder.

image

And since your hand is already there, it's worth noting that you can press the key a second time to close the folder.

mattxo

comment created time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 7e0ca906c78781e48a41a5765417b685311c9152

add image to debug counters README

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 1f5cb782064c8f2723d1e04d818e0d1af3daa516

bullet_cap: add th10

view details

Michael Lamparski

commit sha c94bbf397a5c156430f2b8f6425c0905954498d3

debug_counters initial commit

view details

Michael Lamparski

commit sha 958dc941025a64b582943ce20eda7451bdf8ce95

add items to debug counters

view details

Michael Lamparski

commit sha 089fe9ecf858eac5eb9f552c5f13b9e4263653c2

prepare for list counters

view details

Michael Lamparski

commit sha 81f5c19daa7bfb9a79c7cdd924d73edf2b4af9e1

publish debug_counters and sprite_death_fix

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha 81730d700961fbeacf2d880d8d2cde07075ab169

tweak bullet-cap

view details

push time in a month

push eventExpHP/thcrap-patches

Michael Lamparski

commit sha dea1df607e79c014073775d7d0d6db45c2eef118

long time since last commit working on something big, we're definitely gonna want VCS for this...

view details

Michael Lamparski

commit sha 374d561d9d3a7ff854b02838476ca8522796f6f5

setup external control

view details

Michael Lamparski

commit sha 9b3920a9ebdbe1b601d562e76114507c6f7b6498

hide reimu from server baby steps, baby steps...

view details

Michael Lamparski

commit sha e8e6badb65d23b1a7014c7d1dd4bd22c87e31c82

gapping in client

view details

Michael Lamparski

commit sha 92cf91c620bc11689979a203f7417ffdb29c371f

ssa: change reimuA sht

view details

Michael Lamparski

commit sha f7b4528a01acbda00b8f61f47fdf1add9326d590

bullet cap prototype

view details

Michael Lamparski

commit sha accf58fa749e3b384f8f41dc777f2373bfc27603

refactor bullet-cap

view details

Michael Lamparski

commit sha 49fc427f9433051762d9db4d1c3b0bcbbe24b0ca

bullet-cap pre-publish

view details

push time in a month

PR opened elast0ny/shared_memory-rs

Windows fixes

Fixes #51 Fixes #52

Since there are currently no tests I will present how I verified these fixes.


Example code affected by first fix:

let shmem = shared_memory::ShmemConf::new().os_id("αβγδεζ").size(0x80000).create().unwrap();

Before: (looking in WinObj; using Japanese locale)

Picture of WinObj with mojibake

After:

Picture of WinObj with correct name


Test case used to verify the size fix:

#[test]
fn size() {
    let size = 0x1_0000_0004;
    let shmem = shared_memory::ShmemConf::new().os_id("purty big").size(size).create();
    let shmem2 = shared_memory::ShmemConf::new().os_id("purty big").open().unwrap();
    assert!(shmem2.len() >= size);
}
+13 -13

0 comment

1 changed file

pr created time in a month

create barnchExpHP/shared_memory-rs

branch : windows-fixes

created branch time in a month

fork ExpHP/shared_memory-rs

A wrapper around native shared memory for Linux and Windows

fork in a month

issue commentelast0ny/shared_memory-rs

Bug in high_size argument

One other final thing:

https://github.com/elast0ny/shared_memory-rs/blob/749f11db3324afc41d67a8229bbbd059856494a6/src/windows.rs#L88-L90

I noticed that this handle is explicitly cleaned up on failure, while nothing else is. That's when it occurred to me that the reason why new_map is initialized at the beginning with dummy data (and why the Drop impl checks for null pointers) is that, in these functions, new_map's drop impl is being used to clean up everything on failure.

However, that means that, in this particular exit branch, CloseHandle gets called on new_map.map_handle twice.

ExpHP

comment created time in a month

issue openedelast0ny/shared_memory-rs

Bug in high_size argument

https://github.com/elast0ny/shared_memory-rs/blob/749f11db3324afc41d67a8229bbbd059856494a6/src/windows.rs#L63

This is missing a right-shift.

created time in a month

issue openedelast0ny/shared_memory-rs

Incorrect use of ANSI windows APIs

https://github.com/elast0ny/shared_memory-rs/blob/749f11db3324afc41d67a8229bbbd059856494a6/src/windows.rs#L65-L73

This is using the ANSI API on string data that is not ANSI-encoded. It should be using the wide APIs, using the standard library utils for conversion to UTF-16.

I can make up a pull request for this tomorrow.


(aside: that call to .as_ptr() on a temporary is terrifying and---while correct---it depends on delicate aspects of drop order that people seldom talk about. I can't imagine why anyone would choose to silence the lint when they could easily add a binding for the temporary in just as many characters...)

created time in a month

startedelast0ny/raw_sync-rs

started time in a month

issue openedelast0ny/shared_memory-rs

Create mapping or open existing mapping

I have two processes, and don't know which of them will attempt to open the shared memory first. When using CreateFileMapping on windows, this is fine, because the semantics of this function are to attempt to either create a new object or return an existing one. So whichever program makes it there first creates the mapping, and the other opens it.

However, in this crate I only see a function for creating a new mapping (ShmemConf::create), and another function for opening an existing mapping (ShmemConf::open).

How can I recover the original semantics of CreateFileMapping?

created time in a month

push eventexphp-share/static-diagnostic-halp

Michael Lamparski

commit sha 6dc9a0d88f8208616613b09b9295e31066b3ddaa

Create README.md

view details

push time in a month

create barnchexphp-share/static-diagnostic-halp

branch : master

created branch time in a month

created repositoryexphp-share/static-diagnostic-halp

created time in a month

created repositoryexphp-share/static-diagnostic-halp

created time in a month

push eventExpHP/thpages

Michael Lamparski

commit sha b4a382c1b5fe2407d5194c22d1ee804713a7f28b

fix error message for games without layers

view details

push time in a month

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 6dc70642629a1d1604b4770da6714a576fe93198

update thpages to b4a382c1b

view details

push time in a month

push eventExpHP/thpages

Michael Lamparski

commit sha 3e466e06f2f8af5c0971639e280dc772be253700

first prototype of layer viewer

view details

Michael Lamparski

commit sha 255f42ea3c4f255b12c5a3c298d6ffa8af2a42e7

darker background, move game colors to css

view details

Michael Lamparski

commit sha 6a2a00d5042be4b9b73705d6b1aeb138b67f99b6

refactor stylesheets a bit

view details

Michael Lamparski

commit sha 06188b20343571be6bdee9d01930202609fb53f7

use packery in layer-viewer

view details

Michael Lamparski

commit sha 2a6a05b1bbad8d6503445bb007966b43df6312da

more layer viewer stuff entries for @ and @R textures, a meager progress report, and better usage of async

view details

Michael Lamparski

commit sha b4a7a9bbb14f237400d18106936cbfda9fd98f5f

fix errors on th14, cancel on error

view details

Michael Lamparski

commit sha 010268443dbbe1de8a0818cd0a915a24cd036c51

fix offset in layer viewer, add to nav

view details

Michael Lamparski

commit sha 11bcc94844d62a053eb9eea7e51f0b7deb6c7a59

dynamically import JSZip and packery for filesize

view details

push time in a month

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 395729b91da363782d15241480ec3cc162cb3e2e

update thpages to 11bcc94844

view details

push time in a month

push eventExpHP/thpages

Michael Lamparski

commit sha bf4f3667b36e8c9191c2f687c9f4bd57256b91db

Create README.md

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha e0d7e16a33f881f43e885fdba61d0820a93ff093

small tweaks, positions draft

view details

Michael Lamparski

commit sha 30ff75145bea1336b1b296eb2a84600923604fd9

look at stages of rendering in SA

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 46f018e6f1ea7a719911e00a56b9f55ca70bd320

update thpages to 30ff751

view details

push time in 2 months

push eventexphp-share/th-re-data

Michael Lamparski

commit sha 86a76152911a82668772b8d4485ac832dca942f1

many accumulated changes

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 54c2524ad46091a4caf40d71a0bab3e72c092647

add .nojekyll to trash/

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 5f0cb5f524e49baf3872cb6601bab8ef08c6fcd0

update thpages to lolidunno

view details

Michael Lamparski

commit sha 797c1c4f580b3f342f88ada852b34f644c3dca79

add saccade visualizer

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha d6825e1230318eb034cf0ab1d02869c88779fe2b

fix gear hover

view details

Michael Lamparski

commit sha 53dfa4f22cad5452a2bdda5c26b6f8c27ac5ce27

why was that even there

view details

Michael Lamparski

commit sha 00967b76f07fcd27a112e1fcc8f8bf017ba61cb2

typify tables Honestly not sure how I feel about this change. I feel like adding strict null checks here has paradoxically dropped my IQ by 20 points as I keep forgetting the reasons why all of these non-null assertions are correct (which become obvious again the moment I stop thinking about types and try to focus on what the code is actually doing). (actually, first I tried adding types directly to ins-table.js, which was a bad idea and made everything instantly unfun) Anyways, I'm already balls deep into this and some legitimately good refactorings came out of it, so... I guess I'll keep it for now.

view details

Michael Lamparski

commit sha fa827313ba3b994ab9bf018833a30e2b6271a970

add std table and fix numerous bugs

view details

push time in 2 months

pull request commentthpatch/thtk

thstd: fix crashes with some pre-th10 stages

So I tried this commit. Seems to decompile and recompile IN fine. The output is not bit-for-bit identical to the original but the game seems to play fine. PCB and PoFV also decompile.

Tried decompiling StB but got lots of segfaults.

Nutzer

comment created time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha ec61e671c5921795f8c1a08d1a98e6392515ef27

minor eosd improvements

view details

Michael Lamparski

commit sha 1e203da028c10a82715e75aed9ce9f3574bba1dc

fix mislabeled child creation funcs

view details

Michael Lamparski

commit sha 197c16d7b37f64c5d1a436edd928759f56b77eef

hacky fix for double loading

view details

Michael Lamparski

commit sha 27eec238f3cf19e9ae68be6573e7b1589b1c8421

less hacky fix for double loading handleNavigation was apparently the old thing before the navbar had anchor links

view details

Michael Lamparski

commit sha 3e48e46b7e902dad6f7ab99edf03d2903cfb381b

refactor navbar and navigation

view details

Michael Lamparski

commit sha 5726fd3c63075d7f8dc90aba94fbc96228c44225

embed titles in MD files

view details

Michael Lamparski

commit sha 46523e0177b4b330d75a8a00db18a3200a5ea832

more minor style fixes

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 2b1a3fa735ff3f68d77480bf0946a39901c3e47a

update thpages to 46523e01

view details

push time in 2 months

push eventPriw8/eclmap

Michael Lamparski

commit sha 6343eca01851cc9986ddb32c1ca7bc0dc052e772

fix Front/UI I've gotten these two backwards literally every time I've looked at them or written anything about them.

view details

push time in 2 months

pull request commentthpatch/thtk

thstd: fix crashes with some pre-th10 stages

Also, just a random note, EoSD instructions are different from games after it (but that could be fixed later).

EoSD signatures: (_ means unused, could just put S):

0 fff
1 Cff
2 fff
3 S__
4 S__
5 ___

(there's only 6 instructions)

This is in contrast to PCB where the first 6 instructions are:

0 fff
1 Cff
2 S__
3 ___
4 SS_
5 fff

This is mostly a problem for instruction 2.

Nutzer

comment created time in 2 months

pull request commentthpatch/thtk

thstd: fix crashes with some pre-th10 stages

What's holding this PR back?

Nutzer

comment created time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha 4e5a0ce1aa9c2b9c30983a5b2c13eb51ac665f1d

update information on drawRectShadow

view details

Michael Lamparski

commit sha 266b0306887ccb0357681b58f6651b2aa00976e8

update information on drawRectShadow

view details

Michael Lamparski

commit sha d77ba1b00d1d243e10f1067b48451be380d9bf74

add EoSD

view details

Michael Lamparski

commit sha 0ea8a4b02f0737de38f67c01cbb3457f1623898c

revise switching, add th143

view details

Michael Lamparski

commit sha 1997c633e8f2778d08fc5f8033b2bdd73b561cfa

more stuff for early games

view details

Michael Lamparski

commit sha 6fabddf8aa4c89ed5f20f9f046533b6590bc94c5

fix stats table filling with zeros

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha a6d41a90b931cb8d71e795d1e2646373698a2660

thpages => 6fabddf

view details

push time in 2 months

issue openedshowdownjs/showdown

HTML inside <code> blocks is escaped

Input Markdown:

<code><span>a</span></code>

Expected HTML output: (from 28 out of 31 converters tested on babelmark)

<p><code><span>a</span></code>
</p>

Actual output: (from showdown and one other parser)

<p><code>&lt;span&gt;a&lt;/span&gt;</code>
</p>

Quoting Daringfireball: (emphasis added)

Similarly, because Markdown supports inline HTML, if you use angle brackets as delimiters for HTML tags, Markdown will treat them as such. But if you write:

4 < 5

Markdown will translate it to:

4 &lt; 5

However, inside Markdown code spans and blocks, angle brackets and ampersands are always encoded automatically. This makes it easy to use Markdown to write about HTML code. (As opposed to raw HTML, which is a terrible format for writing about HTML syntax, because every single < and & in your example code needs to be escaped.)

I included the last paragraph to emphasize that it says "Markdown code spans." My interpretation of this—backed by the babelmark link posted above—is that this phrase refers specifically to markdown backtick syntax, i.e. `<span>a</span>`, and not to <code> which is an inline HTML element.

created time in 2 months

push eventPriw8/eclmap

Michael Lamparski

commit sha 07156443354683a5cd2a0598d522409c07128904

add v0. Rename v3 to v2 for consistency even numbers gang

view details

push time in 2 months

push eventExpHP/thtk

Michael Lamparski

commit sha b30bbf0fb44e07c134f2cab4273342c133f6ceb8

Fix anm v0 signatures

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha 937bb51c1acbd02180b3e916c5fa10e6d11ccde8

add ins 418 video and [more] tags many files changed due to some files being tsified

view details

Michael Lamparski

commit sha b6174af21f53ed96dda875e572690c7fa287ed43

fix split rows in stats

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 725ee0913af9a7db267f126ade5790861fd6568f

update thpages to b6174af

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha 543a47ffd4001f31198bcf7f260dcd8ba70b130f

v7 -> v4

view details

Michael Lamparski

commit sha a4f4ee0db2e955bb90a809c2318d60789587df77

add PoFV

view details

Michael Lamparski

commit sha 6ab7982970976f03136feedfebb99b7cbe418003

add notes about StB wait

view details

Michael Lamparski

commit sha a70137875b6d239b9e5909e0bb3bf13e62a9686d

add stats-table prototype and th07/th08 info I wonder how so much stuff ended up in one commit...

view details

Michael Lamparski

commit sha dbbff52fe1f3e8866376c740d784c813a3e89f2f

go live with stats table

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha d40e4808c573e016f1e9870edd9324daea124202

update thpages to dbbff52

view details

push time in 2 months

issue commenttwlikol/GridViewScroll

Poor performance due to repeated reflows

My rewrite is more or less complete (in some prototypical form), and allows for super fast resizing. I am a bit weary right now to make a repository for it or be burdened to maintain it in any substantial manner, so for now I am going to simply post a gist of it to at least provide something for others who encounter this issue:

https://gist.github.com/ExpHP/db039dac0ba35bb7a3a49b0321700fcc

In this rewrite, you are meant to put the table in a resizable div and supply that container's id as containerId to GridViewScroll. Call enhance() once and then use something like ResizeObserver to call resize() whenever the container size changes. Then, to prevent the div from being resized larger than the table's full size (which would cause the resize handle to visibly "detach"), you can cap the container's width to .rootDiv().offsetWidth and etc. after each call.

ExpHP

comment created time in 2 months

issue openedtwlikol/GridViewScroll

Poor performance due to repeated reflows

This design of this library appears to try to handle one part of the output at a time (e.g. the header, the body, the frozen columns), but this leads to it alternating between modifying the DOM and reading its computed layout. Not only that, but even just while it is building the header or the frozen columns, it is reflowing on every cell. In a table with a mere 175 rows, I found that appendFreezeContent takes an entire 1.2 seconds.

One possible fix for appendFreezeContent is pretty simple: Create all of the "helper" wrappers before the loop. In my local copy I have also incorporated mbrucco's changes which I need, so I can't easily make a PR, but here is the basic idea:

https://github.com/exphp-forks/GridViewScroll/commit/e0aed0136ef4dfc4565b5a8c35019b74e50cdde1

Even with that fix, it's still too slow for resizing:

gridview-perf

Looking at the performance shows three big remaining problems:

image

  1. shows that calculateHeader has a loop that can probably be similarly optimized.
  2. shows that appendFreezeContent is still heavily affected by changes in the previous steps. It will be necessary to batch together all reads and all writes separately.
  3. shows that to get best performance it will be necessary to find a way to trigger a resize without undo. Deleting and recreating all of those DOM elements simply requires too much layout to be recomputed.

It looks too difficult to fix problems 2 and 3 in the existing code so for now, in my own project I am probably going to try to rewrite the tool (which I suppose will also help me see how it works). But hopefully some improvements can find their way upstream at some point...

created time in 2 months

push eventexphp-forks/GridViewScroll

Michael Lamparski

commit sha e0aed0136ef4dfc4565b5a8c35019b74e50cdde1

super simple performance fix 1 Insert all helpers before doing any layout computation in appendFreezeContent. On a table with 175 rows (which to me seems like... not that many?), I am finding that this change reduces the runtime of appendFreezeContent from 1.2s (75% of total) to 175ms (22% of total)

view details

push time in 2 months

push eventexphp-forks/GridViewScroll

Michael Lamparski

commit sha edbf69a7d810e8386702ad91584f5cd3b25766f5

incorporate ContainerID PR from mbrucco incorporate changes from https://github.com/twlikol/GridViewScroll/pull/48

view details

push time in 2 months

push eventExpHP/thtk

Michael Lamparski

commit sha 87d4d2aa71fba54cce8d7ad03996dcfe1741b392

fix anm v2 signatures v2 is identical to v3 except that color is a single dword

view details

push time in 2 months

PR opened thpatch/thtk

fix all anm v3 signatures
+40 -7

0 comment

1 changed file

pr created time in 2 months

push eventExpHP/thtk

Michael Lamparski

commit sha 0c6d80574b8ebb573c5e0ed2a0b2a6bdd041f46a

fix all anm v3 signatures

view details

push time in 2 months

push eventPriw8/eclmap

Michael Lamparski

commit sha 0f8cc954c75ef14b151dc4ab833ef9cb4baec30f

add v3 anmmap

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 40b714651a9564a37d250f67f9116982e7edd665

update thpages to 4f6ce46

view details

push time in 2 months

push eventPriw8/eclmap

Michael Lamparski

commit sha 7302f001f138917f8fe9127b09f0532d3fdae3da

rename v7 -> v4, works down to StB

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha 28fac42753a23a0332cdbae7e3273a7d4e4622d1

add th10

view details

Michael Lamparski

commit sha aa3047251d8d66597b6e1d9135a74ee8ace9dfdc

add StB info

view details

Michael Lamparski

commit sha 788253b1c8b044b7ea1dbf7d87c87c1f5b2230c2

fix some link bugs Have var table and ins table preserve game when linking to each other. Delete anchor when changing game via selector at top.

view details

Michael Lamparski

commit sha 4f6ce46628246fc2ad069da1f657acbfd5cc27b7

fix typos in new child concept

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha a52699b43f20da3f4e08bd9406e891a67da30397

add results of reversing VD

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha ce5f06e215447491f60a8ef719b8638f206d50ba

update thpages to a52699b

view details

push time in 2 months

push eventExpHP/thpages

Michael Lamparski

commit sha eef0adc1ffadf9b1e2bf99f8166d9880fc0b14c1

tweak descriptions

view details

Michael Lamparski

commit sha 62bb26c5ed8a699e7d370e13c2b475412b06ccc6

additions for th11

view details

Michael Lamparski

commit sha a4a51601a0536c0bd01ef0c00b43c797b8b51a4e

cleanup queries slightly

view details

Michael Lamparski

commit sha e5ca86fe878316343bfd07ed86ffda012e87ba29

refactor ins and var code Reduce the amount of copypasta between these two tables, both now and even moreso in the near future when I add a page for the variable table, and features like 'available in th11-th15' on tooltips, etc. in the far future

view details

Michael Lamparski

commit sha 039885326aadf6b25f766c5f917b70fc3bf1f5a5

add var table

view details

push time in 2 months

push eventExpHP/ExpHP.github.io

Michael Lamparski

commit sha 9c2833736f16cebd90a6059e89c13fe05134d9c7

update thpages to 0398853 now with var table

view details

push time in 2 months

pull request commentthpatch/thtk

fix remaining signatures in v4 and v8 anm

Note: This does break recompilation for a lot of scripts, but only because the recently-added implementation of negative script indices is wonky. (basically, adding N to signatures for v4-v7 makes them as equally broken as v8 already is)

ExpHP

comment created time in 2 months

PR opened thpatch/thtk

fix remaining signatures in v4 and v8 anm

Fixing all signatures to align with my findings here.

(Note: the version of the website currently live misidentifies v7:102 as "drawRect" when it is actually "spriteRand", and mistakenly gives v8:436 an "SS" signature; the signatures in this commit are correct)

+56 -17

0 comment

1 changed file

pr created time in 2 months

more