Commit graph

40970 commits

Author SHA1 Message Date
Sir Richard bf39d09670 [NTOS]: Sync up KiDispatchException with x86 code (and going back to C comment formatting).
svn path=/trunk/; revision=45509
2010-02-09 02:00:52 +00:00
Sir Richard d685272dc0 [NTOS]: Get rid of fixed TLB entries on ARM, I don't think that idea makes sense (unlike IA64 or MIPS where they are lot more flexible), since they only allow 1MB sections, not pages.
svn path=/trunk/; revision=45508
2010-02-09 02:00:15 +00:00
Sir Richard 60fd785e82 [NTOS]: Forgot to setup an IRQ stack, the kernel was working by magic since in previous incarnations of the ARM port, 0xFFFFyyyy was mapped, so a stack of 0 worked (going downwards).
[NTOS]: Now FreeLDR just calls the KiSystemStartup routine correctly, without any "magic", so fix the code to use a1 instead of a2 (argument 1/2).

svn path=/trunk/; revision=45507
2010-02-09 01:54:14 +00:00
Sir Richard acb344ee2a [ARM SDK]: Use real Versatile base addresses instead of the old hacked FreeLDR base addresses.
svn path=/trunk/; revision=45506
2010-02-09 01:47:54 +00:00
Sir Richard 68410c584a [ARMLLB]: PutChar should be a UCHAR routine, this way we can print characters above 127 (extended ASCII). This is needed for the progress bar, for example.
svn path=/trunk/; revision=45505
2010-02-09 01:46:01 +00:00
Sir Richard fa51458191 [ARMLLB]: Fix typo.
svn path=/trunk/; revision=45504
2010-02-09 01:44:26 +00:00
Daniel Reimer 016d82736c Giant German Language Fix Patch by "tux."
I skipped xcopy, winhlp32 and wordpad because they are wine synched and expand, because its not translated anymore.
Fix some BOMs i did not see at wine synching.

svn path=/trunk/; revision=45501
2010-02-08 19:35:26 +00:00
Daniel Reimer 61cfcb1f24 Fix build breakage
svn path=/trunk/; revision=45500
2010-02-08 16:38:41 +00:00
Daniel Reimer c6af848c9e Sync winfile to Wine 1.1.38
svn path=/trunk/; revision=45496
2010-02-08 10:49:41 +00:00
Daniel Reimer 6c51c54b09 Sync wordpad, write and xcopy to Wine 1.1.38
svn path=/trunk/; revision=45495
2010-02-08 10:49:03 +00:00
Dmitry Gorbachev 8dd5d145e5 Simplify a bit, remove unused macros.
svn path=/trunk/; revision=45492
2010-02-07 19:56:49 +00:00
Dmitry Gorbachev 6fe7914710 Fix bug #5156.
svn path=/trunk/; revision=45491
2010-02-07 19:56:06 +00:00
Dmitry Gorbachev 33a4dde3d1 Fix formatting.
svn path=/trunk/; revision=45490
2010-02-07 19:52:10 +00:00
Eric Kohl 3b550eb81b Fix LSAPR_POLICY_INFORMATION and associated types.
svn path=/trunk/; revision=45489
2010-02-07 17:01:57 +00:00
Johannes Anderwald 11c549d526 [DSOUND]
- Fix broken assert 
- Fix calculation of length for the first locked audio buffer

svn path=/trunk/; revision=45488
2010-02-07 15:57:25 +00:00
Johannes Anderwald f326fb3cb3 [PORTCLS]
- Reset number of mappings and available data when a reset request arrives
- Handle case where a get position request appears before an audio buffer arrives which results in divide by zero exception

svn path=/trunk/; revision=45487
2010-02-07 15:35:00 +00:00
Eric Kohl e2214c16ef Implement LsaEnumerateAccountRights.
svn path=/trunk/; revision=45484
2010-02-07 13:51:25 +00:00
Sir Richard 5786bc7b81 [NTOS]: Add a branch-to-self to start testing kernel code.
[ARMLLB]: Fix incorrect frame buffer size calculation.
[FREELDR]: Finish paging setup. Now we're able to boot to the kernel entrypoint at 0x808D3000, but I'm not happy with the memory descriptors.

svn path=/trunk/; revision=45480
2010-02-07 03:01:19 +00:00
Christoph von Wittich f39b10c917 [AVIFIL32]
sync avifil32 to wine 1.1.38

svn path=/trunk/; revision=45479
2010-02-07 00:28:22 +00:00
Christoph von Wittich 345b28b73a [MSVCRT_WINETEST]
sync msvcrt_winetest to wine 1.1.38

