13 years ago[HAL]
Timo Kreuzer [Thu, 11 Feb 2010 17:36:57 +0000 (17:36 +0000)]
Restore fs in HalpTrap06. Should fix crash on 1st stage with VBox.

svn path=/trunk/; revision=45573

13 years ago[NTOS]: Fix a stupid bug: x86 has 1024 PDEs, and ARM has 4096 PDEs, not the other...
Sir Richard [Thu, 11 Feb 2010 09:15:50 +0000 (09:15 +0000)]
[NTOS]: Fix a stupid bug: x86 has 1024 PDEs, and ARM has 4096 PDEs, not the other way around.
[NTOS]: Map the ARM3 PFN database as well, now.
[NTOS]: Start initializing the ARM3 PFN database entries, right now for pages that have been mapped directly through PTE/PDE manipulation.

svn path=/trunk/; revision=45569

13 years ago - Fix floppy controller detection
Cameron Gutman [Thu, 11 Feb 2010 02:22:34 +0000 (02:22 +0000)]
 - Fix floppy controller detection
 - Simplify waiting in Get_Byte and Send_Byte
 - See issue #4391 for details

svn path=/trunk/; revision=45568

13 years ago[NTOS]: Move more functions from the i386 ARM3 directory to the portable/shared direc...
Sir Richard [Thu, 11 Feb 2010 00:01:32 +0000 (00:01 +0000)]
[NTOS]: Move more functions from the i386 ARM3 directory to the portable/shared directory, since they apply to all architectures.
[NTOS]: Refactor the mapping of the PTEs for the PFN database into MiMapPfnDatabase and move the code to portable directory.
[NTOS]: Move and refactor some other definitions, and make some numbers more portable by defining arch-specific subvalues.
[NTOS]: Make the PFN database actually 2 PFN Databases: MmPfnDatabase[0] which is the ReactOS mapping of PHYSICAL_PAGE structures, and MmPfnDatabase[1] which will be the ARM3 mapping of MMPFN structures. The latter is as-of-yet unused, but memory for it is now being reserved.

svn path=/trunk/; revision=45566

13 years ago[REACTOS] Add asm.h containing macros to make assembly code both GAS and ML compatibl...
Timo Kreuzer [Wed, 10 Feb 2010 23:24:59 +0000 (23:24 +0000)]
[REACTOS] Add asm.h containing macros to make assembly code both GAS and ML compatible at the same time.
[NTOS/HAL] Move trap entry points from C into a GAS/ML compatile assembly file (might need fine tuning for ML). The entries are generated by a shared assembly macro TRAP_ENTRY. Removed KiTrapStub, KiIsV8086TrapSafe, KiIsUserTrapSafe, KiSetSaneSegments, removed segment handling from KiEnter*Trap.
[NTOS] Make KiFastCallEntryHandler and KiSystemServiceHandler FASTCALL and pass the systemcall number in TrapFrame->Eax
[HAL] Use _setjmp/longjmp instead of saving a trapframe in HalpBiosCall

svn path=/trunk/; revision=45565

13 years ago[rbuild]
Giannis Adamopoulos [Wed, 10 Feb 2010 21:55:51 +0000 (21:55 +0000)]
- Major improvements in the msvc backend
- Create a .vsprops file for every configuration in the root folder. This lets us make vcproj files a lot smaller
- When building with our headers actually use all of our headers and not a mix of our sdks and the headers of the crt that comes with msvc
- Add a rule to build .s files based on the idea by jcatena
- Add a rule for .spec and .pspec files. pspec doesn't work well yet
- Various fixes
- Please note the the above are aplied only to the vcproj files and not to the vcxrpoj files

The above let us compile large parts of trunk with the generated visual studio projects

svn path=/trunk/; revision=45564

13 years agoAdd french translations for location overrides.
Sylvain Petreolle [Wed, 10 Feb 2010 20:11:13 +0000 (20:11 +0000)]
Add french translations for location overrides.

svn path=/trunk/; revision=45563

13 years agopartially revert changes from 45560
Christoph von Wittich [Wed, 10 Feb 2010 19:56:27 +0000 (19:56 +0000)]
partially revert changes from 45560

svn path=/trunk/; revision=45562

13 years agoExperimental try to get Itunes Setup start. By Samuel Serapion
Daniel Reimer [Wed, 10 Feb 2010 19:50:30 +0000 (19:50 +0000)]
Experimental try to get Itunes Setup start. By Samuel Serapion

