diff --git a/README.md b/README.md index 68d8f49a..067e4da8 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ ### Overview -This project aims to perfectly reconstruct the source code of the first five [Touhou Project](http://en.wikipedia.org/wiki/Touhou_Project) games by *ZUN Soft* (now *Team Shanghai Alice*), which were originally released exclusively for the NEC PC-9801 system. +This project aims to perfectly reconstruct the source code of the first five [Touhou Project](http://en.wikipedia.org/wiki/Touhou_Project) games by *ZUN Soft* (now *Team Shanghai Alice*), which were originally released exclusively for the NEC PC-9801 system. The original games in question are: @@ -110,7 +110,7 @@ Crossed-out files are identical to their version in the previous game. ONGCHK.CO Needed to fulfill the role of being "just *any* native C++ compiler" for our own tools that either don't necessarily *have* to run on 16-bit DOS, or are required by the 32-bit build step, as long as that one still exists (see above). Currently, this category of tools only includes the [converter for hardcoded sprites]. Since that one is written to be as platform-independent as possible, it could easily be compiled with any other native C compiler you happen to have already installed. (Which also means that future port developers hopefully have one less thing to worry about.) - So, if you dislike additional dependencies, feel free to edit the `Tupfile` so that `bmp2arr` is compiled with any others C compiler of your choice. + So, if you dislike additional dependencies, feel free to edit the `Tupfile` so that `bmp2arr` is compiled with any other C compiler of your choice. However, choosing Borland C++ 5.5 as a default for everyone else fits ReC98 very well for several reasons: diff --git a/Research/Borland C++ decompilation.md b/Research/Borland C++ decompilation.md index 8e8d2af3..3b1a54ac 100644 --- a/Research/Borland C++ decompilation.md +++ b/Research/Borland C++ decompilation.md @@ -309,9 +309,9 @@ Inhibited by: int v = set_v(); do_something_else(); use(v); - } else if(underline) { + } else if(b) { // Second declaration of [v]. Even though it's assigned to the same stack - // offset, the second `PUSH w` call will still be emitted separately. + // offset, the second `PUSH c` call will still be emitted separately. // Thus, jump optimization only reuses the `CALL use` instruction. // Move the `int v;` declaraion to the beginning of the function to avoid // this. diff --git a/th01/hardware/graph.cpp b/th01/hardware/graph.cpp index c8efb875..584e3be0 100644 --- a/th01/hardware/graph.cpp +++ b/th01/hardware/graph.cpp @@ -389,7 +389,7 @@ int z_graph_readdot(screen_x_t x, vram_y_t y) test(E, vram_offset, mask, 8); return ret; -#undef text +#undef test } /// ------ diff --git a/th01/main/bullet/pellet.hpp b/th01/main/bullet/pellet.hpp index 5704aa5a..be1ec4ac 100644 --- a/th01/main/bullet/pellet.hpp +++ b/th01/main/bullet/pellet.hpp @@ -72,8 +72,8 @@ enum pellet_sling_direction_t { // along this axis of symmetry; even-numbered spreads don't. // // For aimed patterns, this means that: -// • all odd-numbered spreads are aimed *at* the player, while -// • all even-numbered spreads are aimed *around* the player. +// • spreads with odd numbers of pellets are aimed *at* the player, while +// • spreads with even numbers of pellets are aimed *around* the player. enum pellet_pattern_t { // Does not actually work, due to a ZUN bug in pattern_velocity_set()! PP_NONE = 0, diff --git a/th01/main/hud/hp.cpp b/th01/main/hud/hp.cpp index ee5cad5a..261e27df 100644 --- a/th01/main/hud/hp.cpp +++ b/th01/main/hud/hp.cpp @@ -67,7 +67,7 @@ void hp_put_with_section_pattern(int point, hp_section_t section) /// Background /// ---------- /// Whew, using a 16x16 wrapper around a 32x32 set of graphics functions in -/// order to handle backgrounds for 16x8 sprites... That's quite the recipe +/// order to handle backgrounds for 8x16 sprites... That's quite the recipe // for confusion. *Especially* if you don't write functions to abstract away // this needless complexity. diff --git a/th01/main/player/anim.cpp b/th01/main/player/anim.cpp index 12fe23b4..4617429e 100644 --- a/th01/main/player/anim.cpp +++ b/th01/main/player/anim.cpp @@ -85,7 +85,7 @@ void CPlayerAnim::unput_8(screen_x_t left, vram_y_t top, int image) const graph_accesspage_func(0); } -#define put_row(byte_x, vram_offset, bos_p, image) \ +#define put_row(bos_byte_x, vram_offset, bos_p, image) \ for(bos_byte_x = 0; vram_w > bos_byte_x; bos_byte_x++) { \ if( \ ((vram_offset / ROW_SIZE) == intended_y) && \ diff --git a/th01/sprites/main_ptn.h b/th01/sprites/main_ptn.h index 0c2b290d..cb41b5b7 100644 --- a/th01/sprites/main_ptn.h +++ b/th01/sprites/main_ptn.h @@ -48,7 +48,7 @@ typedef enum { PTN_BG_LIVES = PTN_ID(PTN_SLOT_BG_HUD, 0), PTN_BG_LIVES_last = last_for_quarters(PTN_BG_LIVES, LIVES_MAX), PTN_BG_STAGE, - PTN_BG_STAGE_last, // But the original game onlys need a single quarter? + PTN_BG_STAGE_last, // But the original game only need a single quarter? PTN_BG_BOMBS, PTN_BG_BOMBS_last = last_for_quarters(PTN_BG_BOMBS, BOMBS_MAX),