svn path=/trunk/; revision=45478
2010-02-07 00:13:49 +00:00
Sir Richard 996267a6ff [FREELDR]: Start rewrite of eVb's messed up FreeLDR paging code. The new code is all dynamic and makes much better decisions as to the layout of the address space and how things will be implemented. Already, we are saving 16MB of VA. For now we still consume a large (1 MB) page for simplicity for the page directory, but that can go away later. I will post a diagram later if time permits. We get to MMU enabled and the PDE_BASE mapping works.
[NTOS]: Start redefining ARMv6 paging structures.

svn path=/trunk/; revision=45477
2010-02-07 00:09:10 +00:00
Christoph von Wittich 4225cee026 [SHELL32]
fix debug channel (merge from wine)

svn path=/trunk/; revision=45476
2010-02-07 00:07:07 +00:00
Christoph von Wittich bd9978270a [SHELL32]
don't print the function name twice in ERR (merge from wine)

svn path=/trunk/; revision=45475
2010-02-07 00:06:04 +00:00
Eric Kohl 534f9adf45 Simplify the policy handle creation and destruction. This fixes two winetest failures.
svn path=/trunk/; revision=45473
2010-02-06 23:06:57 +00:00
Christoph von Wittich 28dd879706 [QEDIT]
sync qedit to wine 1.1.38

svn path=/trunk/; revision=45472
2010-02-06 21:46:26 +00:00
Christoph von Wittich 1829c939ad [MSXML3_WINETEST]
sync msxml3_winetest to wine 1.1.38

svn path=/trunk/; revision=45471
2010-02-06 21:35:37 +00:00
Christoph von Wittich 6f10f0d34b [MSXML3]
sync msxml3 to wine 1.1.38

svn path=/trunk/; revision=45470
2010-02-06 21:34:28 +00:00
Christoph von Wittich 4cead51c5f [MSI_WINETEST]
sync msi_winetest to wine 1.1.38

svn path=/trunk/; revision=45469
2010-02-06 21:29:15 +00:00
Christoph von Wittich a1608caf31 [MSI]
sync msi to wine 1.1.38

svn path=/trunk/; revision=45468
2010-02-06 21:28:28 +00:00
Sir Richard a5996ad2bf [NTOS]: Combine all exit trap stubs into a single function with flags (same thing we did for the entry stub). Now there are only 15 lines of ASM instead of 60.
svn path=/trunk/; revision=45462
2010-02-06 14:58:23 +00:00
Eric Kohl b5f68e4981 Convert offset to pointers when enumeration functions return ERROR_SUCCESS or ERROR_MORE_DATA because there is something to convert in both cases.
svn path=/trunk/; revision=45459
2010-02-06 14:10:18 +00:00
evb fb88430110 - Make boot.s just stub to force load address, since ARM LLB already does setup. Will get rid of later.
- Get rid of all .pagedata stuff from boot.s. Now define simpler static page tables. Will probably get rid of later.
- Fix memory map to include framebuffer, had forgotten about it. Moved framebuffer to the nearest hole found. It happens to be 0xA0000, nice coincidence (matches x86!).
- Switch to nicer 8x16 font instead of 8x13. Now FreeLDR UI looks 99% identical to real PC.
- Start writing new ARMv6 Paging Code. Enable extended page tables and access bit, redefine structures, only for OS Loader for now.
- Identity map low-memory 1MB and MMIO 2MB space at 0x10000000 for Versatile. Need to make this board-specific later.
- Need to investigate sharing code with WinLDR.
- MMU enabled and Printf/LCD output works!.


svn path=/trunk/; revision=45440
2010-02-06 00:49:30 +00:00
evb f00336e8df - Reading MBR from RAMDISK does not work since RAMDISK starts at BootSector (rdoffset) and disk sector functions are NULL. Build bogus signature/checksum for now, unless MBR really needed later.
- Now FreeLDR crashes no more and arrives at FrLdrStartup to boot kernel and setup paging.


svn path=/trunk/; revision=45425
2010-02-04 20:11:48 +00:00
evb 466a1c65ee - Define memory map structure for Versatile board/QEMU and send to OS Loader.
- Many hack removed.
- Better efficency use of memory layout.
- Region at 0x800000 now available for FreeLDR use to load kernel files.
- Implement simple ArmDiskNormalizeSystemPath so boot is allowed to happen.
- Use better stack address as defined in memory map.
- Now FreeLDR loads all files correctly from disk and is ready to jump to kernel. ARMv5 paging code must be rewritten before that can happen.


svn path=/trunk/; revision=45424
2010-02-04 19:52:13 +00:00
evb 724f076f8a - Change NANDFlash again for Versatile support. Now the LLB and OS Loader are created in one binary blob (loaded with -kernel), while the RAMDISK is loaded with -initrd.
- Now the only complication is that RAMDISK loaded at 0x80000 which will conflict with the 0x800000 range where kernel loads. Could move RAMDISK in code through LLB, but that would be very expensive (shift by 16MB up). Instead, NANDflash creates ramdisk image starting at offset 16MB. This way, emulator thinks it's loading at 0x80000, but actually loads at 0x1800000. Would be better if QEMU not hardcoded the INITRD_LOAD_ADDR...