svn path=/trunk/; revision=45561

13 years agoAdd device location information override PS/2 keyboards.
Eric Kohl [Wed, 10 Feb 2010 19:35:13 +0000 (19:35 +0000)]
Add device location information override PS/2 keyboards.

Please translate the location override string.

svn path=/trunk/; revision=45560

13 years agoUpdate Rapps Links and add the two RosBE Addons.
Daniel Reimer [Wed, 10 Feb 2010 19:33:10 +0000 (19:33 +0000)]
Update Rapps Links and add the two RosBE Addons.

svn path=/trunk/; revision=45559

13 years ago[NTOS]: Allocate and initialize color tables based on MmSecondaryColors (MiInitialize...
Sir Richard [Wed, 10 Feb 2010 18:44:30 +0000 (18:44 +0000)]
[NTOS]: Allocate and initialize color tables based on MmSecondaryColors (MiInitializeColorTables).
[NTOS]: These come after the PFN database, so modify the MmPfnAllocation to account for them.

svn path=/trunk/; revision=45558

13 years ago[NTOS]: Factor out SecondaryColor computations into MiComputeColorInformation.
Sir Richard [Wed, 10 Feb 2010 18:10:04 +0000 (18:10 +0000)]
[NTOS]: Factor out SecondaryColor computations into MiComputeColorInformation.
[NTOS]: Fix SecondaryColor computations. If the KPCR has no deta, use the default colors of 8, not just 1. Also handle cases where there is more L2 cache than we'd like -- set the secondary colors to a maximum of 1024 in that case. Finally, if the colors are not a power of two, or there are not enough (due to a registry setting), use the default of 8.

svn path=/trunk/; revision=45557

13 years ago[NTOS]: MxGetNextPage is not platform-specific, so share it.
Sir Richard [Wed, 10 Feb 2010 17:42:07 +0000 (17:42 +0000)]
[NTOS]: MxGetNextPage is not platform-specific, so share it.
[NTOS]: Factor out computations of NP sizes and limits into MiComputeNonPagedPoolVa.
[NTOS]: Fix NP size/limit calculations to use the amount of FREE RAM, not the amount of INSTALLED RAM.
[NTOS]: Use Windows 2003's algorithm for NP size on machines with more than 512MB of FREE RAM.
[NTOS]: Partly handle the case of machines with NP over 128MB.

svn path=/trunk/; revision=45556

13 years agoDo not crash, use valid kernel PTE.
Dmitry Gorbachev [Wed, 10 Feb 2010 13:56:54 +0000 (13:56 +0000)]
Do not crash, use valid kernel PTE.

svn path=/trunk/; revision=45555

13 years ago[usb/usbehci]
Michael Martin [Wed, 10 Feb 2010 12:38:18 +0000 (12:38 +0000)]
- Remove WorkItem code as its not needed. UsbHub driver polls the hubs for device connects.
- Implement returning generic UsbdDeviceHandle in URB struct.

svn path=/trunk/; revision=45554

13 years ago[usb/usbehci]
Christoph von Wittich [Wed, 10 Feb 2010 12:25:35 +0000 (12:25 +0000)]
fix typo

svn path=/trunk/; revision=45553

13 years ago[usb/usbehci]
Michael Martin [Wed, 10 Feb 2010 12:21:23 +0000 (12:21 +0000)]
- Define Device and Configuration Descriptors for RootHub20.
- Queue all USB_SUBMIT_URBs and create a separate thread to handle them.
- For PNP START_DEVICE, Create the internal RootHub usb device and register usb hub device interface.
- Fill in direct call interface for USB_BUS_INTERFACE_USBDI_V2 and USB_BUS_INTERFACE_HUB_V5.
- Implement Direct Call Interface function GetExtendedHubInformation.
- Remove duplicate structures that are already defined in USB Headers. Some reorganization.

svn path=/trunk/; revision=45552

13 years agoUpdate log2lines to ver. 2.1. Jan Roeloffzen, bug #4342.
Dmitry Gorbachev [Wed, 10 Feb 2010 12:10:23 +0000 (12:10 +0000)]
Update log2lines to ver. 2.1. Jan Roeloffzen, bug #4342.

svn path=/trunk/; revision=45551

13 years agoFound a leak fix patch from years ago
Ged Murphy [Wed, 10 Feb 2010 08:24:34 +0000 (08:24 +0000)]
Found a leak fix patch from years ago

svn path=/trunk/; revision=45550

13 years ago[NTOS]: Actually use calculated kernel stack size value.
Sir Richard [Wed, 10 Feb 2010 04:12:23 +0000 (04:12 +0000)]
[NTOS]: Actually use calculated kernel stack size value.
[NTOS]: Define the template PTE/PDE statically, instead of doing it in code. It's faster, and saves us the trouble of not being able to use the template from point 0. Move the template setup into ARM3 instead of page.c.

svn path=/trunk/; revision=45549

13 years ago[NTOS]: Allow registry configuration of large kernel stack size, with proper checks.
Sir Richard [Wed, 10 Feb 2010 03:59:17 +0000 (03:59 +0000)]
[NTOS]: Allow registry configuration of large kernel stack size, with proper checks.

svn path=/trunk/; revision=45548

13 years ago[NTOS]: Combine ARM3 phase 0 and 1 even it means calling back into TurdMM for one...
Sir Richard [Wed, 10 Feb 2010 02:00:56 +0000 (02:00 +0000)]
[NTOS]: Combine ARM3 phase 0 and 1 even it means calling back into TurdMM for one function call.
[NTOS]: Separate out platform-specific parts of ARM3 initialization instead of having everything in an arch-specific file.
No functional code changes.

svn path=/trunk/; revision=45547

13 years ago - Merge r45531 and r45545 from aicom-network-branch
Cameron Gutman [Wed, 10 Feb 2010 00:55:58 +0000 (00:55 +0000)]
 - Merge r45531 and r45545 from aicom-network-branch

svn path=/trunk/; revision=45546

13 years ago[NDK]: Add MMPDE structure for ARM.
Sir Richard [Tue, 9 Feb 2010 22:57:14 +0000 (22:57 +0000)]
[NDK]: Add MMPDE structure for ARM.

svn path=/trunk/; revision=45543

13 years ago[NTOS]: Implement new and correct MiAddressToPte, ToPde, ToPdeOffset, and MiPdeToAddr...
Sir Richard [Tue, 9 Feb 2010 22:56:21 +0000 (22:56 +0000)]
[NTOS]: Implement new and correct MiAddressToPte, ToPde, ToPdeOffset, and MiPdeToAddres and MiAddressToPte on ARM. Remove deprecated ARM page definitions.
[NTOS]: Move HYPER_SPACE to 0xC0500000 since it must be on its own PDE. We need to revisit some FreeLDR Mm decisions later.
[NTOS]: Move certain arch-specific definitions from mm.h to the arch-specific mm.h
[NTOS]: Fix certain parts of ARM3 which made the assumption that a PDE shares the same structure as a PTE. This is true on all architectures except ARM. We now define a new MMPDE type specifically for PDEs. On x86 it is defined to MMPTE with no changes.

svn path=/trunk/; revision=45542

13 years agoImplement device location information override support and add the location override...
Eric Kohl [Tue, 9 Feb 2010 22:54:02 +0000 (22:54 +0000)]
Implement device location information override support and add the location override value for PS/2 mice. PS/2 keyboards be added next.

Please translate the location override string.

svn path=/trunk/; revision=45541

13 years ago[NTOS]: Setup the template PTE and PDE used on ARM.
Sir Richard [Tue, 9 Feb 2010 22:53:41 +0000 (22:53 +0000)]
[NTOS]: Setup the template PTE and PDE used on ARM.

svn path=/trunk/; revision=45540

13 years agoFix REL build, part 2.
Dmitry Gorbachev [Tue, 9 Feb 2010 20:21:54 +0000 (20:21 +0000)]
Fix REL build, part 2.

svn path=/trunk/; revision=45539

13 years agoFix REL build.
Dmitry Gorbachev [Tue, 9 Feb 2010 20:08:06 +0000 (20:08 +0000)]
Fix REL build.

svn path=/trunk/; revision=45538

13 years agoDemote "may be used uninitialized" errors into warnings again.
Dmitry Gorbachev [Tue, 9 Feb 2010 19:02:56 +0000 (19:02 +0000)]
Demote "may be used uninitialized" errors into warnings again.

svn path=/trunk/; revision=45536

13 years agoThe big RosBE 1.5 compatibility patch. You will need RosBE 1.5 from this point!
Colin Finck [Tue, 9 Feb 2010 18:14:58 +0000 (18:14 +0000)]
The big RosBE 1.5 compatibility patch. You will need RosBE 1.5 from this point!
- Set the minimum GCC version to 4.4.0 and minimum Binutils version to 20091016.
- Remove the -fno-unit-at-a-time hacks.
- Remove dgorbachev's temporary hacks for user-mode C++ applications.
- Merge ntoskrnl's "precomp.h" and "ntoskrnl.h" again, the PCH issues have been fixed.
- Use our "ofmt_stub.a" to be compatible with newer MinGW Runtime versions.
- Use LD's new -exclude-all-symbols option to not auto-export all symbols in case no DEF file or __declspec(dllexport) was specified.
  We used to patch our LD version to work around this problem.
- Use LD's --start-group and --end-group parameters to allow a more flexible linking order.
- Use GCC's -fno-set-stack-executable for amd64 and i386 targets to disable adding the __enable_execute_stack code.
- Change the makefile's name to "makefile-$(ARCH).auto" for all architectures.
- Remove some -Wno-error flags.

See issue #4810 for more details.

svn path=/trunk/; revision=45535

13 years ago- Make KeFlushProcessTb work. Since no MPCore support, CPU TLB is flushed instead...
evb [Tue, 9 Feb 2010 18:06:26 +0000 (18:06 +0000)]
- Make KeFlushProcessTb work. Since no MPCore support, CPU TLB is flushed instead. Maybe should use ASIDs later.

svn path=/trunk/; revision=45534

13 years ago[paint] fix rectangular selection tool
Benedikt Freisen [Tue, 9 Feb 2010 18:06:18 +0000 (18:06 +0000)]
[paint] fix rectangular selection tool

svn path=/trunk/; revision=45533

13 years ago- Fix wrong initialization of different modes and stacks.
evb [Tue, 9 Feb 2010 18:05:01 +0000 (18:05 +0000)]
- Fix wrong initialization of different modes and stacks.

svn path=/trunk/; revision=45532

13 years ago[DSOUND_NEW]
Johannes Anderwald [Tue, 9 Feb 2010 14:24:50 +0000 (14:24 +0000)]
- Add more parameter checks
- Implement a few more functions for the primary sound buffer

svn path=/trunk/; revision=45530

13 years ago[DSOUND_NEW]
Johannes Anderwald [Tue, 9 Feb 2010 13:14:19 +0000 (13:14 +0000)]
- Implement getting volume, volume pan, and frequency for secondary sound buffer
- Semi-stub setting volume, volume pan and frequency for secondary...

svn path=/trunk/; revision=45529

13 years ago[DSOUND_NEW]
Johannes Anderwald [Tue, 9 Feb 2010 12:03:59 +0000 (12:03 +0000)]
- Implement starting / stopping primary sound buffer
- Implement retrieving capabilities for secondary sound buffer
- Import sound mixing routines from wine, not yet used

svn path=/trunk/; revision=45527

13 years ago[FREELDR]: Use WinLDR-style booting exclusively for ARM. Remove thousands of lines...
Sir Richard [Tue, 9 Feb 2010 03:10:07 +0000 (03:10 +0000)]
[FREELDR]: Use WinLDR-style booting exclusively for ARM. Remove thousands of lines of old code where we basically did the same thing.
[FREELDR]: Build WinLDR for ARM too, and implement the required portability functions to get it working. Don't build "ros-style" loading on ARM.
[FREELDR]: Redo from scratch the entire paging setup for ARM. Instead of using 20MB of physical RAM, we now only use 1MB that's passed on to the kernel.
[FREELDR]: Fix loads of bugs in the ARM loader code (ha-ha!).
[FREELDR]: Cleanup compiler and linker flags in the rbuild files.
[ARMLLB]: Remove all deprecated video machine routines that are not used anymore.
If all went well, the ARM port should now boot on Versatile platforms up until the ARM3 initialization code.

svn path=/trunk/; revision=45526

13 years ago[MISC]: Build fixes to sync up with latest changes.
Sir Richard [Tue, 9 Feb 2010 03:05:49 +0000 (03:05 +0000)]
[MISC]: Build fixes to sync up with latest changes.
[SETUPLDR]: Do not build on ARM. On a side note, I offer a bountry for "if ARCH != ARM" support in .rbuild files, instead of only allowing ==.

svn path=/trunk/; revision=45525

13 years ago[FREELDR]: Remove C++ style indirected "UI" component from FreeLDR ARM, for several...
Sir Richard [Tue, 9 Feb 2010 02:53:45 +0000 (02:53 +0000)]
[FREELDR]: Remove C++ style indirected "UI" component from FreeLDR ARM, for several reasons that ought to be considered on x86 too:
    - It redraws the screen in two different ways (zero memory and character-by-character fill) over 15 times for a single boot. You notice these things on a little ARM chip!
    - It keeps coping data from/to an "off-screen buffer" way too much, instead of only when the video needs to be synced.
    - It makes assumptions about all Video Buffers supporting Character-Mode VGA.
    - It can be configured to draw cyan/yellow ponies, instead of a normal NT boot menu.
    The ARM build now uses a "directui.c" implementation which fixes all these issues and is efficient and to the point. It presents a normal Windows boot selection menu on ARM.
[FREELDR]: Do not build any of the video routines, or the UI routines, on ARM.

svn path=/trunk/; revision=45524

13 years ago[FREELDR]: No Linux support for ARM, no RS232 support for ARM, and no complex debug...
Sir Richard [Tue, 9 Feb 2010 02:38:23 +0000 (02:38 +0000)]
[FREELDR]: No Linux support for ARM, no RS232 support for ARM, and no complex debug infrastructure for ARM either.

svn path=/trunk/; revision=45523

13 years agoadd setjmp/longjmp to libcntpr, just like in ms sdks
Timo Kreuzer [Tue, 9 Feb 2010 02:34:42 +0000 (02:34 +0000)]
add setjmp/longjmp to libcntpr, just like in ms sdks

svn path=/trunk/; revision=45522

13 years ago[FREELDR]: Do not build Disk/Partition support for ARM, we use ram disks.
Sir Richard [Tue, 9 Feb 2010 02:33:31 +0000 (02:33 +0000)]
[FREELDR]: Do not build Disk/Partition support for ARM, we use ram disks.

svn path=/trunk/; revision=45521

13 years ago[FREELDR]: Do not build EXT2, ISO or NTFS support for ARM targets.
Sir Richard [Tue, 9 Feb 2010 02:32:59 +0000 (02:32 +0000)]
[FREELDR]: Do not build EXT2, ISO or NTFS support for ARM targets.

svn path=/trunk/; revision=45520

13 years ago[FREELDR]: The WinLDR code forgot to update the File Path of boot driver entries...
Sir Richard [Tue, 9 Feb 2010 02:26:46 +0000 (02:26 +0000)]
[FREELDR]: The WinLDR code forgot to update the File Path of boot driver entries from PA to VA as well, not just the registry path. It also tried to touch the PA LoaderBlock right after enabling the MMU. It should touch the VA LoaderBlock instead, since there is no guarantee that the address has been identity mapped (and hence the PA address interpreted as a VA address by the MMU is bogus).

svn path=/trunk/; revision=45519

13 years ago- New ARM HAL after 2 nights in the company of a madman.
evb [Tue, 9 Feb 2010 02:26:28 +0000 (02:26 +0000)]
- New ARM HAL after 2 nights in the company of a madman.
- Many fixes, more implemented routines, support for ARMv7.
- Some Linux code, marked as GPL, from ARM Ltd in cache.s. All OS use this code.

svn path=/trunk/; revision=45518

13 years ago[FREELDR]: The hack to set pages from 0x100 to 0x1FF as busy so that the heap allocat...
Sir Richard [Tue, 9 Feb 2010 02:22:08 +0000 (02:22 +0000)]
[FREELDR]: The hack to set pages from 0x100 to 0x1FF as busy so that the heap allocator wouldn't use them always restored the pages back to Free (since they usually were free on x86). However, if the pages were already being used in the first place, this made them appear free and corrupted existing memory. Fixed the hack so that it restores the previous state of the memory pages.

svn path=/trunk/; revision=45517

13 years ago[NDK]: Use new ARMv6 PTE structures.
Sir Richard [Tue, 9 Feb 2010 02:14:58 +0000 (02:14 +0000)]
[NDK]: Use new ARMv6 PTE structures.

svn path=/trunk/; revision=45516

13 years ago[NTOS]: Tabula rasa (clean slate) on the old-MM page routines for ARM. Get rid of...
Sir Richard [Tue, 9 Feb 2010 02:14:20 +0000 (02:14 +0000)]
[NTOS]: Tabula rasa (clean slate) on the old-MM page routines for ARM. Get rid of all of them for now.
[NTOS]: Implement MmInitGlobalKernelPageDirectory as the first ARM page function in the new file.
That's it for the kernel.

svn path=/trunk/; revision=45515

13 years ago[NTOS]: All calls to DbgPrint will go to DbgPrintEarly for now.
Sir Richard [Tue, 9 Feb 2010 02:12:27 +0000 (02:12 +0000)]
[NTOS]: All calls to DbgPrint will go to DbgPrintEarly for now.
[NTOS]: More header fixes to match new definitions.

svn path=/trunk/; revision=45514

13 years ago[NTOS]: Make system startup match x86 code as closely as possible, instead of mixing...
Sir Richard [Tue, 9 Feb 2010 02:11:18 +0000 (02:11 +0000)]
[NTOS]: Make system startup match x86 code as closely as possible, instead of mixing MIPS/PPC code. Only rip out parts that are obviously x86-specific. Also fix code to use new KPCR definitions.
[NTOS]: Implement a DbgPrintEarly function that directly uses KDCOM to print to the serial console, instead of going through the Debug Service Interrupt.

svn path=/trunk/; revision=45513

13 years ago[NTOS]: Update code to use new KPCR structure.
Sir Richard [Tue, 9 Feb 2010 02:09:34 +0000 (02:09 +0000)]
[NTOS]: Update code to use new KPCR structure.
[NTOS]: Make all trap code currently spin forever, because it has not been reviewed yet.

svn path=/trunk/; revision=45512

13 years ago[ARMDDK]: Use the same KPCR structure on ARM as on x86.
Sir Richard [Tue, 9 Feb 2010 02:08:24 +0000 (02:08 +0000)]
[ARMDDK]: Use the same KPCR structure on ARM as on x86.
[ARMDDK]: Use the same addresses for KPCR and KUSER_SHARED_DATA on ARM as on x86. On ARM however, since there are no "segments", the KPCR is also mapped in user-mode, read-only, to have a static structure that can point to the current TEB.

svn path=/trunk/; revision=45511

13 years ago[ARM DDK]: Use the closest possible approximation to the x86 KPCR/KPRCB (in fact...
Sir Richard [Tue, 9 Feb 2010 02:06:29 +0000 (02:06 +0000)]
[ARM DDK]: Use the closest possible approximation to the x86 KPCR/KPRCB (in fact, the public KPCR is identical, just the KIPCR is different, internally), instead of a mashup of PPC and MIPS structures.

svn path=/trunk/; revision=45510

13 years ago[NTOS]: Sync up KiDispatchException with x86 code (and going back to C comment format...
Sir Richard [Tue, 9 Feb 2010 02:00:52 +0000 (02:00 +0000)]
[NTOS]: Sync up KiDispatchException with x86 code (and going back to C comment formatting).

svn path=/trunk/; revision=45509

13 years ago[NTOS]: Get rid of fixed TLB entries on ARM, I don't think that idea makes sense...
Sir Richard [Tue, 9 Feb 2010 02:00:15 +0000 (02:00 +0000)]
[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

13 years ago[NTOS]: Forgot to setup an IRQ stack, the kernel was working by magic since in previo...
Sir Richard [Tue, 9 Feb 2010 01:54:14 +0000 (01:54 +0000)]
[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

13 years ago[ARM SDK]: Use real Versatile base addresses instead of the old hacked FreeLDR base...
Sir Richard [Tue, 9 Feb 2010 01:47:54 +0000 (01:47 +0000)]
[ARM SDK]: Use real Versatile base addresses instead of the old hacked FreeLDR base addresses.

svn path=/trunk/; revision=45506

13 years ago[ARMLLB]: PutChar should be a UCHAR routine, this way we can print characters above...
Sir Richard [Tue, 9 Feb 2010 01:46:01 +0000 (01:46 +0000)]
[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

13 years ago[ARMLLB]: Fix typo.
Sir Richard [Tue, 9 Feb 2010 01:44:26 +0000 (01:44 +0000)]
[ARMLLB]: Fix typo.

svn path=/trunk/; revision=45504

13 years agoGiant German Language Fix Patch by "tux."
Daniel Reimer [Mon, 8 Feb 2010 19:35:26 +0000 (19:35 +0000)]
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

13 years agoFix build breakage
Daniel Reimer [Mon, 8 Feb 2010 16:38:41 +0000 (16:38 +0000)]
Fix build breakage

svn path=/trunk/; revision=45500

13 years agoSync winfile to Wine 1.1.38
Daniel Reimer [Mon, 8 Feb 2010 10:49:41 +0000 (10:49 +0000)]
Sync winfile to Wine 1.1.38

svn path=/trunk/; revision=45496

13 years agoSync wordpad, write and xcopy to Wine 1.1.38
Daniel Reimer [Mon, 8 Feb 2010 10:49:03 +0000 (10:49 +0000)]
Sync wordpad, write and xcopy to Wine 1.1.38

svn path=/trunk/; revision=45495

13 years agoSimplify a bit, remove unused macros.
Dmitry Gorbachev [Sun, 7 Feb 2010 19:56:49 +0000 (19:56 +0000)]
Simplify a bit, remove unused macros.

svn path=/trunk/; revision=45492

13 years agoFix bug #5156.
Dmitry Gorbachev [Sun, 7 Feb 2010 19:56:06 +0000 (19:56 +0000)]
Fix bug #5156.

svn path=/trunk/; revision=45491

13 years agoFix formatting.
Dmitry Gorbachev [Sun, 7 Feb 2010 19:52:10 +0000 (19:52 +0000)]
Fix formatting.

svn path=/trunk/; revision=45490

13 years agoFix LSAPR_POLICY_INFORMATION and associated types.
Eric Kohl [Sun, 7 Feb 2010 17:01:57 +0000 (17:01 +0000)]
Fix LSAPR_POLICY_INFORMATION and associated types.

svn path=/trunk/; revision=45489

13 years ago[DSOUND]
Johannes Anderwald [Sun, 7 Feb 2010 15:57:25 +0000 (15:57 +0000)]
- Fix broken assert
- Fix calculation of length for the first locked audio buffer

svn path=/trunk/; revision=45488

13 years ago[PORTCLS]
Johannes Anderwald [Sun, 7 Feb 2010 15:35:00 +0000 (15:35 +0000)]
- 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

13 years agoImplement LsaEnumerateAccountRights.
Eric Kohl [Sun, 7 Feb 2010 13:51:25 +0000 (13:51 +0000)]
Implement LsaEnumerateAccountRights.

svn path=/trunk/; revision=45484

13 years ago[NTOS]: Add a branch-to-self to start testing kernel code.
Sir Richard [Sun, 7 Feb 2010 03:01:19 +0000 (03:01 +0000)]
[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

13 years ago[AVIFIL32]
Christoph von Wittich [Sun, 7 Feb 2010 00:28:22 +0000 (00:28 +0000)]
sync avifil32 to wine 1.1.38

svn path=/trunk/; revision=45479

13 years ago[MSVCRT_WINETEST]
Christoph von Wittich [Sun, 7 Feb 2010 00:13:49 +0000 (00:13 +0000)]
sync msvcrt_winetest to wine 1.1.38

svn path=/trunk/; revision=45478

13 years ago[FREELDR]: Start rewrite of eVb's messed up FreeLDR paging code. The new code is...
Sir Richard [Sun, 7 Feb 2010 00:09:10 +0000 (00:09 +0000)]
[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

13 years ago[SHELL32]
Christoph von Wittich [Sun, 7 Feb 2010 00:07:07 +0000 (00:07 +0000)]
fix debug channel (merge from wine)

svn path=/trunk/; revision=45476

13 years ago[SHELL32]
Christoph von Wittich [Sun, 7 Feb 2010 00:06:04 +0000 (00:06 +0000)]
don't print the function name twice in ERR (merge from wine)

svn path=/trunk/; revision=45475

13 years agoSimplify the policy handle creation and destruction. This fixes two winetest failures.
Eric Kohl [Sat, 6 Feb 2010 23:06:57 +0000 (23:06 +0000)]
Simplify the policy handle creation and destruction. This fixes two winetest failures.

svn path=/trunk/; revision=45473

13 years ago[QEDIT]
Christoph von Wittich [Sat, 6 Feb 2010 21:46:26 +0000 (21:46 +0000)]
sync qedit to wine 1.1.38

svn path=/trunk/; revision=45472

13 years ago[MSXML3_WINETEST]
Christoph von Wittich [Sat, 6 Feb 2010 21:35:37 +0000 (21:35 +0000)]
sync msxml3_winetest to wine 1.1.38

svn path=/trunk/; revision=45471

13 years ago[MSXML3]
Christoph von Wittich [Sat, 6 Feb 2010 21:34:28 +0000 (21:34 +0000)]
sync msxml3 to wine 1.1.38

svn path=/trunk/; revision=45470

13 years ago[MSI_WINETEST]
Christoph von Wittich [Sat, 6 Feb 2010 21:29:15 +0000 (21:29 +0000)]
sync msi_winetest to wine 1.1.38

svn path=/trunk/; revision=45469

13 years ago[MSI]
Christoph von Wittich [Sat, 6 Feb 2010 21:28:28 +0000 (21:28 +0000)]
sync msi to wine 1.1.38

svn path=/trunk/; revision=45468

13 years ago[NTOS]: Combine all exit trap stubs into a single function with flags (same thing...
Sir Richard [Sat, 6 Feb 2010 14:58:23 +0000 (14:58 +0000)]
[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

13 years agoConvert offset to pointers when enumeration functions return ERROR_SUCCESS or ERROR_M...
Eric Kohl [Sat, 6 Feb 2010 14:10:18 +0000 (14:10 +0000)]
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

13 years ago- Make boot.s just stub to force load address, since ARM LLB already does setup....
evb [Sat, 6 Feb 2010 00:49:30 +0000 (00:49 +0000)]
- 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

13 years ago- Reading MBR from RAMDISK does not work since RAMDISK starts at BootSector (rdoffset...
evb [Thu, 4 Feb 2010 20:11:48 +0000 (20:11 +0000)]
- 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

13 years ago- Define memory map structure for Versatile board/QEMU and send to OS Loader.
evb [Thu, 4 Feb 2010 19:52:13 +0000 (19:52 +0000)]
- 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

13 years ago- Change NANDFlash again for Versatile support. Now the LLB and OS Loader are created...
evb [Thu, 4 Feb 2010 19:49:25 +0000 (19:49 +0000)]
- 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

13 years ago[RBUILD]: Fix make install and make install_registry. mkhive command was wrong (MKHIV...
Sir Richard [Thu, 4 Feb 2010 16:47:23 +0000 (16:47 +0000)]
[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

13 years ago- Fix text output
evb [Thu, 4 Feb 2010 15:59:22 +0000 (15:59 +0000)]
- 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

13 years ago- Update README.WINE.
Aleksey Bragin [Thu, 4 Feb 2010 14:49:40 +0000 (14:49 +0000)]

svn path=/trunk/; revision=45419

13 years ago[base/system/expand]
Aleksey Bragin [Thu, 4 Feb 2010 14:40:36 +0000 (14:40 +0000)]
- 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

13 years ago- Refactor keyboard support to match serial. Now reading a key and waiting for a...
evb [Thu, 4 Feb 2010 08:02:30 +0000 (08:02 +0000)]
- 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

13 years ago- Switch to bootvid 8x13 font (closer to PC/VGA experience).
evb [Thu, 4 Feb 2010 07:55:26 +0000 (07:55 +0000)]
- 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

13 years ago- Add PL031 RTC code for Versatile.
evb [Thu, 4 Feb 2010 07:22:03 +0000 (07:22 +0000)]
- 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

13 years ago- Add GetTime stub, bump version to 1.4.
evb [Thu, 4 Feb 2010 06:44:06 +0000 (06:44 +0000)]
- 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

13 years ago- Implement some simple video routines.
evb [Thu, 4 Feb 2010 06:09:03 +0000 (06:09 +0000)]
- Implement some simple video routines.
- Fix usable RAM not to include loader code and ram disk (up to 32MB).

svn path=/trunk/; revision=45412

13 years ago- Add stubs for video mach functions and update minor to 1.3.
evb [Thu, 4 Feb 2010 05:43:02 +0000 (05:43 +0000)]
- Add stubs for video mach functions and update minor to 1.3.

svn path=/trunk/; revision=45411