svn path=/trunk/; revision=45423
2010-02-04 19:49:25 +00:00
Sir Richard 59842d0e20 [RBUILD]: Fix make install and make install_registry. mkhive command was wrong (MKHIVE_TARGET instead of mkhive_TARGET) and so the executable was never launched.
svn path=/trunk/; revision=45422
2010-02-04 16:47:23 +00:00
evb d8dbcc153f - Fix text output
- Allow for more than just one parameter on the bootROM command line (sepearate with commas).
- Rdoffset is not hardcoded anymore, but passed on cmdline. Allows using images with different partition offsets.

svn path=/trunk/; revision=45420
2010-02-04 15:59:22 +00:00
Aleksey Bragin fa8448cfec - Update README.WINE.
svn path=/trunk/; revision=45419
2010-02-04 14:49:40 +00:00
Aleksey Bragin c2c6cc65aa [base/system/expand]
- Update expand utility to Wine-1.1.37. Last update happened 7 years ago and since then it was translated into 20 languages. Sorry to all the translators but the preference is given to a working untranslated version rather than a non-working localized one.
See issue #4637 for more details.

svn path=/trunk/; revision=45418
2010-02-04 14:40:36 +00:00
evb ff14d245dd - Refactor keyboard support to match serial. Now reading a key and waiting for a key are two things.
- Implement KbHit Firmware routine.
- It is now possible to interact with FreeLDR using the keyboard.


svn path=/trunk/; revision=45416
2010-02-04 08:02:30 +00:00
evb 57a1c9dbbf - Switch to bootvid 8x13 font (closer to PC/VGA experience).
- Fix LlbFwVideoGetDisplaySize return characters X/Y, not pixels. Now "Press F8 for advanced menu" shows".


svn path=/trunk/; revision=45415
2010-02-04 07:55:26 +00:00
evb d598e90edb - Add PL031 RTC code for Versatile.
- Add RTC time to TimeInfo convert.
- Implement FirmWare GetTime function. Countdown in FreeLDR now working.


svn path=/trunk/; revision=45414
2010-02-04 07:22:03 +00:00
evb 1dc4d1bc2e - Add GetTime stub, bump version to 1.4.
- Implement function for drawing character on the screen when request come from firmware.
- Tui.c assumes all screens are x86 VGA Consoles with 8-bit character and 8-bit attribute. On ARM, call Mach function to draw character instead of drawing into ScreenMemory off-screen buffer.
- FreeLDR menu now appears, need GetTime for counter.


svn path=/trunk/; revision=45413
2010-02-04 06:44:06 +00:00
evb ee2e3391be - Implement some simple video routines.
- Fix usable RAM not to include loader code and ram disk (up to 32MB).


svn path=/trunk/; revision=45412
2010-02-04 06:09:03 +00:00
evb 509e67f84f - Add stubs for video mach functions and update minor to 1.3.
svn path=/trunk/; revision=45411
2010-02-04 05:43:02 +00:00
evb c478b48128 - Add support for ram disk offset (.IMG file is a RAW image, partition starts later...)
- Fix ram disk support in FreeLDR, ARC changes had broken support for booting FreeLDR (not just the Windows) from a ram disk. ARM port now initializes ramdisk as an FS device.
- Fix hardcoded DISKREADBUFFER and FILESYSBUFFER values. On ARM these will be dynamically selected for each board (need to improve this through LLB).
- Now FreeLDR.ini is read, and crash happens because UI routines are all NULL.


svn path=/trunk/; revision=45405
2010-02-04 01:24:45 +00:00
Cameron Gutman 4f21767b6a - Merge r45400 from aicom-network-branch to fix the crash that occurs when Steam starts
svn path=/trunk/; revision=45404
2010-02-04 00:02:45 +00:00
evb 09504f4242 - Enable RAMDISK support in LLB.
- Build commandline for OS Loader (FreeLDR).
- Now ready to start loading freeldr.ini


svn path=/trunk/; revision=45403
2010-02-03 23:17:16 +00:00
evb 8649bab99c - Fix bugs.
- Enable non-OOB mode for Versatile.


svn path=/trunk/; revision=45402
2010-02-03 23:16:26 +00:00
Eric Kohl 5e9564ed2d - Implement GetEventLogInformation.
- OpenBackupEventLogA, OpenEventLogA, RegisterEventSourceA and ReportEventA: Call the ANSI RPC-Server Function directly instead of converting arguments to Unicode and calling the matching Unicode Function.
- OpenEventLogW: Fix argument checks.

svn path=/trunk/; revision=45401
2010-02-03 20:46:21 +00:00